Ajax : Executer un code php via des boutons input


sff
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 336
Inscription: 2 Fév 2005

Ajax : Executer un code php via des boutons input

Message le Sam Jan 17, 2009 13:54

Bonjour, j'ai un petit soucis. J'aimerais faire fonctionner un code php après avoir cliquer sur un des 4 boutons, et tout ca avec ajax.

Actuellement j'ai ceci :

4 boutons + div d'affichage :


Code: Tout sélectionner
<form action="" method="post" name="post" onsubmit="">

<input onclick="ajax()" name="bouton1" value="" type="submit">

<input onclick="ajax()" name="bouton2" value="" type="submit">

<input onclick="ajax()" name="bouton3" value="" type="submit">

<input onclick="ajax()" name="bouton4" value="" type="submit">

</form>



<div id="bloc_affichage"></div>




La fonction php contenant le code php :

Code: Tout sélectionner
function submit_map() {

if (isset($_POST["bouton1"])) {

  echo 'alert("texte")';

}
   
if (isset($_POST["bouton2"])) {

   // UPDATE SQL ICI
   
   }
if (isset($_POST["bouton3"])) {

   // UPDATE SQL ICI

}
if (isset($_POST["bouton4"])) {

  echo 'alert("texte")';

}


}



code ajax qui ne fonctionne pas:


Code: Tout sélectionner
function ajax(){
   
   xhr=getXMLHTTP();
   
       xhr.open("POST", "?do=submit_map", true); 

   
   xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

var data = quoi mettre ici ?;

ou mettre ceci ? :      obj = document.getElementById("map2");

      xhr.send(data);

   
   xhr.onreadystatechange = function() {

if (httpRequest.status == 200) {
                alert(httpRequest.responseText);
            } else {
                alert('Un problème est survenu avec la requête.');
            }

}


   }


YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3834
Inscription: 14 Sep 2006

Message le Sam Jan 17, 2009 15:23

C'est cool tu vas avoir un gros truc de ce genre au final ^^

Code: Tout sélectionner
alert(alert('xxxx'));


sff
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 336
Inscription: 2 Fév 2005

suite

Message le Sam Jan 17, 2009 15:56

Comment ca ? Le code ajax que j'ai mi est pas bon.

Si on clique sur bouton1 je voudrais afficher une erreur js, si je clique sur bouton2 je voudrais uploader une requete.

Mais comment faire pour avoir un code ajax correct?


YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3834
Inscription: 14 Sep 2006

Message le Sam Jan 17, 2009 16:05

Et beh, t'as pas compris ce que tu as fais quoi ? :/

Il y a un gros problème au niveau de la reception des résultats. C'est plus un truc du genre:

Code: Tout sélectionner
    xhr.onreadystatechange  = function()
    {
         if(xhr.readyState  == 4 && xhr.status  == 200)
         {
             //reception des données dans la méthode responseText
         }
    };

ménovicien
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 29
Inscription: 12 Jan 2009

Message le Sam Jan 17, 2009 16:11



YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3834
Inscription: 14 Sep 2006

Message le Sam Jan 17, 2009 16:19

Oue vive le duplicate content.

Merci pour l'info ménovicien et si tu pouvais éviter de faire plusieurs posts sff ...


sff
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 336
Inscription: 2 Fév 2005

Message le Sam Jan 17, 2009 17:51

Yoyos justement pour réceptionner les données tu fais comment?

Et ou je met ceci : obj = document.getElementById("map2");

ZelkiN
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 498
Inscription: 27 Juil 2007

Message le Sam Jan 17, 2009 18:29

oui il y a en effet un souci au niveau de ton js, si tu ne comprend pas tout, il y a des scripts tout fait sur dhtmlgoodies.com

Met les a ta sauce et applique l'éxécution de ton ajax à tes boutons ;)


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité