Bonjour Je travaille sur l'obtention des données de la base de données en envoyant une valeur en utilisant la méthode getJSON de la bibliothèque JQuery, à une fonction PHP qui récupère les données de la base de données. Les données sont ensuite placées dans un tableau de paires name: value et sont codées en json et renvoyées/renvoyées en écho. Cela aiderait jQuery à remplir les éléments HTML requis avec les données de la base de données. Cela fonctionne bien pour moi.Redirection après l'expiration d'une session pour un appel ajax/json
Mon problème est d'avoir une redirection de connexion lorsque l'utilisateur n'est pas connecté ou lorsque la session a expiré. Je travaille avec CakePHP, donc j'utiliser leur composant Auth pour vérifier si l'utilisateur connecté
if(isset($this->Auth->User('id')))
{
//do reqd
}
else
{
$this->Session->setFlash(__('Session Expired.', true));
$this->redirect(array('controller'=>'users','action' => 'login'),null,true);
}
Et lorsque la session est expirée, la page de connexion est réellement affichée en html dans la réponse JSON, plutôt que la la page entière est redirigée. Je sais qu'il s'agit d'une réponse JSON car je peux voir la page de connexion affichée dans la partie HTML de l'application console de Firebug. Je ne suis pas sûr s'il doit y avoir un autre type de redirection.
Bonjour Robin, pourriez-vous expliquer ce que cet en-tête est ?? ou quel est son nom? – macha
Voici la fonction que j'utilise: 'function isAjaxRequest() {return (isset ($ _ SERVER ['HTTP_X_REQUESTED_WITH']) && ($ _SERVER ['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest')); } ' – Robin
Merci beaucoup! – macha