Ankündigung

Einklappen
Keine Ankündigung bisher.

fwrite-Problem ???!!!???

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • fwrite-Problem ???!!!???

    Moin,

    ich habe eine Datei, die Datensätze an einen Webserver schickt und eindeutige Nummern, sogenannte item_ids, zurückgibt. Diese Nummern schreibe ich in eine Textdatei und dann importiere ich sie nach Access.

    Eigentlich klappt alles ganz gut. Ich kann so viele Artikel schicken wie ich will. Sie werden auch alle angelegt, aber die Erstellung der Textdatei bricht bei etwa 640 item_ids ab und ist leer.

    Mein Code:

    $arr=$return[item_ids];
    $datei = fopen("test.txt","w");
    foreach($arr as $artnr) {
    fwrite($datei, $artnr);
    fwrite($datei, "\n"); }
    fclose($datei);

    Die Fehlermeldung lautet:

    Warning: Invalid argument supplied for foreach()

    Kann mir jemand einen Tipp geben ?

    Nochmal bei 635 Datensätzen funzt es! Bei 640 nicht ?

  • #2
    Die Fehlermeldung besagt, dass $arr eben kein Array ist, warum auch immer.

    Richtig debuggen
    1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
    2. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
    3. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
    4. Schritt 3 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
    5. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
    6. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
    7. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

    Die Ausgaben per echo kann man sich ersparen, in dem man einen Debugger benutzt, was eigentlich selbstverständlich sein sollte.

    Gruß
    phpfan

    Kommentar


    • #3
      Danke für den Ansatz!

      Kommentar

      Lädt...
      X