PHP: risolvere il problema dei tentativi di accesso da remoto al carrello di un e-commerce

PHP: risolvere il problema dei tentativi di accesso da remoto al carrello di un e-commerce

Non esiste un metodo assolutamente sicuro per evitare che un form di un carrello di un e-commerce in PHP venga inviato da remoto. Esiste invece una pratica raccomandata che possiamo seguire.

Per prima cosa definiamo la nostra stringa di salt:


<?php
define('SALT', 'stringa');
?>

Quindi creiamo un token usando la stringa di salt e il timestamp corrente che andremo a memorizzare in una variabile di sessione:


<?php
$_SESSION['salt_time'] = time();
$token = md5(SALT . $_SESSION['salt_time']);
?>

<input type="hidden" name="nonce" value="<?php echo $token; ?>">

Infine validiamo il token:


<?php
if(isset($_POST['nonce'])) {
	if($_POST['nonce'] == md5(SALT . $_SESSION['salt_time'])) {
		// Valido
	}
}
?>

Torna su