Passage variable dans page php via javascript
Résolu/Fermé
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
-
Modifié par crapoulou le 5/07/2012 à 22:17
grabenouite01 Messages postés 19 Date d'inscription mardi 17 mai 2011 Statut Membre Dernière intervention 20 mai 2011 - 20 mai 2011 à 14:16
grabenouite01 Messages postés 19 Date d'inscription mardi 17 mai 2011 Statut Membre Dernière intervention 20 mai 2011 - 20 mai 2011 à 14:16
A voir également:
- Passage variable dans page php via javascript
- Comment supprimer une page dans word - Guide
- Passage qwerty azerty - Guide
- Telecharger javascript - Télécharger - Langages
- Mettre google en page d'accueil - Guide
- Word numéro de page 1/2 - Guide
8 réponses
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
17 mai 2011 à 16:57
17 mai 2011 à 16:57
Je précise tout de même l'erreur qui s'affiche sur ma page -->
Notice: Undefined index: abc in C:\wamp\www\ODT\carteavion.php on line 4
Notice: Undefined index: abc in C:\wamp\www\ODT\carteavion.php on line 4
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
18 mai 2011 à 11:01
18 mai 2011 à 11:01
up !
Melooo
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
84
18 mai 2011 à 11:13
18 mai 2011 à 11:13
Salut,
rah que ton code est long alors qu'en Jquery tu peux utiliser ajax en 5 lignes !
je te conseille donc de voir de ce côté...
https://api.jquery.com/jQuery.ajax/
rah que ton code est long alors qu'en Jquery tu peux utiliser ajax en 5 lignes !
je te conseille donc de voir de ce côté...
https://api.jquery.com/jQuery.ajax/
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
Modifié par grabenouite01 le 18/05/2011 à 14:31
Modifié par grabenouite01 le 18/05/2011 à 14:31
J'ai utilisé le JQuerry avant d'en arriver là. Seulement j'ai eu qq soucis avec les variables c'est pour ça que je me suis contenté du javascript et du php. Mais je vais remettre un peu le nez dedans ;)
Je suis un peu pris par le temps c'est pour ça en fait
Je suis un peu pris par le temps c'est pour ça en fait
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
18 mai 2011 à 14:30
18 mai 2011 à 14:30
Après une séries de tests (encore et toujours ^^) j'ai trouvé d'où venait le vrai problème. Un truc tout con comme bien souvent.
IE 8 n'interprète pas document.getElementById(nom_id).value
J'ai donc testé avec document.getElementsByName(name).value, et là, l'alert me retourne un undefined au lieu d'une boîte vide avec le document.getElementById(nom_id).value.
Je recherche donc actuellement d'autres techniques. Par exemple :
document.forms['formulaire'].elements['id'].value, celle-ci ne marche pas non plus avec IE mais fonctionne avec FF et Chrome...
Donc toujours bloqué mais je ne désespère pas ^^
IE 8 n'interprète pas document.getElementById(nom_id).value
J'ai donc testé avec document.getElementsByName(name).value, et là, l'alert me retourne un undefined au lieu d'une boîte vide avec le document.getElementById(nom_id).value.
Je recherche donc actuellement d'autres techniques. Par exemple :
document.forms['formulaire'].elements['id'].value, celle-ci ne marche pas non plus avec IE mais fonctionne avec FF et Chrome...
Donc toujours bloqué mais je ne désespère pas ^^
Melooo
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
84
18 mai 2011 à 14:50
18 mai 2011 à 14:50
IE nous feras c**** jusqu'au bout ! lol
window.document.forms['formulaire'].id.value
window.document.forms['formulaire'].id.value
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
18 mai 2011 à 14:58
18 mai 2011 à 14:58
J'ai testé "window.document.forms['formulaire'].id.value", forcément il affiche undefined puisqu'il n'ya pas de champ 'id' ^^ et j'ai testé "window.document.forms['formulaire'].nbcartesavion.value"
avec nbcartesavion le vrai id du div mais là il ne m'affiche rien même pas undefined.
Mais j'avoue, ça doit leur coûter trop cher de se mettre aux normes du w3c...
avec nbcartesavion le vrai id du div mais là il ne m'affiche rien même pas undefined.
Mais j'avoue, ça doit leur coûter trop cher de se mettre aux normes du w3c...
Melooo
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
84
18 mai 2011 à 15:02
18 mai 2011 à 15:02
essayes :
good ou pas good ?
pourtant ils doivent être blindés étant donné qu'ils viennent de racheter Skype pour un bon paquet LOL
var mavaleur = document.getElementById('.nbcartesavion').value; alert(mavaleur)
good ou pas good ?
pourtant ils doivent être blindés étant donné qu'ils viennent de racheter Skype pour un bon paquet LOL
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
Modifié par grabenouite01 le 18/05/2011 à 15:11
Modifié par grabenouite01 le 18/05/2011 à 15:11
Pas good :( et déconne aussi sur chrome -->
Uncaught TypeError: Cannot read property 'value' of null
Etant donné que lorsqu'il ne m'affiche pas undefined, il m'affiche une boîte d'alerte vide, est ce que ça pourrait venir d'un encodage des caractères ? sachant que la valeur que je récupère et un chiffre entre 0 et 10
Uncaught TypeError: Cannot read property 'value' of null
Etant donné que lorsqu'il ne m'affiche pas undefined, il m'affiche une boîte d'alerte vide, est ce que ça pourrait venir d'un encodage des caractères ? sachant que la valeur que je récupère et un chiffre entre 0 et 10
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
18 mai 2011 à 15:16
18 mai 2011 à 15:16
J'ai testé avec des chaines de caractères (bonjour et aurevoir), pareil m'affiche une boite alert vide
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
Modifié par grabenouite01 le 18/05/2011 à 17:20
Modifié par grabenouite01 le 18/05/2011 à 17:20
J'ai suivi ton conseil en pensant que ça marcherait mais toujours pas... enfin sur IE parceque sur FF et Chrome ça marche
le javascript
et le html
le javascript
function carteavion(){ var data = document.formulaire.plane.value; var requete='./form_airfrance.php?cartouche='+data; var htr=httpRequest(); alert(data); htr.open("GET", requete, true); htr.send(null); htr.onreadystatechange=function(){ if(4==htr.readyState && 200==htr.status) document.getElementById("arobase").innerHTML=htr.responseText; } }
et le html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>Profils utilisateurs </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" media="screen" type="text/css" href="styleprofil.css" title="style" /> <script type="text/javascript" src="./javascript/httprequest.js"></script> <script language="javascript" type="text/javascript" src="./javascript/divers2.js"></script> </head> <body> <form method="POST" action="profiluser.php" name="formulaire" onSubmit="return check();"> <div id="client"> <table CELLPADDING='0.5' COLS='1'> <caption>______Avion______</caption> <tr > <th> Carte de fidelité :</th> <td> Nombre de cartes : <select name="plane" id="plane" value="0" onchange=carteavion();> <?php for($j=0;$j<=10;$j++){ echo'<option>'.$j.'</option>'; } ?> </select> <div id="arobase"> </div> </td> </tr> </table> </div> </form> </body> </html>
Melooo
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
84
18 mai 2011 à 17:28
18 mai 2011 à 17:28
Bon j'ai viré le getElementbyId et à la place j'ai utilisé du Jquery
et ca marche nickel sous internet explorer !!
je te donne le code :
N'hésites pas si tu comprends pas ;)
et ca marche nickel sous internet explorer !!
je te donne le code :
<script> $(document).ready(function() { alert($("#plane").val()); $("#plane").change(function () { alert($("#plane").val()); }); }); </script>
N'hésites pas si tu comprends pas ;)
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
18 mai 2011 à 21:02
18 mai 2011 à 21:02
Il faut que je récup les librairies jquerry. je ferais ça demain et je te redirais mais j'ai pas eu trop l'occasion de coder en JQuerry ^^
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
19 mai 2011 à 11:21
19 mai 2011 à 11:21
Ça a marché maintenant faut que j'adapte. Mais si j'ai bien compris le principe, ce script récupère la valeur de value, dans l'élément qui a pour id plane et dès que la valeur change il affiche une boite de dialogue avec la nouvelle valeur.
C'est bien ça ?
C'est bien ça ?
Melooo
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
84
19 mai 2011 à 11:22
19 mai 2011 à 11:22
Tout à fait !
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
19 mai 2011 à 11:33
19 mai 2011 à 11:33
Donc maintenant ce que je voudrais faire, c'est afficher le contenu d'une page php lorsque la valeur change dans une boite de dialogue (que je met dans le div arobase)
Ca donnerait qqchose comme ça :
Ca donnerait qqchose comme ça :
var requete='./form_airfrance.php'; $(document).ready(function() { alert($("#plane").val()); $("#plane").change(function () { $("#arobase").load(requete, function() { $(this).dialog({ title:"ERREUR"})}); $("#arobase").show(); return(false); }); });
Melooo
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
84
19 mai 2011 à 11:34
19 mai 2011 à 11:34
tu veux rediriger l'utilisateur lorsqu'il as choisi un chiffre dans la liste déroulante ?
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
19 mai 2011 à 11:40
19 mai 2011 à 11:40
C'est l'idée.
Au final je veux afficher plusieurs choses une fois qu'il a sélectionner un chiffre ds la liste.
Donc là il ne me reste qu'à récupérer la valeur et la renvoyer sous forme de get ou post avec le jquerry.
Au final je veux afficher plusieurs choses une fois qu'il a sélectionner un chiffre ds la liste.
Donc là il ne me reste qu'à récupérer la valeur et la renvoyer sous forme de get ou post avec le jquerry.
Melooo
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
84
Modifié par Melooo le 19/05/2011 à 11:47
Modifié par Melooo le 19/05/2011 à 11:47
Mmmm d'accord,
bon pour cela avant tu avais utiliser du ajax pure, essayes maintenant d u'itliser de l'ajax via jquery en faisant :
Un truc du genre ;)
bon pour cela avant tu avais utiliser du ajax pure, essayes maintenant d u'itliser de l'ajax via jquery en faisant :
$.ajax({ type: "POST", url: "lapagequetuveuxappeller.php", data: "name"+$("#plane").val()", success: function(msg){ alert( "Data Saved: " + msg ); } });
Un truc du genre ;)
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
19 mai 2011 à 12:16
19 mai 2011 à 12:16
La partie
je capte pas trop. Le data il est passé où du coup?
Et sr la page php, je récupère comme ça
Mais je mets quoi comme valeur pour le post ? "name" de data ?
data: "name"+$("#plane").val()", success: function(msg){ alert( "Data Saved: " + msg );
je capte pas trop. Le data il est passé où du coup?
Et sr la page php, je récupère comme ça
$nb=$_POST[' '];
Mais je mets quoi comme valeur pour le post ? "name" de data ?
Melooo
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
84
Modifié par Melooo le 19/05/2011 à 13:28
Modifié par Melooo le 19/05/2011 à 13:28
Le data en faite, ca correspond au valeur que tu veux faire passer sur l'autre page ;)
et oui tu récupères la valeur de ta liste déroulante comme ceci :
et oui tu récupères la valeur de ta liste déroulante comme ceci :
$nb=$_POST['name'];
grabenouite01
Messages postés
19
Date d'inscription
mardi 17 mai 2011
Statut
Membre
Dernière intervention
20 mai 2011
20 mai 2011 à 14:16
20 mai 2011 à 14:16
Finalement j'ai résolu mon problème d'origine avec un truc un peu biscornu au premier abord mais qui marche sur tous les nav :
Donc je passe en paramètre de ma fonction js ce que l'utilisateur a sélectionné dans la liste déroulante avec ce this.options[this.selectedIndex].value.
Sinon je vais garder le jQuery pour une histoire de validation de formulaire.
Donc voilà un p'tit résolu quand même, ça fera pas de mal ;)
onchange="cma_fonction(this.options[this.selectedIndex].value); "
Donc je passe en paramètre de ma fonction js ce que l'utilisateur a sélectionné dans la liste déroulante avec ce this.options[this.selectedIndex].value.
Sinon je vais garder le jQuery pour une histoire de validation de formulaire.
Donc voilà un p'tit résolu quand même, ça fera pas de mal ;)