Captcha zeigt es wegen random nicht an

  • Hallo miteinander,
    ich habe ein Captcha erstellt, und wollte die Linien die über der Zahl Liegen Variabel anzeigen lassen. doch leider funktioniert dies nicht. wenn ich die Zahlen einfach ohne "rand" funktion eingebe, klappt es wunderbar. doch das möchte ich ja nicht!

    Hier mal der Code des Captchas:

    Kann mir da jemand einen Tipp geben?
    ich komme nicht draus.

  • Hallo,
    also ich habe mir die Mühe gemacht und habe mein Formular umständlich und mit viel Mühe umgestellt, dass das Captcha auch funktioniert. Und nun habe ich eine Frage welche für einen Profi hier im Forum eigentlich kein Problem sein sollte, und dann bekomme ich eine solche nonsens Antwort, welche mich wieder zur totalen Umstellung meines Formulars führen würde. Nein, auf das habe ich keinen Bock. Ich möchte nicht schon ein vorgefertigtes Skript benutzen bei welchem ich nicht verstehe was im Hintergrund abläuft. Nein ich möchte eines welches ich selbst (mit Tutorial) erstellt habe und ich auch verstehe.
    Also bitte helft mir doch bei meinem Problem. Ich weis nicht wieso diese Linien nicht mit "rand" gemacht werden können.

    besten Dank für die Antwort. Hoffe du verstehst mich, ist nicht böse gemeint, aber das ist das was ich vertreten kann.

  • zeile 6: if ohne klammern ()
    zeile 28: $l43 und nicht $143 eine EINS ist kein L
    zeile 6,7,21 nur striche"punkte" mittels rand() generieren, wenn get leer ist?!
    zeile 4 $_GET ist aktueller.. wir sind doch nicht mehr bei php 3
    zeile 6 mit empy() geht es schneller

    Kommentar: auch wenn die Applikation fertig ist, sind deine Störstriche vollkommen unzureichend.
    Und wenn du nicht noch irgend wo was mit einer Session ein baust, gib mal den Link wenn es fertig ist... und schreib mal nen exponens dazu wie viele "GB" Einträge du den haben willst.

  • Hallo erstmal und guten Morgen,
    Ich habe ja das Capcha so erstellt wie oben beschrieben. Was auch wunderbar funktioniert. Jetzt habe ich das Problem, was mache ich wenn ich das Bild nicht Lesen kann?

    ich habe dann versucht etwas zu erstellen mit jscript aber leider bin ich da am ende meiner bescheidenen kenntnissen. ich habe gegoogelt und habe nur Bilder gefunden die über zeitsteuerung geladen werden.
    das Problem dabei ist, dass mir das nichts bringt. ist ja blöd jemand tipt den Code ein und genau in dem moment wechselt die grafik.

    Wie muss ich das also machen?

    Hier mal der Code:

    Das "Hier" welches als css "Links" deklariert ist, soll das captcha neu laden.

    Danke für die schnelle antwort.

  • Es ist ganz einfach!
    also ich habe ein Captcha erstellt, welches ich mittels:

    PHP
    <?php
                                    echo '[img]captcha.php?geb='.$rund.'[/img]
    
    
    ';
                                    echo '<input type="hidden" name="geb" value="'.$rund.'" />';
                                    ?></div>


    anzeigen lasse.

    jetzt habe ich darunter einen Link der nur das Bild und nicht die ganze Seite neu laden soll.
    Was das ganze bringen soll. Wenn jemand das Captcha nicht lesen kann, soll er das bild neu laden können.
    Da es unterhalb eines Formulars ist, kann ich nicht die ganze Seite laden, da der IE das Formular löscht.

    alles klar?

    MfG bambid

  • probier es mal so....

    ist ungetestet und nur fix zusammen gehackt

  • Bis jetzt bin ich soweit:

    aber leider läd er nicht das neue captcha
    bzw. es wird nicht der neue Hintergrund geladen was es eigentlich sollte. und es gemacht hatte, als ich den Code <?php echo $rund; ?> nicht eingefügt hatte. doch an was liegt das?
    die übergabe funktioniert sonst wunderbar. aber er übergibt die zahl geb nicht wirklich richtig.
    oder
    das catcha kann die geb nicht auslesen.
    an was kann das liegen?

    besten dank für die Hilfe!

    Das ganze kann man hier anschauen:

    http://www.2007.ferronato.ch/catchatest.php

  • gieb deiner grafik mal noch folgende optionen mit

    also in der PHP datei die die grafik lädt:
    header('Cache-Control: no-cache, no-store, must-revalidate');
    header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');

  • leider hat dies nichts bewirkt.
    Ich weiss einfach nicht weiter!
    Wieso funktioniert dies nicht?
    Wieso kann der IE die Daten welche in Das Formular eingegeben wurden nach einem Refresh nicht wiedergeben, so wie der FF. Aber die Macken des IE sind ja bekannt.
    So ich werde mich mal noch an ein anderes Forum wenden, bin aber sicherlich für weitere Hilfen stehts Dankbar.