Hallo,
ich arbeite zur Übung mit diesem MVC Framework. https://github.com/codewithdary/MVCF...r/mvcframework
Jetzt habe ich allerdings ein Problem mit den Sessions.
Ich hatte zuerst eine Klasse mit den üblichen Methoden. Jedoch bekam ich da immer den Header sent fehler.
Jetzt arbeite ich mit einer session helper funktion.
Diese wird überall eingebunden und zu beginn die session gestartet
<?php
session_start();
zwei funktionen lauten:
function setCsrf(){
//echo bin2hex(random_bytes(32));
$_SESSION['_token'] = bin2hex(random_bytes(32));
return $_SESSION['_token'];
}
function getCsrf(){
return $_SESSION['_token'] ?? false;
}
diesen token übergebe ich bei jeder POST übermittlung. Mein Problem ist jedoch, dass die token nie übereinstimmen.
<input type="hidden" name="_token" value="<?php echo setCsrf();?>">
im Controller hole ich mir den token:
$sess = getCsrf();
&& ($_POST['_token'] == $sess ))
Warum stimmen diese tokens nie überein? Hat jemand eine Idee bzw weiß woran das liegt=?
Vielen Dank schon mal im Voraus
ACHTUNG (ich bin anfänger, und hoffe, dass ich mich einigermaßen verständlich ausgedrückt habe)
ich arbeite zur Übung mit diesem MVC Framework. https://github.com/codewithdary/MVCF...r/mvcframework
Jetzt habe ich allerdings ein Problem mit den Sessions.
Ich hatte zuerst eine Klasse mit den üblichen Methoden. Jedoch bekam ich da immer den Header sent fehler.
Jetzt arbeite ich mit einer session helper funktion.
Diese wird überall eingebunden und zu beginn die session gestartet
<?php
session_start();
zwei funktionen lauten:
function setCsrf(){
//echo bin2hex(random_bytes(32));
$_SESSION['_token'] = bin2hex(random_bytes(32));
return $_SESSION['_token'];
}
function getCsrf(){
return $_SESSION['_token'] ?? false;
}
diesen token übergebe ich bei jeder POST übermittlung. Mein Problem ist jedoch, dass die token nie übereinstimmen.
<input type="hidden" name="_token" value="<?php echo setCsrf();?>">
im Controller hole ich mir den token:
$sess = getCsrf();
&& ($_POST['_token'] == $sess ))
Warum stimmen diese tokens nie überein? Hat jemand eine Idee bzw weiß woran das liegt=?
Vielen Dank schon mal im Voraus
ACHTUNG (ich bin anfänger, und hoffe, dass ich mich einigermaßen verständlich ausgedrückt habe)
Kommentar