PHP: intercettare le richieste AJAX

PHP: intercettare le richieste AJAX

AJAX e PHP interagiscono molto bene insieme. L'unico problema che ha PHP è riconoscere quando una richiesta viene fatta tramite AJAX.

Per questo motivo tutti i framework che usano AJAX impostano l'header HTTP_X_REQUESTED_WITH nelle loro richieste.

HTTP_X_REQUESTED_WITH

La verifica da fare è la seguente:


if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest') {
  
    // gestisce la richiesta AJAX
    
}

L'alternativa

L'alternativa è usare un parametro aggiuntivo da allegare alla richiesta:


$ajax = $_POST['ajax'];
if(isset($ajax) && $ajax === '1') {

	// gestisce la richiesta AJAX

}

Ovviamente se usate un framework dovreste utilizzare le routine di gestione AJAX del vostro framework e quasi sicuramente non avrete bisogno di ulteriori verifiche, che in genere si applicano solo quando state scrivendo il codice da zero.

Torna su