Problem mit header

Hallo zusammen,
ich habe ein Problem. Als captcha Abfrage werden zwei random Zahlen generiert, die der Nutzer addieren soll. Falls das Ergbenis stimmt, kann fortgefahren werden.

[PHP]
if(!$logger->check_log()) { //falls man nicht eingeloggt ist, muss die captcha Abfrage beantwortet wtrden
$fig1 = $logger->get_random_num(); //zwei Zufallszahlenw werden erzeugt
$fig2 = $logger->get_random_num();
echo „

Da Du nicht registriert bist, löse bitte die folgende Rechenaufgabe:

“;
echo ‚‘.$fig1 .’ + ‚.$fig2.‘ = ';
}
if(isset($_POST[‚answerB‘]))
$res = $logger->create_blog_answer($blog_id, ‚answerfieldB‘,$fig1, $fig2, ‚CaptchaBlog‘); //Übergabe der Zufallszahlen
[/PHP]

Sobald der Submit Button gedrückt wird, wird die Seite ja aktualisiert. Das bewirkt jedoch, dass neue ZUfallszahlen generiert werden, doch das eingegebene Ergebnis gleicht bleibt, da es ja nicht neu erstellt wird, sondern einmal vom Nutzer eingegeben worden ist. Durch die Generierung neuer Zufallszahlen ist das Ergebnis immer falsch. Wie kriege ich es hin, dass nach dem Drücken des submit BUttons nicht neue Zufallszahlen generiert werden und dass die alten noch gelesen werden können?

Vielen Dank für eure Hilfe
lg, freakXHTML

Entweder du speicherst Ergebnis in die Session oder schreibst es beim Erzeugen in ein , irgendwie verschlüsselt.

Hallo,

ich habe jetzt die Zahlen in jeweils eine Session geschrieben, doch das Problem ist dadurch leider nicht gelöst. Wenn die Seite aktualisiert wird, dann werden die neuen Zahlen auch in die Session geschrieben und damit überschrieben.

Die input hidden Methode möchte ich hier nicht übernehmen. Könnt ihr helfen, das mit Sessions zu verwirklichen.

Es muss irgendwie so gehen:

if(Submit Button nicht gedrückt)
{
schreibe Zahlen in Session
}
elseif(Button gedrückt)
{
schreibe neue Zahlen nicht in Session, damit die alten gespeichert bleiben
}

Vielen Dank
lg, freakXHTML

Du sendest das Formular doch sicher per POST. Dann prüfe doch einfach, bei POST ob das Captcha stimmt, ansonsten generierst du das Gaptcha/schreibst du Lösung in die Session.

falls du ohne session auskommen willst:
generiere die zahlen
schreib das ergebnis der addition in ein unsichtbares eingabefeld
vergleiche nach dem absenden die POSTs vom unsichtbaren eingabefeld und dem usereingabefeld.

Dann ueberpruef doch einfach, ob der Submit button gedrueckt wurde…

Let me google that for you

@Commodore: Schätzelein, das habe ich gleich als erstes gemacht, aber es funktioniert nicht :slight_smile:

@Space Vampire: Ich möchte lieber keine hidedn felder nehmen.

Ich probier jetzt nochmal rum…dann meld ich mich wieder.

Vielen Dank
lg, freakXHTML

@Commodore: Ich hatte ein Ausrufezeichen zu wenig. Hattest recht! danke.

lg, freakXHTML