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

JavaScript Discussion :

[AJAX] passage de variable


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 8
    Points : 4
    Points
    4
    Par défaut [AJAX] passage de variable
    Bonjour,

    Je débute avec Ajax et donc je commence par des petits tests simples.
    J'ai un problème dans la récupération des parametres que je passe.
    J'ai un fichier ajax.js dans laquelle j'ai les 2 fonctions suivantes :
    -> la fonction get_Xhr()
    -> une petite fonction :
    function getId(zone)
    {
    // Nous créons un objet XMLHttpRequest
    get_Xhr();

    // C'est la que c'est un poil bizarre, nous définissons ce que fera AJAX avant même de lui dire quoi transmettre.
    xhr.onreadystatechange = function()
    {
    //Si la requete est terminée est qu'elle ne remonte pas d'erreur ( voir *1* ci dessous )
    if(xhr.readyState == 4 && xhr.status == 200)
    {
    // Ici on place l'action à effectuer
    // Que fera AJAX si tout se passe bien, il va inserer dans le div "iris" le resultat de la page appellée
    document.getElementById('divTest').value = xhr.responseText;
    }
    }

    // Mais c'est ici que l'on indique les valeurs à transmettre
    // On ouvre la page "lapage.php" en mode asynchrone ( true )
    xhr.open("POST", '../testRecupAjax.php', true);
    // Obligatoire si l'on passe en POST
    xhr.setRequestHeader('Content-Type','x-www-form-urlencoded');

    //Envoie de la requete
    xhr.send("zone="+zone);

    }

    le problème dans mon fichier 'testRecupAjax.php' est que je n'arrive pas à récupérer la variable $_POST['zone'], j'ai l'erreur "undefined index"
    alors que si je renvoie un echo "toto" ça marche !

    Quelqu'un pourrait-il m'aider ?
    Juste une précision, cette fonction est appelée depuis un document SVG

    Merci

  2. #2
    Membre habitué Avatar de dream_of_australia
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    167
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2007
    Messages : 167
    Points : 136
    Points
    136
    Par défaut
    Peux-tu nous montrer le code qui appelle ta fonction getId(zone) ?

  3. #3
    Candidat au Club
    Inscrit en
    Janvier 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    dans mon fichier svg, je fais appel à la fonction qui se trouve dans ajax.js :

    function mouseclick(id){
    parent.getId(id);
    }

  4. #4
    Candidat au Club
    Inscrit en
    Janvier 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    j'ai essayé avec la méthode GET et la ça marche mais je ne comprends toujours pas pourquoi le POST ne marche pas ??

  5. #5
    Membre habitué Avatar de dream_of_australia
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    167
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2007
    Messages : 167
    Points : 136
    Points
    136
    Par défaut
    Moi j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    C'est peut-être à cause du "application/" qui manque chez toi. Je ne vois pas ce que ça pourrait être d'autre si ta fonction marche avec un envoi de type GET et pas en POST. Je ne peux pas t'en dire plus, je ne suis pas une experte non plus.

  6. #6
    Candidat au Club
    Inscrit en
    Janvier 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    j'ai essayé de rajouter le "application" mais ça ne change rien.
    Peut on passer un objet PHP en parametre ?

Discussions similaires

  1. Réponses: 4
    Dernier message: 10/12/2010, 11h58
  2. Réponses: 4
    Dernier message: 16/09/2009, 14h23
  3. [Prototype] Passage de variable sur fonction new Ajax.Request
    Par Overstone dans le forum Bibliothèques & Frameworks
    Réponses: 3
    Dernier message: 31/08/2007, 11h36
  4. [AJAX] Passage de variable en ajax
    Par carlatocer dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/02/2007, 14h46
  5. [AJAX] Passage d'une variable très longue avec AJAX
    Par Figaro83 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 18/09/2006, 16h53

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