Ahh ok, avevi scritto xss e non avevo capito.
Allora tu devi generare un token, salvarlo come variabile di sessione e inviarlo nel form dentro un hidden field.
Per generare un token (con php 7+) quando apri la sessione puoi fare così:
codice:
session_start();
if (empty($_SESSION['token'])) {
$_SESSION['token'] = bin2hex(random_bytes(32));
}
$token = $_SESSION['token'];
Questo token poi lo metti dentro un hidden field con nome "token" nel tuo form, così da inviarlo insieme agli altri dati.
Poi nella pagina dove leggi i dati POST inviati dal form verifichi che il token sia corretto:
codice:
if (!empty($_POST['token'])) {
if (hash_equals($_SESSION['token'], $_POST['token'])) {
// Qui processi i dati del form
} else {
// Qui logghi i casi in cui i due token sono diversi
}
Ovviamente se il token non è presente il form non viene processato.