Mailinglisten-Archive |
Hallo Liste! Ich stehe vor folgendem Problem: Eine größere CSV-Datei soll eingelesen und zeilenweise in die Tabelle artikel eingetragen werden. Neue Artikel werden eingefügt, bestehende aktualisiert. Wenn ich nun die 5825 Zeilen (Artikel) der CSV-Datei abarbeiten lasse, wobei alle Artikel bereits in der Datenbank enthalten sind und somit nur aktualisiert werden sollten, werden 5455 Artikel neu angelegt und 370 aktualisiert. Nach 370 Zeilen funktioniert die Abfrage, ob der Artikel bereits vorhanden ist, nämlich nicht mehr: Es wird <<Warning: 0 is not a MySQL result index in csv.php3 on line 35>> ausgegeben und der Artikel via INSERT eingefügt. Hat jemand eine Idee, wie ich dieses Problem lösen kann und auch größere CSV-Dateien in die Datenbank einlesen kann? Besten Dank Frank ------------- //***** Abarbeitung jeder Zeile der CSV-Datei ***** while ($data = fgetcsv ($fp, 1000, ";")) { ... //*****Prüfung, ob Artikel bereits vorhanden***** $anweisungsid = mysql_query("SELECT artikelnr FROM artikel WHERE (artikelnr=$data[0])"); //*****$data[0] ist das erste Feld der CSV-Zeile und enthält die Artikelnr.***** if ($zeile = mysql_fetch_object($anweisungsid)) // line 35 { $sql = <UPDATEANWEISUNG> } else { $sql = <INSERTANWEISUNG> } mysql_query("$sql"); }//while ------------- _________________________________________________________ Mountainbike.de - Das Online-Portal für Mountainbiker --- http://www.mountainbike.de --- _________________________________________________________
php::bar PHP Wiki - Listenarchive