Problem mit LOAD DATA LOCAL INFILE

B

bexxta

Registriert
Thread Starter
Dabei seit
07.09.2005
Beiträge
1
Reaktionspunkte
0
Hallo,

in meiner Anwendung lade ich eine Datei auf meinen Server hoch und schreibe sie anschließend in eine Datenbank. Auf meinem Windows-Rechner klappt das auch alles wunderbar doch beim Versuch selbiges auf dem Mac zu tun, wird nur ein Datensatz in die DB geschrieben. Für mich gibt es dafür keine logische Erklärung, da es alles serverseitig läuft, die Datei vom Mac auch auf den Server übertragen wird, nur der MySQL-Befehl nicht klappt, obwohl es doch eigentlich nichts mit dem Betriebssystem des Clients zu tun hat, oder doch?!

Würde mich über einen Hinweis oder Tipp sehr freuen, da ich echt am verzweifeln bin, hier mein Quelltext:

$upload = ftp_put ($connection_id, "csv.csv", "$csvpath", FTP_BINARY);
if(!$upload)
print "Fehler beim Hochladen der cvs-Datei!";

$csvpath='tmp/csv.csv';

$query= "LOAD DATA LOCAL INFILE
'".$csvpath."'
INTO TABLE `besttalktemp`
FIELDS TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '\"'
ESCAPED BY '\\\'
LINES TERMINATED BY '\\r\\n'";

$resID = mysql_query($query,$linkID);
if (!$resID) die(mysql_error());

Brauche dringend Hilfe, würde mich also sehr über eine Antwort freuen!

MfG,

bexxta
 
Wird denn ein mysql_error ausgegeben? Wenn ja, wie sieht der denn aus?
 
Kann es sein, dass die Datei, die Du vom Mac hochlädst nicht mit \r\n terminiert ist?

Win hat ja CR-LF Endung, Mac CR und Unix LF.

http://bumppo.net/lists/macperl-webcgi/1999/04/msg00013.html schrieb:
It's very simple. \015 is CR. \012 is LF. This is much simpler than
using \r and \n, where \n is LF and \r is CR on Unix, but \n is CR and \r
is LF on Mac OS.
 
Zurück
Oben Unten