Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Dateiname bei Dateiupload mit PHP auslesen und in Datenbank eintragen

Frage Entwicklung PHP

Mitglied: eatyourcookie

eatyourcookie (Level 1) - Jetzt verbinden

04.05.2010, aktualisiert 21:04 Uhr, 14613 Aufrufe, 6 Kommentare

Moin Moin liebe Admins!

01.
<?php 
02.
 
03.
move_uploaded_file($_FILES['datei']['tmp_name'], "praesentationen/".$_FILES['datei']['name']); 
04.
 
05.
$dateiname = $_FILES['datei']['name']; 
06.
 
07.
if($dateiname != "") { 
08.
$sql = "INSERT INTO `projekt`.`prezis` (`id`, `title`, `filename`, `length`) VALUES (NULL,'".$_POST['title']."','".$_POST['$dateiname']."','".$_POST['length']."')"
09.
mysql_query($sql); 
10.
$sql1 = "INSERT INTO `projekt`.`prezis` (`id`, `title`, `filename`, `quiz_1`, `quiz_2`, `quiz_3`, `quizlength`) VALUES (NULL,'".$_POST['title']."','".$_POST['filename']."','".$_POST['quiz1']."','".$_POST['quiz2']."','".$_POST['quiz3']."','".$_POST['quizlength']."')"
11.
mysql_query($sql1); 
12.
echo "$dateiname"
13.
echo"<br>Erfolgreich hinzugefuegt!"
14.
} ?> 
Ein Auschnitt meines Eingabeformulars.




Mein Problem:
Es wird über dieses Formular eine Datei in ein Verzeichnis hochgeladen. Das funktioniert auch alles so wie gedacht. Nun muss ich aber in meinem Formular auch den Dateinamen auslesen und diesen parallel zum Upload in eine Tabelle aus meiner Datenbank eintragen.

Zum Code:
Bis auf den Dateinamen werden auch alle Werte an die Datenbank übergeben. Das vorletzte Echo gibt den Dateinamen auch richtig aus. (Nur zum Test eingefügt)



Hoffentlich hat jmd von euch eine Lösung!
Mitglied: kaiand1
04.05.2010 um 11:12 Uhr
Moin
erstmal währe wichtig alle übergegbende Variabeln vom Post/Get ect zu Prüfen und die behinhaltende Daten zu "entschärfen" falls da ein Code eingeschmuggelt wird.
zb
$file=htmlspecialchars($_POST["file"]);
Und da mann ja dann gleich eine neue Variabel hat die kürzer ist trägt mann diese nur noch im SQL Insert ein was auch übersichtlicher ist.
Zumal aber auch
error_reporting(E_ALL);
echo mysql_error();
eine gute Hilfe ist um Fehler zu finden wiso der es nicht eintägt wie mann es möchte ;)
Bitte warten ..
Mitglied: eatyourcookie
04.05.2010 um 11:27 Uhr
das ganze system ist nicht übers netzwerk erreichbar, habe mir nur mit phph ein programm zum präsentieren von flashmovies aufm fernseher geschrieben. von daher ist das alles unwichtig.
ich müsste einfach nur wissen, ob und wie man den inhalt einer variablen in eine datenbank eintragen kann und wenn, wo der fehler ist.
ich versuche ja, via post die gesamte variable "$dateiname" an die datenbank zu übergeben, als wenn es sich hierbei um einen text handelt, der in ein engabefeld eingetippt wurde und nun übergeben werden soll.

01.
$sql = "INSERT INTO `projekt`.`prezis` (`id`, `title`, `filename`, `length`) VALUES (NULL,'".$_POST['title']."','".$_POST['$dateiname']."','".$_POST['length']."')";

title, dateiname als variable znd length.
Bitte warten ..
Mitglied: nxclass
04.05.2010 um 11:27 Uhr
na wo steht den nun der Dateiname ?
01.
$_FILES['datei']['name'] 
02.
$_POST['$dateiname']  // mit Sicherheit nicht ! - wenn dann $_POST["$dateiname"] oder eher $dateiname 
03.
$_POST['filename']
... gefunden ?
Bitte warten ..
Mitglied: eatyourcookie
04.05.2010 um 11:40 Uhr
entweder blick ich nun nicht, wie du das meinst, oder du hast nicht gesehen, dass oben im code in zeile 5 folgendes steht:

$dateiname = $_FILES['datei']['name'];




ich vereinfache das ganze mal kurz:

01.
<?php 
02.
$variable = "1"; 
03.
$sql = "INSERT INTO `datenbank`.`tabelle` (`variable`) VALUES (NULL,'".$_POST['$variable']."')";  
04.
mysql_query($sql);  
05.
?>
Bitte warten ..
Mitglied: godlie
04.05.2010 um 12:12 Uhr
Wie wärs denn mit $dateiname anstatt $_POST['$dateiname'] im sql query?

Glaub nämlich nicht das dazwischn ein Formular mit POST Übergabe ist zwischen Zeile 05 und 07....
Bitte warten ..
Mitglied: eatyourcookie
04.05.2010 um 12:44 Uhr
Endlich, ES FUNKTIONIERT! :D


Hier der Code:

01.
<?php 
02.
 
03.
move_uploaded_file($_FILES['datei']['tmp_name'], "praesentationen/".$_FILES['datei']['name']); 
04.
 
05.
$dateiname = $_FILES['datei']['name']; 
06.
 
07.
if($dateiname != "") { 
08.
$sql = "INSERT INTO `projekt`.`prezis` (`id`, `title`, `filename`, `length`) VALUES (NULL,'".$_POST['title']."','$dateiname','".$_POST['length']."')"; 
09.
mysql_query($sql); 
10.
$sql1 = "INSERT INTO `projekt`.`prezis` (`id`, `title`, `filename`, `quiz_1`, `quiz_2`, `quiz_3`, `quizlength`) VALUES (NULL,'".$_POST['title']."','".$_POST['filename']."','".$_POST['quiz1']."','".$_POST['quiz2']."','".$_POST['quiz3']."','".$_POST['quizlength']."')"; 
11.
mysql_query($sql1); 
12.
echo"<br>Erfolgreich hinzugefuegt!"; 
13.
} ?>
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
PHP
gelöst Externe XML-Datei in PHP auslesen (18)

Frage von Akrosh zum Thema PHP ...

JavaScript
gelöst Dropdownfeld auslesen und mit AJAX und JS an PHP senden (7)

Frage von ITFlori zum Thema JavaScript ...

PHP
gelöst HTML Dropdownmenü auslesen und in PHP als Variable übergeben (35)

Frage von ITFlori zum Thema PHP ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (15)

Frage von liquidbase zum Thema Windows Update ...

DSL, VDSL
Problem mit variernder Internetgeschwindigkeit (12)

Frage von schaurian zum Thema DSL, VDSL ...