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, 14939 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
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(2)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Netzwerkprotokolle
gelöst Leiten "dumme" Switches VLAN-Tags mit durch? (25)

Frage von coltseavers zum Thema Netzwerkprotokolle ...

Windows Server
gelöst Neues KB für W10 1607 und W2K16 wieder mal nicht im WSUS 3.0, hat das noch jemand? (16)

Frage von departure69 zum Thema Windows Server ...

Router & Routing
FTTH bzw FTTB Router (13)

Frage von ukulele-7 zum Thema Router & Routing ...

Batch & Shell
Batch zum suchen und verschieben von Verknüpfungen (12)

Frage von zeroblue2005 zum Thema Batch & Shell ...