Session wird nicht zurückgesetzt
Verfasst: Do 24.Apr, 2008 20:50
Hi,
hab n kleines problem mit ner session in der der captchacode gespeichert wird.
Folgende Funktion sollte sein:
Aufruf der Seite, das captcha wird per img tag aufgerufen, der code in $_SESSION['captcha'] gespeichert, werden nun die Daten inclusive des Captchacodes abgeschickt, werden die daten in die DB geschrieben und die Session gelöscht werden. Der User erhält einen Hinweis das die daten Gespeichert wurden und nach nen Klick auf zurück kommt er wieder zu dem Formular und eine neue Session soll gestartet werden ( Neuer code generiert und in Session abgelegt )
Ich erhalte allerdings nach dem Klick auf Weiter im formular den vorherigen Captchacode und erst einen neuen wenn ich auf Reload klicke.
hier mal die entsprechenden Codzeilen:
captcha.php (per img tag eingebunden)
und die überprüfung bei der formularübergabe
Gruss
MADxHAWK
hab n kleines problem mit ner session in der der captchacode gespeichert wird.
Folgende Funktion sollte sein:
Aufruf der Seite, das captcha wird per img tag aufgerufen, der code in $_SESSION['captcha'] gespeichert, werden nun die Daten inclusive des Captchacodes abgeschickt, werden die daten in die DB geschrieben und die Session gelöscht werden. Der User erhält einen Hinweis das die daten Gespeichert wurden und nach nen Klick auf zurück kommt er wieder zu dem Formular und eine neue Session soll gestartet werden ( Neuer code generiert und in Session abgelegt )
Ich erhalte allerdings nach dem Klick auf Weiter im formular den vorherigen Captchacode und erst einen neuen wenn ich auf Reload klicke.
hier mal die entsprechenden Codzeilen:
captcha.php (per img tag eingebunden)
Code: Alles auswählen
session_start();
unset($_SESSION['captcha']);
$captcha_chars = "A B C D E F G H I J K L M N P Q R S T U V W 2 3 4 5 6 7 8 9";
$captcha_chars = explode(" ", $captcha_chars);
shuffle($captcha_chars);
$text = implode( '',array_slice($captcha_chars,0,5) );
$_SESSION['captcha'] = $text;
header('Content-type: image/png');
.
.
.
.
Code: Alles auswählen
if ( $mode == 'add_song' && isset($_POST['submit']) ) {
if ( $_SESSION['captcha'] != $_POST['captcha'] ) {
unset($_SESSION['captcha']);
$charts = message('INFO', 'Der eingegebene Sicherheitscode war falsch.');
eval('print_output("' . fetch_template('charts') . '");');
}
unset($_SESSION['captcha']);
add_song(htmlspecialchars($_POST['interpret']), htmlspecialchars($_POST['title']) );
$charts = message('INFO', 'Der Song wurde in die Charts aufgenommen');
eval('print_output("' . fetch_template('charts') . '");');
}
MADxHAWK