[PHP4] Gästebuch frage

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

  • [PHP4] Gästebuch frage

    Hallo,

    ich code gerade ein GB *totaler Anfänger* und stoße auf ein schier unlösbares Problem!

    Man kann zwar einen Eintrag vornehmen, doch der 2. Eintrag überschreibt den ersten! Der Code mag für euch auch stümperhaft sein aber es ist ein anfang für mich! Hier ist er

    PHP-Code:
    <?php
    if ($action == "add"){

    if (
    $name == " " || $mail == " " || $text == " "){
    echo 
    "<p class=\"normalFont\"><center>
    Sie haben nicht alle nötigen Felder ausgefüllt, klicken Sie <a href=\"gb.php\">hier</a> um zurück zu gelangen!
    </p></center>"
    ;
    }
    else{

    if (
    $www == " "){
    $eintrag "<b><p class=\"normalFont\">
    Name:</b> <a href=\"mailto:
    $mail\">$name</a>
    <br>
    $text</p>";
    }
    else{
    $eintrag "<b><p class=\"normalFont\">Name:
    </b> <a href=\"mailto:
    $mail\">$name</a> 
    <b>Webpräsenz: </b><a href=\"
    $www\" target=\"_blank\">$www</a>

    <br>
    $text<hr><br><br></p>";
    }
    $filename "gb.txt";

    if (
    file_exists($filename)) {
    $datei fopen("gb.txt","w+");
    fwrite($datei,$eintrag);
    fclose($datei);
    echo 
    "<p class=\"normalFont\"><center>Danke 
    <b>
    $name</b> für Ihren Eintrag! Klicken Sie <a href=\"gb.php\">hier</a> um zurück zu gelangen!
    </p></center>"
    ;
    }

    else{

    $datei fopen("gb.txt","w+");
    fputs($datei,$eintrag);
    fclose($datei);
    echo 
    "<p class=\"normalFont\"><center>Danke 
    <b>
    $name</b> für Ihren Eintrag! Klicken Sie <a href=\"gb.php\">hier</a> um zurück zu gelangen!
    </p></center>"
    ;

    }

    }

    }
    else{
    ?>
    Ich habe versucht es so zu lösen das wenn die gb.txt schon existiert ein eintrag einfach nur angefügt wird, was aber mit fwrite und fputs nicht lösbar scheint. Also wenn die Datei existiert soll ein eintrag dazu gefügt werden und wenn nicht dann soll die txt datei erstellt werden ebendso wie der erste beitrag! Hoffe ihr könnt mir helfen!

    Danke!
    Zuletzt geändert von Everdream; 13.02.2007, 00:35.

  • #2
    Ehrlich gesagt sehe ich bei dir nicht, wo du den FilePointer an das Ende der Datei schiebst. Du benutzt zweimal den Modus w+

    Was der macht, findest du hier im Manual:

    http://de2.php.net/fopen

    Da findest du auch direkt das Richtige, was du eigentlich benötigst.


    P.S.: Bitte unsere Regeln lesen, wir mögen nicht so gerne Code bei dem wir horizontal scrollen müssen....
    Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
    var_dump(), print_r(), debug_backtrace und echo.
    Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
    Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
    Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

    Kommentar


    • #3
      Original geschrieben von Shurakai
      Ehrlich gesagt sehe ich bei dir nicht, wo du den FilePointer an das Ende der Datei schiebst. Du benutzt zweimal den Modus w+

      Was der macht, findest du hier im Manual:

      http://de2.php.net/fopen

      Da findest du auch direkt das Richtige, was du eigentlich benötigst.


      P.S.: Bitte unsere Regeln lesen, wir mögen nicht so gerne Code bei dem wir horizontal scrollen müssen....
      Sorry! Habs geändert!
      Habs anfangs bei if (file_exists) mit r+ versucht ging aber auch nicht!

      Edit:

      2 mal lesen hilft oft, geht mit a+ vielen, vielen Dank !!!!
      Zuletzt geändert von Everdream; 13.02.2007, 00:53.

      Kommentar

      Lädt...
      X