Hallo,
leider funktionieren zwei meiner per Cronjob automatisierter Skripte auch bei manuellem Aufruf nicht mehr (zuvor jahrelang problemlos im Einsatz, nichts am Skript geändert).
fwrite() wird außerhalb der Schleife problemlos aufgerufen (Erstellen der Kopfzeile für ein Listing unserer Shopprodukte).
Während die Schleife alle Produkte in die *.txt-Datei für die Suchmaschine einfügen soll, wird nur die Kopfzeile (erste Zeile des untenstehenden PHP-Codes) geschrieben und keine Artikel durch die Schleife hinzugefügt.
Der Array wird bei Aufruf der PHP-Datei problemlos angezeigt (echo). In die *.txt-Datei ($fp) wird lediglich die Kopfzeile eingefügt, d.h. die Datei ist prinzipiell beschreibbar und wird vor der Schleife geöffnet (fopen(), flock() )und nach Abarbeitung der Schleife geschlossen. Die Schreibrechte habe ich natürlich überprüft, sollten aber kein Problem darstellen, da außerhalb der Schleife auch in die Datei geschrieben werden kann.
Das Skript lief wie gesagt jahrelang problemlos, ich bin lediglich durch die Fehlermeldung, dass keine Artikel in das Shoplisting eingefügt wurden, auf den Fehler (leere Datei nur mit Kopfzeile) aufmerksam geworden.
Wo ist der Fehler? Es wurde nichts verändert an einem funktionierenden Skript....
Vielen Dank,
hausmaus
leider funktionieren zwei meiner per Cronjob automatisierter Skripte auch bei manuellem Aufruf nicht mehr (zuvor jahrelang problemlos im Einsatz, nichts am Skript geändert).
fwrite() wird außerhalb der Schleife problemlos aufgerufen (Erstellen der Kopfzeile für ein Listing unserer Shopprodukte).
Während die Schleife alle Produkte in die *.txt-Datei für die Suchmaschine einfügen soll, wird nur die Kopfzeile (erste Zeile des untenstehenden PHP-Codes) geschrieben und keine Artikel durch die Schleife hinzugefügt.
PHP-Code:
fwrite($fp, "id"."\t"."titel"."\t"."preis"."\t"."link"."\t"."bild_url"."\t"."beschreibung"."\t"."zustand"."\n");
while($row = mysql_fetch_array($res))
{
[..hier werden die Daten für $export erzeugt..]
$export = $artikel['nr'] ."\t". $artikel['name']."\t". $artikel['preis'] ."\t". $artikel['link'] ."\t". $artikel['imglink'] ."\t". $artikel['descr'] ."\t". "neu" ."\n";
fwrite($fp, $export);
echo $export."\n";
}
Das Skript lief wie gesagt jahrelang problemlos, ich bin lediglich durch die Fehlermeldung, dass keine Artikel in das Shoplisting eingefügt wurden, auf den Fehler (leere Datei nur mit Kopfzeile) aufmerksam geworden.
Wo ist der Fehler? Es wurde nichts verändert an einem funktionierenden Skript....
Vielen Dank,
hausmaus
Kommentar