CSV in DB einlesen
Einklappen
X
-
Habe den Fehler gefunden! Lag an meinen Einstellungen der CSV als ich sie abgespeichert habe!
-
Es kann natürlich auch ein Fehler beim Einfügen auftreten. So wie ich das sehe, ist dein Code auf sowas nicht vorbereitet. Fehlerbehandlung bei DB-Abfragen muss sein und PHP-Error-Reporting sowieso.
Einen Kommentar schreiben:
-
Habe mir die CSV schnell selber gemacht und es steht nichts besonderes drin:PHP-Code:12345;lalalala;lololo;
678910;jajajaja;tatatata;
Einen Kommentar schreiben:
-
Hallo,
ja, normalerweise liest fgetcsv alle Zeilen der Reihe nach aus. Hast du evtl. exotische oder kaputtkonvertierte Zeilenumbrüche drin? Da du die Datei nicht im binary-Modus öffnest, sollte PHP sowohl CR, LF als auch CRLF erkennen. Alles andere wäre ein Fehler. Sieh am besten mal mit einem Hex-Editor nach.
Gruß,
Amica
Einen Kommentar schreiben:
-
Alles klar, die Datei wird eingelesen, aber eine Frage hätte ich noch: er liest mir nur die erste Zeile aus aus der CSV. Normalerweise müsste er doch jede Zeile durchgehen oder?
PHP-Code:while ( ($data = fgetcsv ($handle, 100000, ";")) !== FALSE ) {
$strecke_speichern="INSERT INTO csv (active,groessen,farbe) VALUES ('1','".addslashes($data[0])."','".addslashes($data[1])."')";
$result_strecke_speichern=mysql_query($strecke_speichern);
}
Einen Kommentar schreiben:
-
Einen Kommentar schreiben:
-
Alles klar, ich sollte die Datei erst Zwischenspeichern, dann habe ich genau des Ort wo sie liegt, kann sie dann einlesen und danach wieder löschen! 100 Punkte?
Einen Kommentar schreiben:
-
CSV in DB einlesen
Hallo!
Ich möchte über eine Upload-Feld eine CSV Datei einlesen können. Leider schaffe ich es nicht den korrekten Pfad zur Datei auszulesen!
Hier meine Datei, welche das Formular (in welchem sich nur ein Upload-Feld befindet) einliest:
PHP-Code:foreach($_FILES as $filename)
{
$csvurl = $filename['tmp_name'];
}
$row = 1;
$handle = fopen ($csvurl,"r");
echo "---->".$csvurl;
while ( ($data = fgetcsv ($handle, 1000, ";")) !== FALSE ) {
$strecke_speichern="INSERT INTO csv (active) VALUES ('1')";
$result_strecke_speichern=mysql_query($strecke_speichern);
}
fclose ($handle);
Er kann ja also ganricht die Datei finden! Aber wenn ich es über $filename['name']; mache, bekomm ich ja nicht den Pfad zu Datei. Was mache ich hier falsch?Stichworte: -
Einen Kommentar schreiben: