Hallo,
ich habe meine Formulare mit einem Token geschützt. Ich verwende diese Funktion, um die Richtigkeit des Tokens zu prüfen:
wenn kein Token mit der Url weitergegeben wird, erstelle ich damit ein Token:
Nun habe ich das Problem, dass zwar von dem Aufruf des Tokens in einer contruct__ funktion bis zum Script ende, das gleiche Token beibehalten wird. Sende ich jedoch das Formular ab, wird gleich unterhalb von session_start() ein anderes Token angezeigt. Ich habe keine Idee, was schief läuft. Vielleicht kann mir ja jemand einen Tipp geben?
wenn ich die Variable so ausgebe
hat diese einen anderen Wert als die durch die URL übermittelte
bevor ich das formular abschicke habe ich in der letzten Zeile die, die in der URL übergeben habe:
ich habe meine Formulare mit einem Token geschützt. Ich verwende diese Funktion, um die Richtigkeit des Tokens zu prüfen:
PHP-Code:
public function matchFormsToken($token) {
if($token == "" || $token != $_SESSION['front_forms_token']) {
return false;
} else {
$random = $this->randomString();
//Build the token
$token = $_SERVER['REMOTE_ADDR'] . $random;
$_SESSION['forms_token'] = $this->hashData($token);
self::$token_for_front_forms = "&front_forms_token=".$_SESSION['front_forms_token'];
return true;
}
}
PHP-Code:
if(!isset($_SESSION['front_forms_token'], $_GET['front_forms_token'])) {
$random = $this->randomString();
//Build the token
$token = $_SERVER['REMOTE_ADDR'] . $random;
$_SESSION['front_forms_token'] = $this->hashData($token);
self::$token_for_front_forms = "&front_forms_token=".$_SESSION['front_forms_token'];
}
wenn ich die Variable so ausgebe
PHP-Code:
session_start();
print($_SESSION['front_forms_token']."----1-----<br />");
bevor ich das formular abschicke habe ich in der letzten Zeile die, die in der URL übergeben habe:
PHP-Code:
echo $classes -> getContentDisplay($theme_derivative, $search_key);
print($_SESSION['front_forms_token']."----6-----<br />");
?>
</html>
Kommentar