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 :

xhr et php méthode POST


Sujet :

AJAX

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Par défaut xhr et php méthode POST
    bonjour à tous,

    J'ai besoin de pouvoir rajouter des données dans ma base de données. J'ai choisi d'utiliser Javascript pour une question de dynamisme.

    Mon script fonctionne, à l'exception d'un petit problème, l'ajout de données dans ma base s'effectue, mais il ajoute un champ vide au lieu des données saisie dans mon "Prompt".

    Je débute en javascript et si quelqu'un peut me donner un petit coup de main, ce serait sympa.

    Voici mon code :

    mon code http :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type='button' value='+' onclick='addVal()' />

    mon script JS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    function getXMLHttpRequest() {
        var xhr = null;
        if (window.XMLHttpRequest || window.ActiveXObject) {
            if (window.ActiveXObject) {
                try {
                    xhr = new ActiveXObject("Msxml2.XMLHTTP");
                } catch(e) {
                    xhr = new ActiveXObject("Microsoft.XMLHTTP");
                }
            } else {
                xhr = new XMLHttpRequest(); 
            }
        } else {
            alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
            return null;
        }
        return xhr;
    }
     
    function addVal() {
    	var xhr = new XMLHttpRequest();
    	var donnees = (prompt("Nouvelles donnees : "));
    	xhr.open("POST", "addDonnees.php", true);
    	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    	xhr.send(donnees);
    }
    mon fichier addDonnees.php :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $newDonnees= "";
    include ("connexion_db.php");
    $req = $bdd->prepare("INSERT INTO myBdd.myTable(champ1) VALUES(:champ1)");
    $req->bindParam('champ1', $newDonnees);
    $newDonnees = htmlspecialchars($_POST['donnees']);
    $req->execute();
    $req->closecursor();
    ?>

    merci de votre aide.

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    Bonjour,
    les données envoyées ne sont pas référencées, comment veux tu les identifier coté serveur ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr.send('donnees=' +donnees);
    et coté serveur récupération avec

  3. #3
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    Lorsque tu poste un message utilise le bouton # de l'éditeur pour placer ton code



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var xhr = new XMLHttpRequest();
    	var donnees = (prompt("Nouvelles donnees : "));
    	var data = "donnees="+donees;
    	xhr.open("POST", "addDonnees.php", true);
    	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    	xhr.send(encodeURI(data));
    A+JYT

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Par défaut Résolu
    Merci pour votre aide et pour vos conseils.

    les données envoyées ne sont pas référencées, comment veux tu les identifier coté serveur ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr.send('donnees=' +donnees);
    J'avais essayé, mais j'ai du faire une autre erreur de syntaxe et je devenais fou.

    Maintenant, j'ai compris et ça fonctionne.

    un grand merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/09/2015, 17h25
  2. [WD17] Données pour script PHP méthode POST
    Par Afeciouna dans le forum WinDev
    Réponses: 1
    Dernier message: 26/06/2012, 08h34
  3. [MySQL] envoi d'un message par la méthode poste en php
    Par danièle100 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 31/03/2010, 23h20
  4. Php et la méthode Post
    Par Cyril012 dans le forum Langage
    Réponses: 4
    Dernier message: 05/05/2007, 16h41
  5. Réponses: 12
    Dernier message: 22/01/2006, 18h01

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