Problem mit Sicherheitscode im GB

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

  • Problem mit Sicherheitscode im GB

    Hallo,
    bin php Neuling und möchte mir einen Sicherheitscode in mein Gästebuch bauen.
    Habe da einScrpt gefunden das angeblich "sehr leicht" sein soll doch beim
    versuch das in mein Gb einzubauen komme ich einfach nicht weiter.
    Hier der Code - zum besseren verständnis:

    PHP-Code:
    <?php
      
    include( "formspamguard.inc" );
      
    $match fsg_checkmatch();

      if ( 
    $match )
      {
        echo( 
    "<p style=\"color: green;\">Prima! Deine Eingabe entspricht genau den angegebenen Zeichen.<br />\n" );
        echo( 
    "Darf es noch ein Versuch sein?</p>" );
      }
      elseif ( 
    $match )
      {
        echo( 
    "<p style=\"color: red;\"><strong>Fehler: </strong>Deine Eingabe &raquo;" );
        echo( 
    $_POST['fsg_plain'] );
        echo( 
    "&laquo;entspricht nicht den angegebenen Zeichen!<br />\n" );
        echo( 
    "Noch ein Versuch gef&auml;llig?</p>" );
      }
    ?>
    Das ist die Abfrage ob der Code richtig eingegeben wurde.
    Nun ist es so das ich das in men GB einbauen wollte.
    baue ich es einfach am Anfang ein - wird der Code zwar abgefragt und als
    Ok oder nicht OK angezeigt jedoch wird ein Eintrag dadurch nicht verhindert.

    Dann habe ich angefangen den Code zu stückeln - oben die "Code richtig"
    und den unteren Teil irgendwo im Code des GB abgelegt - leider funzt das auch
    nicht und ich bekomme Fehlermeldungen.
    Kann mir da evtl. jemand von euch helfen das ich den verd.. Code funktionierend
    in mein Gb einbauen kann?
    Wäre sehr dankbar - wenn noch was an Code vom GB gebraucht wird bitte bescheid
    sagen.

    vielen Dank
    mikeda

  • #2
    na Du musst die if $match < oder > frfagen um die funktionalität bauen, die den Eintrag durchführt.
    nachdenken erlaubt
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      Mann

      Hallo MelloPie,
      was meinste was ich hier den ganzen Tag schon versuche und
      ausser Fehlermeldungen nichts Ernte.
      Wie schon erwähnt "php Anfänger" Ich nix viel verstehen von den
      ganzen { } else usw.
      Habe mich zwar schon mal mit php beschäftigt aber meine Kentnisse
      sind eben vermindert gut

      Ich habe schon probiert den Code hier und da einzusetzen aber
      irgendwie klappt das alles nicht.

      Gruss
      mikeda

      Kommentar


      • #4
        Also du baust den obengezeigten Code in die GB-Seite ein ?
        Dann würde
        PHP-Code:
        ...
        elseif ( 
        $match )
        {
            echo( 
        "<p style=\"color: red;\"><strong>Fehler: </strong>Deine Eingabe &raquo;" );
            echo( 
        $_POST['fsg_plain'] );
            echo( 
        "&laquo;entspricht nicht den angegebenen Zeichen!<br />\n" );
            echo( 
        "Noch ein Versuch gef&auml;llig?</p>" );
            exit; <-- 
        //entferne aber noch diese Zeichen ;-)

        bereits Abhilfe schaffen. Denn das Prob ist, dass die Fkt wohl merkt dass der Code falsch ist, das Script aber die Ausführung nicht abbricht und weitergeht und so ggf den Eintrag doch verarbeitet.

        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          JUHUUUUU

          Hallo tobi,
          1. Sahne !!!

          klappt suuuuuper. Was so eine kleine Sache ausmacht -
          Ich danke dir 10000000000 mal für die schnelle Kompetente
          und ohne dumme Sprüche geleistete Hilfe!!!

          vielen Dank
          mikeda

          Kommentar


          • #6
            Naja,
            ne schöne Lösung ist das aber nicht mit "exit" zu arbeiten. Du solltest die Struktur entsprechend ändern.

            PHP-Code:
            <?php
            include( "formspamguard.inc" );
            if (
            fsg_checkmatch()) {
                
            // alles ok, Eintrag speichern
                
            ...
            } else {
                
            // nicht ok, nicht speichern
                
            echo 'Hey du Lamer, das war nix!'// Fehlermeldung
                
            ...
            }
            ?> // <-- SKRIPTENDE
            Ich denke, also bin ich.
            Manche sind trotzdem!

            Kommentar


            • #7
              warum nicht?

              Hallo cst,

              Original geschrieben von cst
              Naja,
              ne schöne Lösung ist das aber nicht mit "exit" zu arbeiten.
              Danke auch für deinen Tipp - habe ihn mal versucht - geht aber nicht.
              Das mit dem "exit" klappt.
              Evtl. hab ich ja deinen Code falsch eingebaut aber da tut sich nix -
              noch nicht mal ne Fehlermeldung.
              Bin ja schon froh das das jetzt (wenn auch mit exit) klappt.
              Und - schön muss es ja nicht sein
              Danke und Gruss
              mikeda

              Kommentar

              Lädt...
              X