if else und array problemmit gästebuch

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

  • if else und array problemmit gästebuch

    Hallo Erstmal

    Ich habe ein Problem ein Array zu erstellen mit verschiedenen Rechenaufgaben sprich im formular (gaestebuch.php)soll ein weiters Input Feld geben
    wo man die Rechenaufgabe eingibt und wenn man auf Absenden klickt
    soll die dann gecheckt werden in neuerbeitrag.php ob sie richtig oder
    falsch ist . Wenn die Aufgabe dann richtig ist sollen die daten in gaestebuch.txt reingeschrieben werden und wenn es falsch ist soll man zurück und die Daten verbessern die man eingegeben hat .Hier mal die Dateien:

    gaestebuch.php

    PHP-Code:
    <html>
    <head>
    <title>Gästebuch</title>

    Wollen Sie einen Beitrag hinzufügen?<br><br>

    <form action="neuerbeitrag.php" Method="post">
    Ihr Name:<br>
    <input name="Name" size="40"><br><br>

    E-Mail:<br>
    <input name="EMail" size="40"><br>
    <br><br>

    Inhalt:<br>

    <textarea name="inhalt" cols="40" rows="12"
    wrap="physical"></textarea><br>
    <input type="submit" value="Absenden">
    </form>
    <hr>

    <?php
    $beitrag 
    file("gaestebuch.txt");
    krsort($beitrag);

    foreach(
    $beitrag as $ausgabe)
       {
       
    $ausgabe stripslashes($ausgabe);
       
    $zerlegen explode("|"$ausgabe);

       echo 
    "
       <table align=\"center\"
            border=\"1\" cellspacing=\"0\"
       cellpadding=\"5\" bordercolorlight=\"black\"
       bordercolordark=\"black\" width=\"50%\">
       <tr>
       <td>
      Von <a href=\"mailto:
    $zerlegen[0]\">$zerlegen[1]</a>
      am 
    $zerlegen[2]
       </td>
       </tr>

       <tr>
       <td>
       
    $zerlegen[3]
       </td>
       </tr>
       </table><br>
       "
    ;
       }
    ?>
    neuerbeitrag.php
    PHP-Code:
    <html>
    <head>
    <title>Gästebuch - Speichere Beitrag</title>
    </head>
    <body>

    <?php
    $user 
    $_POST["Name"];
    $user htmlentities($user);

    $inhalt $_POST["inhalt"];
    $inhalt htmlentities($inhalt);
    $inhalt str_replace("\n""<br>"$inhalt);

    $email $_POST["EMail"];
    $email htmlentities($email);

    if (
    $inhalt == "" or $user == "")
       {
       echo 
    "Sie müssen das Feld \"Namen\"
       und \"Inhalt\" ausfüllen"
    ;
       }

    else
       {
       
    $datumdate("d.m.Y H:i:s");

       
    $eintrag="$email|$user|$datum|$inhalt";

       
    $datei fopen("gaestebuch.txt""a");
       
    fwrite($datei"\n".$eintrag);
       
    fclose($datei);

       echo 
    "Ihr Eintrag wurde erfolgreich gespeichert";
       }
    ?>

    <br>
    <a href="gaestebuch.php">Zurück zum Gästebuch</a>
    </body>
    </html>
    Die txt datei braucht man ja nicht hier .
    Ich habe selber Sachen ausprbiert aber bei mir klappt es einfach nicht.
    Jetzt hoffe ich auf eure Antworten
    Schonmal Danke in Voraus

    Gruß Bagerfahrer
    Zuletzt geändert von Bagerfahrer; 15.04.2010, 15:12.

  • #2
    Hallo und willkommen im Forum,

    bitte lies erstmal die Regeln und passe deinen Beitrag mit dem -Button => [Erweitert] entsprechend an, so dass du Code in den dafür vorgesehenen Tags postest und nicht als Zitat und am besten auch noch mit den ursprünglichen Einrückungen für bessere Lesbarkeit.

    Deine Anfrage solltest du auch überarbeiten, denn zumindest ich habe nach 3-maligem Lesen immer noch nicht kapiert, was jetzt dein Problem ist.

    Danke.

    Amica
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      Ich habe selber Sachen ausprbiert aber bei mir klappt es einfach nicht.
      Das heißt, du willst jetzt den fertigen Code von uns, oder?

      Anderenfalls beschreib' doch bitte das Problem, nur dann können wir dir helfen es zu lösen. Dein Code enthält noch nicht die Spur von dem was du vor hast.

      Kommentar


      • #4
        Problem

        Also ich will eine Rechenaufgabe als Spamschtz einsetzen nun weiß ich aber nicht wie ich es in gaestebuch.php einbaue und wie ich es in neuerbeitrag.php nachprüfen kann.Hab nur jetzt die Codes reingeschrieben damit ihr sehen könnt wo ich den Code einbauen könnte.

        Gruß Bagerfahrer

        Kommentar


        • #5
          Das hängt von der Art der Rechenaufgabe ab. Hier im Forum gibt es zum Beispiel Sachen wie "Was ist sieben plus drei in Worten?". Dann ist die Antwort "Zehn".

          Du könntest das beispielsweise über ein Array lösen:
          PHP-Code:
          $spamschutz = array();
          $spamschutz[0] = array ('Was ist sieben plus drei in Worten?','Zehn');
          $spamschutz[1] = array ('Was ist 3 plus fünf in Zahlen?','8');
          // usw. 
          Dann wählst du mit rand zufällig einen Array-Eintrag aus.
          PHP-Code:
          $random   rand(0count($spamschutz) - 1);
          $question $spamschutz[$random][0];
          $answer   $spamschutz[$random][1]; 
          Dann must du nur nach dem Absenden prüfen ob die Antwort identisch ist mit dem Eintrag:
          PHP-Code:
          if ($_POST['antwort'] == $answer
          Ungetestet und nur zur Anschauung.

          Peter
          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
          Meine Seite

          Kommentar

          Lädt...
          X