Hallo,
habe mir ein Script zusammengestellt wo eine lokal bereits auf dem Server liegende CSV-Datei mit festem Namen in eine MySQL eingelesen werden soll. Klappt eigentlich auch alles sehr gut bis auf die Tatsache das ich die Texttrenner ( " " ) nicht aus meinem $my_array herausbekomme. Verschiede Versuche scheiterten bisher. Somit werden die Feldinhalte einschl. der Texttrenner abgespeichert ("Inhalt Feld 1", "Inhalt Feld 2", "Inhalt Feld 3", usw.)
Wie kann ich es anstellen, dass ich aus dem Array die Texttrenner herausbekomme und die Daten trotzdem in der MySQL abgespeichert werden.
Wie müsste ich meinen Code ergänzen?
mfg
Julia
habe mir ein Script zusammengestellt wo eine lokal bereits auf dem Server liegende CSV-Datei mit festem Namen in eine MySQL eingelesen werden soll. Klappt eigentlich auch alles sehr gut bis auf die Tatsache das ich die Texttrenner ( " " ) nicht aus meinem $my_array herausbekomme. Verschiede Versuche scheiterten bisher. Somit werden die Feldinhalte einschl. der Texttrenner abgespeichert ("Inhalt Feld 1", "Inhalt Feld 2", "Inhalt Feld 3", usw.)
Wie kann ich es anstellen, dass ich aus dem Array die Texttrenner herausbekomme und die Daten trotzdem in der MySQL abgespeichert werden.
PHP:
<?php
#error_reporting(E_ALL);
if ($p1 != true) {
$Link=mysql_connect("localhost","web123","user123") or die (mysql_error());
mysql_select_db("db123");
$table = "tabelle1";
}
#$temppath= "/daten/data.csv"; // wurde nicht gefunden
$temppath= "http://www.domain.de/daten/data.csv";
//Tempdatei öffnen
$fp = @fopen($temppath, "r") or die ("Kann Datei nicht lesen.");
//Zeilen auslesen und in der Datenbank speichern
#$opt1 = "FIELDS TERMINATED BY ';'";
#$opt2 = "OPTIONALLY ENCLOSED BY '\"'";
while ($line = fgets($fp)) {
$my_array = explode(';',$line,6);
#$my_array = explode($opt1,$line,223);
# Text in die MySQL schreiben
include ("check_login.php");
$sql = "INSERT INTO $table SET feld6='$my_array[6]',
feld5='$my_array[5]',
feld4='$my_array[4]',
feld3='$my_array[3]',
feld2='$my_array[2]',
feld1='$my_array[1]',
feld0='$my_array[0]';";
if( mysql_query($sql)){
$pruef = TRUE;
}
}
fclose($fp);
?>
Wie müsste ich meinen Code ergänzen?
mfg
Julia