Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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, 14991 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
Batch & Shell
gelöst Dateinamen auslesen und in einer Schleife benutzen (12)

Frage von TeholBeddict zum Thema Batch & Shell ...

Batch & Shell
gelöst Dateinamen auslesen und in Code einbauen (10)

Frage von markue zum Thema Batch & Shell ...

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

Frage von Akrosh zum Thema PHP ...

Batch & Shell
gelöst In einer Batch-Datei einen variablen Teil eines Dateinamens auslesen (5)

Frage von dh0815 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Sicherheits-Tools

Trendmicro OSCE und das Fall Creators Update Win10 RS3

(3)

Information von Henere zum Thema Sicherheits-Tools ...

Microsoft Office

Text in Zahlen umwandeln

Tipp von logische zum Thema Microsoft Office ...

Erkennung und -Abwehr

Infineon TPMs unsicher! Bitlocker ggf. angreifbar

(4)

Information von Lochkartenstanzer zum Thema Erkennung und -Abwehr ...

Firewall

PfSense Repository für Version 2.3.x

(6)

Information von Dobby zum Thema Firewall ...

Heiß diskutierte Inhalte
Microsoft Office
ICH BIN AM ENDE MEINES IT-WISSENS ANGELANGT!!!! (38)

Frage von 134537 zum Thema Microsoft Office ...

Windows Server
gelöst Gruppenrichtlinie greift nicht zu! (23)

Frage von Syosse zum Thema Windows Server ...

Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...