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, 14779 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 ..
Ä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 ...

Neue Wissensbeiträge
Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(6)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(5)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Viren und Trojaner

Neue Magazin Ausgabe: Malware und Angriffe abwehren

Information von Frank zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Batch & Shell
gelöst Batch um Benutzer aus Sitzung abzumelden (15)

Frage von zeroblue2005 zum Thema Batch & Shell ...

Linux
gelöst Google Chrome startet nicht (12)

Frage von Thomas91 zum Thema Linux ...