IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

Requête AJAX vers WordPress OK sous Chrome et IE mais pas sous Firefox


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Novembre 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 8
    Par défaut Requête AJAX vers WordPress OK sous Chrome et IE mais pas sous Firefox
    J'ai mis en place différents appels AJAX vers mon site WordPress et tout fonctionne bien à l'exception d'une requête AJAX spécifique qui fonctionne bien sous Chrome et IE mais pas sous Firefox.

    Voici les détails pour reproduire l'anomalie.

    Se rendre sur : https://responsive.knowledgeplaces.com

    Se connecter avec l'identifiant et le mot de passe : aweb01

    C'est un site WordPress de test et c'est un compte abonné donc pas de problème.

    Une fois connecté, vous verrez une page avec différents boutons qui sont utilisés pour des tests.

    Par exemple, en cliquant sur le bouton “no lpId parameter”, un message d'erreur sera affiché.

    Tous ces boutons déclenchent des appels AJAX sur mon site WordPress, et sur le serveur, je renvoie une chaîne JSON qui permet d'afficher un message d'erreur si une validation n'a pas été satisfaite.

    Tous ces boutons fonctionnent bien et affiche bien un message d'erreur quel que soit le navigateur, y compris Firefox.

    L'appel AJAX sur lequel j'ai un problème concerne le bouton “deconnexion” affiché en haut à droite de la page.

    Quand vous cliquez sur ce bouton, vous êtes déconnecté de WordPress et vous revenez à la page d'accueil, ou la boîte de connexion s'affiche à nouveau.

    Ce bouton "deconnexion" fonctionne bien sous Chrome et IE, vous pouvez le vérifier.

    Mais il ne fonctionne pas sur Firefox. On revient bien à la page d'accueil mais on est pas déconnecté.

    Voici comment cela est mis en oeuvre.

    La page est chargée avec un fichier javascript qui contient le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $("a[href='/kps_logout']").on('click', function() {
        // check href symbolic URL
        jQuery.post(
        WP_AJAX_URL,
                {
                    'action': 'kps_logout',
                    'security': $("#kpcms-ajax-nonce").val()
                }
            );
        // redirect and deactivate default navigation
        window.location.href = $kps_Host + $kps_LoginPath;
        return false;
    });
    Concrètement, j'utilise un lien symbolique ‘/kps_logout’, et ce code JQuery associe un traitement au clic sur tout élément avec ce lien.

    Ce traitement utilise une requête AJAX pour déconnecter l'utilisateur puis redirige l'utilisateur vers la page d'accueil.

    Sur le serveur, voici le code qui est exécuté à réception de la requête AJAX, et qui est dans le fichier “functions.php” de mon child theme WordPress :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    add_action( 'wp_ajax_kps_logout', 'kps_logout' );
    add_action( 'wp_ajax_nopriv_kps_logout', 'kps_logout' );
    function kps_logout() {
        // security check
        check_ajax_referer( 'kpcms-ajax-nonce', 'security' );
        // logout user and die
        wp_logout();
        die ();
    }
    Sous Chrome et IE, quand j'active la trace réseau, je vois bien l'appel de la requête AJAX.

    Mais sous Firefox, je ne le vois pas.

    Du coup on revient bien à la page d'accueil mais on est pas déconnecté.

    J'ai vidé mon cache Firefox mais ça n'a rien changé.

    Donc si vous pouvez m'aider à résoudre ce problème, ce serait top.

  2. #2
    Membre très actif

    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    354
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 354
    Par défaut
    Sous firefox ce qui est bien, c'est firebug. Tu vas à l'onglet réseau > XHR, et tu auras les éléments de réponses.

    Sinon pense à vider le cache, ou te connecter en privé pour ne pas avoir à le faire constamment ou t'éviter de supprimer tes données de navigateur.

Discussions similaires

  1. target fonctionne sous firefox mais pas sous chrome
    Par tchize_ dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 15/06/2016, 19h59
  2. Code fonctionnant sous IE et Firefox mais pas sous Chrome
    Par Hanoni dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 16/03/2010, 16h43
  3. position d'un DIV flottant : OK sous IE7 et FF mais pas sous IE6
    Par arnaud_verlaine dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 13/12/2007, 14h34
  4. Lien fonctionnant sous opera et ff mais pas sous IE
    Par Halukard dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 15/09/2007, 20h46
  5. Réponses: 11
    Dernier message: 22/04/2007, 10h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo