kostenloser Webspace werbefrei: lima-city


Datei schreiben

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    g*********b

    Hi,

    ich versuche gerade so etwas wie eine private Zugriffsstatistik zu schreiben.

    Die eigentlichen HTTP-Informationen bekomme ich sauber hin, aber das schreiben in eine Datei will nicht, und zwar ohne jede Fehlermeldung:confused:

    Das ist der Code:

    $request = fopen("request.txt", "a+");
    fwrite($request, $row."\r\n");
    fclose($request);
    der Inhalt von $row ist absolut ok, kann ich mit echo ausgeben,

    aber in die Datei wird nichts geschrieben:confused:

    Kann mir jemand helfen?

    WS
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. also, ich weiss nicht auswendig, was a+ bedeutet, geh aber mal davon aus, dass es schon fuer schreibzugriff steht?

    bei mir funktioniert es mit "w+b":

    $datei = fopen("bla.txt", "w+b");
    fwrite($datei, $entry);
    fclose($datei);

    hatte anfangs auch probleme und es lag an dieser lese-/schreibanweisung.

    hast du auch die rechte (chmod) fuer die textdatei richtig gesetzt? daran koennte es auch liegen.
  4. Nimm mal einfach nur "a" anstelle von "a+". Die Datei sollte bereits existieren und du musst die n?tigen Schreibrechte besitzen.
    Da du ja eine Textdatei beschreiben willst, nimm mal fputs() anstelle von fwrite():

    ---
    fputs($request,$row."\r\n");
    ---

    Bin mir jetzt aus'm Kopf nicht sicher, aber fwrite() ist glaubich f?r Bin?rdateien gedacht und schreibt immer nur ein Byte... oder?

    Ggf. die Argumentreihenfolge nochmal ?berpr?fen (sorry, hab schon lange nicht mehr in PHP programmiert!).

    HTH,
    thw
  5. Autor dieses Themas

    g*********b

    Hmmh,

    also a+ bedeutet lt Doku:

    ?ffnet die Datei zum Lesen und Schreiben. Positioniert den Dateizeiger auf das Ende der Datei. Wenn die Datei nicht existiert, wird versucht sie anzulegen.


    wobei das "+" den Zusatz f?r "auch lesen" bedeutet.

    mit w+ ist mit hier nicht geholfen, da ich damit bereits bestehende Inhalte ?berschreibe.

    w+b taucht in meiner Doku nicht auf????

    fputs() ist ein Alias f?r die Funktion fwrite()
    sthet so in der Doku...

    in jedem Falle danke ich euch f?r eure Bem?hungen,
    muss wohl noch einwenig weiterforschen,
    es sei denn es gibt noch einige Ideen zum Thema...

    Ich w?rde mich freuen...

    WS

  6. t*****e

    Neue Dateien w?rde ich immer mit

    fopen("datei.txt", "w");

    anlegen. Klappt (auf jeden Fall bei mir) immer! Das w steht f?+r "Datei ?berschreiben", und wen die Datei noch nicht existiert, wird sie neu angelegt. Allerdings benutze ich immer fputs(), was aber eigentlich nichts ausmachen d?rfte, denn die Datei m?sste ja trotzdem angelegt werden, oder?
  7. Autor dieses Themas

    g*********b

    Das "a" habe ich schon mit Bedacht gew?hlt, da ich tats?chlich Inhalte anh?ngen will und nicht alles bisherige ?berschreiben.

    Aber, aus irgendwelchen geheimnisvollen Gr?nden, hat sich das Problem in Luft aufgel?st...

    Alles klappt jetzt, wie es muss.

    Muss wohl an den Gezeiten oder der mondphase oder was auch immer liegen.

    Jedenfalls vielen Dank an Alle.

    Kann geschlossen werden

    WS
  8. e**o

    Habe deinen Code ausprobiert. Er funkt (zumindest bei mir). Ist $row ein Array.

    Vielleicht schaust du dir immer die falsche Datei im Browser an!!! => falscher Ordner.


    ?ndere Mal den Name (muss die neue Datei aber vorher erstellen da du ja mit a+ schreibst)

    mfg
    edvo
  9. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!