Dernièrement j'ai été confronté à une difficulté.
Dans l'un de mes sites je devais installer une visionneuse de pages en Ajax. Seul souci: La page appelée devait comporter certains éléments quand elle était appelée par ajax mais en comporter d'autres si on l'ouvrait par sun Url dirrecte ou dans un nouvel onglet.
après avoir galéré pas mal de temps sur Google pour trouver une réponse, j'ai enfin trouvé quelque chose d'intéressant.
Comment détecter si une page est ouverte suite à une requête Ajax ou pas?
Pour le coup, ce qui est souvent le plus difficile, c'est de trouver les bons mots clés à taper dans les moteurs de recherche. en effet, c'était la première fois que j'étais confronté à ce langage (Ajax) et j'ai pas mal tatonné avant de trouver ce qui me servait.
La solution, je l'ai trouvée sur un blog, et elle réside en ça:
Pour détecter si une requête est issue d'un appel AJAX
if
(isset(
$_SERVER
[
'HTTP_X_REQUESTED_WITH'
]) &&
strtolower
(
$_SERVER
[
'HTTP_X_REQUESTED_WITH'
]) ==
'xmlhttprequest'
) {
$jesuisajax = 'oui';
}
Comment utiliser ce code de détection de requête AJAX?
Et bien c'est simple. Placé en tout début de votre fichier php (en tête de votre site), le if(....) détecte si la requête est le résultat d'une requête Ajax. Si c'est le cas, on crée une variable que j'ai appelé $jesuisajax et qui prend la valeur "oui". Bien entendu, on aurait pu appeler la variable de n'importe quelle façon, et lui donner la valeur 1 par exemple.
Pour la suite, il suffit de détecter cette variable aux endroits nécessaires avec, par exemple:
if ( $jesuisajax == 'oui' ) {
echo 'Tout ce que je veux faire apparaitre suite à une requête AJAX';
}else{
echo 'Tout ce que je veux faire apparaitrequand il n'y a PAS de requête AJAX';
}
Édité 1 fois - Dernière édition: 28/05/2022 à 08:52 Par Limporia.