Hallo!
ich lese eine etwas größere .csv Datei in eine MySQL Tabelle ein. Das Script funktioniert an sich aber bei dem Datensatz Nr. 10870 bricht es ohne Fehlermeldung ab.
[...] Oder an was kann das liegen?Kann man ohne konkrete Meldung so nicht sagen.
Was die Laufzeit des Scriptes anbelangt, so habe ich am Anfang mit time() den Wert von 1192626844 und am Ende: 1192626717 - Differenz: 127
Ist da ein Timeout?Das heißt also, dass dein Script bis zum Ende kommt, denn sonst könntest du die Zeit ja nicht wissen. Daraus vermute ich eher einen Fehler im MySQL-Teil als in PHP.
(PHP wird durch max_execution_time laufzeitbegrenzt. Dann bricht aber das Script komplett ab. Eine Laufzeitmessung an seinem Ende wäre dann nicht möglich.)
Nein, das Script läuft nicht bis zum Ende. Ich hab die Funktion time() innerhalb der Schleife aufgerufen. Genau wie jetzt nachträglich auch connection_status().
PHP-Fehlermeldungen sind erlaubt? error_reporting steht auf E_ALL? display_errors ist eingeschaltet?
Auszug aus der php.ini
error_reporting = E_ALL & ~E_NOTICE
display_errors = On
Fehlerzustände der mysql_*()-Funktionen werden ausgewertet? Im Fehlerfall geben die näbmlich ein false zurück. Ein Meldungstext im Klartext kann dann über mysql_error() abgefragt werden. (Jetzt sag bitte nicht:
Die MySQL-Fehler habe ich abgefragt: mit if (!$result) {$err=mysql_error(); $error_text = ".."}
Die MySQL-Abfrage bringt keine Fehlermeldung wenn ich sie in PHPMyAdmin direkt eingebe bzw rein kopiere und dann ausführe.
... denn das kann in deinem Script ganz anders aussehen.
Ich lasse mir die Abfrage mit ausgeben und kopiere sie dann in PhpMydmin. Ausserdem hat der Query, nur mit anderen Werten, vorher schon über 10.000 mal funktioniert.
Das ist ganz schön zum verrückt werden!
Für weitere Ideen bin ich nach wie vor offen und dankbar!
Gruß Marcel