Ajax
oumaymakouraichi
Messages postés
6
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,Bon voilà mon je suis débutante dans la programmation web et le prof nous a demande de créer une base de donnes set de récupérer les donnes en utilisant AJAX j'ai essayer mais en vain vous pouvez m'aider s'il vous plait:
Code de AJAX1b.html
Code de AJAX1.php
EDIT : AJOUT DES BALISES DE CODE...
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
.
Code de AJAX1b.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" [http://www.w3.org/TR/html4/loose.dtd]"> <!-- AJAX1b.html --> <html dir="ltr" lang="fr"> <head> <title>lecture des data</title> <script type="text/javascript" src="jquery-1.8.3/jquery-1.8.3.js"></script> <script type="text/javascript"> var compteur2; // variable créer pour recevoir la valeur du compteur au retour du script PHP function passe_ajax(){ $.ajax({ type: "POST", // méthode utilisée url: "AJAX1.php", //URL du script PHP - serveur data: { // liste des paramètres au format JSON compteur : document.getElementById("compteur").value, test : 0 //ne sert à rien, sauf montrer comment passer 2 param }, success: function(msg){ eval(msg); // évaluation du code JS renvoyé par script PHP document.getElementById("compteur2").value = compteur2; }, error: function(jqXHR, textStatus, errorThrown) { alert("error system : "+errorThrown); // erreur produite lors de la requete HTTP } }); } </script> </head> <body> <p align="center">Passage de valeur de compteur à compteur2 par process AJAX </p> <p align="center">Formation INSA promo 2013-2014</p> Compteur = <input value="5" id="compteur" type="text" size="3"> Compteur2 = <input value="" id="compteur2" type="text" size="3" readonly> <input value="Passe" name="button" type="button" onClick="passe_ajax();"> </body> </html>
Code de AJAX1.php
<?php /**** test d'appel de script PHP via une commande AJAX depuis AJAX1.html ***/ /** * La fonction redirectionErreur) renvoit une véritable erreur de requete HTTP */ function redirectionErreur() { header("HTTP/1.0 409 Erreur de paramètre"); // génère 1 erreur HTTP exit(); // quitte le script } /* test de la présence d'un parametre passé par POST et récupère la chaine compteur si elle existe */ if(isset($_POST['compteur']) ) $compteur = $_POST['compteur']; else redirectionErreur(); /* test si la chaine de caractère est représente un entier. Si oui on transmet sinon on renvoie le string 'false' au js*/ if (ctype_digit($compteur)) echo "compteur2=$compteur"; //envoie la ligne de code js else echo "compteur2='false';"; ?>
EDIT : AJOUT DES BALISES DE CODE...
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
.
2 réponses
Bonjour,
Ok.. mais qu'est ce que tu obtiens ?
Tu as un message d'erreur ?? lequel ?
Penses aussi à utiliser les outils de debogage fournis par ton navigateur ( perso j'utilise et recommande le plugin FIREBUG pour FireFox...)
Pour ta fonction javascript...
essayes ceci :
Et dans ton code PHP ... ne pas oublier d'encoder en JSON...
j'ai essayer mais en vain vous pouvez m'aider s'il vous plait:
Ok.. mais qu'est ce que tu obtiens ?
Tu as un message d'erreur ?? lequel ?
Penses aussi à utiliser les outils de debogage fournis par ton navigateur ( perso j'utilise et recommande le plugin FIREBUG pour FireFox...)
Pour ta fonction javascript...
essayes ceci :
function passe_ajax(){ var compteur = document.getElementById("compteur").value; var test = 0 ; //ne sert à rien, sauf montrer comment passer 2 param var compteur2=""; if(compteur){ $.ajax({ type: "POST", url:urlAjx, data: "compteur=" + compteur +"&test="+test , async: false, dataType: "json", success: function(reponse){ alert(reponse); compteur2 = reponse.compteur2; document.getElementById("compteur2").value = compteur2; }, error: function(jqXHR, textStatus, errorThrown) { // erreur produite lors de la requete HTTP alert("error : "+errorThrown); } }); }else{ alert(" La variable COMPTEUR est vide ! " + compteur ); } }
Et dans ton code PHP ... ne pas oublier d'encoder en JSON...
<?php //------------------------------------------------------------------------------------------// /**** test d'appel de script PHP via une commande AJAX depuis AJAX1.html ***/ //------------------------------------------------------------------------------------------// /** * La fonction redirectionErreur) renvoit une véritable erreur de requete HTTP */ function redirectionErreur() { header("HTTP/1.0 409 Erreur de paramètre"); // génère 1 erreur HTTP exit(); // quitte le script } $result = array(); $compteur = isset($_POST['compteur'])?$_POST['compteur']:NULL; if($compteur){ $compteur2 = ctype_digit($compteur); $result['compteur2'] = $compteur2; }else{ redirectionErreur(); } // On transforme le résultat en JSON echo json_encode($result); ?>