Passer une variable en Javascript
Fermé
TRUNCKS
Messages postés
1017
Date d'inscription
vendredi 10 août 2007
Statut
Membre
Dernière intervention
8 novembre 2024
-
11 mai 2012 à 09:36
TRUNCKS Messages postés 1017 Date d'inscription vendredi 10 août 2007 Statut Membre Dernière intervention 8 novembre 2024 - 14 mai 2012 à 16:10
TRUNCKS Messages postés 1017 Date d'inscription vendredi 10 août 2007 Statut Membre Dernière intervention 8 novembre 2024 - 14 mai 2012 à 16:10
Bonjour à vous,
J'aimerai faire passer une variable php si jamais un onclick Javascript est validé.
Par exemple, quand je clique sur mon lien qui déclenche le onclick, ma variable php passe à "ok".
Car j'ai besoin de cette variable test pour lancer une autre partie du script si jamais elle est ok.
J'aimerai savoir si c'est possible.
Merci à vous
J'aimerai faire passer une variable php si jamais un onclick Javascript est validé.
Par exemple, quand je clique sur mon lien qui déclenche le onclick, ma variable php passe à "ok".
Car j'ai besoin de cette variable test pour lancer une autre partie du script si jamais elle est ok.
J'aimerai savoir si c'est possible.
Merci à vous
A voir également:
- Passer une variable en Javascript
- Passer en azerty - Guide
- Telecharger javascript - Télécharger - Langages
- Passer a windows 10 - Accueil - Mise à jour
- Passer un texte en majuscule - Guide
- Passer à la ligne dans une cellule excel - Guide
9 réponses
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
11 mai 2012 à 16:41
11 mai 2012 à 16:41
ou une autre solution:
tu mets dans un form, un champ caché
sur le onclick tu lances une fonction javascript qui contient:
lorsque le formulaire sera posté vers le serveur pour appeler le script php tu auras ainsi la valeur récupérable dans $_POST['ma_variable']
tu mets dans un form, un champ caché
<input type="hidden" name="ma_variable" id="ma_variable" value="" />
sur le onclick tu lances une fonction javascript qui contient:
document.getElementById('ma_variable').value="ok"
lorsque le formulaire sera posté vers le serveur pour appeler le script php tu auras ainsi la valeur récupérable dans $_POST['ma_variable']
TRUNCKS
Messages postés
1017
Date d'inscription
vendredi 10 août 2007
Statut
Membre
Dernière intervention
8 novembre 2024
7
14 mai 2012 à 16:10
14 mai 2012 à 16:10
Merci pour vos réponses :)
Alors en fait j'ai ce bout de javascript qui gère l'affichage d'un popup:
Et mon php qui l'affiche, et qui est fait, que j'aimerai modifier pour pouvoir par exemple, ne pas pouvoir ouvrir un autre popup sans d'abord fermé celui en cours.
Alors en fait j'ai ce bout de javascript qui gère l'affichage d'un popup:
<!-- include jQuery library --> <script type="text/javascript" src="js/jquery.js"></script> <!-- include Cycle plugin --> <script type="text/javascript" src="js/jquery.cycle.all.latest.js"></script> <script type="text/javascript"> $(document).ready(function() { $('.slideshow').cycle({ fx: 'fade' // choose your transition type, ex: fade, scrollUp, shuffle, etc... }); }); </script> <script type="text/javascript"> var ns4=document.layers var ie4=document.all var ns6=document.getElementById&&!document.all //drag drop function for NS 4//// ///////////////////////////////// var dragswitch=0 var nsx var nsy var nstemp function drag_dropns(name){ if (!ns4) return temp=eval(name) temp.captureEvents(Event.MOUSEDOWN | Event.MOUSEUP) temp.onmousedown=gons temp.onmousemove=dragns temp.onmouseup=stopns } function gons(e){ temp.captureEvents(Event.MOUSEMOVE) nsx=e.x nsy=e.y } function dragns(e){ if (dragswitch==1){ temp.moveBy(e.x-nsx,e.y-nsy) return false } } function stopns(){ temp.releaseEvents(Event.MOUSEMOVE) } //drag drop function for ie4+ and NS6//// ///////////////////////////////// function drag_drop(e){ if (ie4&&dragapproved){ crossobj.style.left=tempx+event.clientX-offsetx crossobj.style.top=tempy+event.clientY-offsety return false } else if (ns6&&dragapproved){ crossobj.style.left=tempx+e.clientX-offsetx+"px" crossobj.style.top=tempy+e.clientY-offsety+"px" return false } } function initializedrag(e){ crossobj=ns6? document.getElementById("showimage") : document.all.showimage var firedobj=ns6? e.target : event.srcElement var topelement=ns6? "html" : document.compatMode && document.compatMode!="BackCompat"? "documentElement" : "body" while (firedobj.tagName!=topelement.toUpperCase() && firedobj.id!="dragbar"){ firedobj=ns6? firedobj.parentNode : firedobj.parentElement } if (firedobj.id=="dragbar"){ offsetx=ie4? event.clientX : e.clientX offsety=ie4? event.clientY : e.clientY tempx=parseInt(crossobj.style.left) tempy=parseInt(crossobj.style.top) dragapproved=true document.onmousemove=drag_drop } } document.onmouseup=new Function("dragapproved=false") ////drag drop functions end here////// function hidebox(){ crossobj=ns6? document.getElementById("showimage") : document.all.showimage if (ie4||ns6) crossobj.style.visibility="hidden" else if (ns4) document.showimage.visibility="hide" } </script>
Et mon php qui l'affiche, et qui est fait, que j'aimerai modifier pour pouvoir par exemple, ne pas pouvoir ouvrir un autre popup sans d'abord fermé celui en cours.
<?php while ($result_news = mysql_fetch_array($retour_news)){ $i = $result_news['ID_news']; ?> <span style="margin:10px;"> <a href="javascript:void(0)" style="text-decoration:none; color:black;" onClick="javascript: document.getElementById('showimage<?php echo $i; ?>').style.display='block';"><span style="font-size:16px;"><strong><?php echo html_entity_decode($result_news['titre']);?></strong></span> - <span style="font-size:12px;"><?php echo $result_news['date_fr'];?></span></a> <hr /> </span> <div id="showimage<?php echo $i; ?>" style="position:absolute; width: 12em; left:45%; margin-left: -220px; height: 8em; top: 50%; display:none; z-index:10;"> <table border="0" width="600" bgcolor="#D04502" cellspacing="0" cellpadding="2"> <tr> <td width="100%"><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td id="dragbar" style="cursor:hand; cursor:pointer" height="40" width="100%" onMousedown="initializedrag(event)"><ilayer width="100%" onSelectStart="return false"><layer width="100%" onMouseover="dragswitch=1;if (ns4) drag_dropns(showimage)" onMouseout="dragswitch=0"><font face="Verdana" color="#FFFFFF"><strong><small><span style="margin-left:10px; margin-right:10px;"><?php echo html_entity_decode($result_news['titre']);?></span></small></strong></font></layer></ilayer></td> <td style="cursor:hand"><a href="javascript:void(0)" onClick="javascript: document.getElementById('showimage<?php echo $i; ?>').style.display='none';"><img src="images/close.gif" width="16px" height="14px" border=0></a></td> </tr> <tr> <td stwidth="100%" height="200" bgcolor="#FFFFFF" style="padding:4px" colspan="2"> <!-- PUT YOUR CONTENT BETWEEN HERE --> <div style="margin-left:10px; margin-right:10px; text-align:justify;"> <span style="font-size:16px;"><strong><?php echo html_entity_decode($result_news['titre']);?></strong></span> - <span style="font-size:12px;"><?php echo $result_news['date_fr'];?></span></a> <br /><br /> <?php echo html_entity_decode($result_news['texte']);?> <!-- END YOUR CONTENT HERE --> </div> </td> </tr> </table> </td> </tr> </table> </div> <?php } ?> </div>
dariumis
Messages postés
571
Date d'inscription
mardi 16 mars 2010
Statut
Membre
Dernière intervention
18 avril 2018
63
11 mai 2012 à 10:00
11 mai 2012 à 10:00
Salut, on en avait parlé par ici:
https://forums.commentcamarche.net/forum/affich-24966506-variable-php-et-javascript#p25025548
https://forums.commentcamarche.net/forum/affich-24966506-variable-php-et-javascript#p25025548
TRUNCKS
Messages postés
1017
Date d'inscription
vendredi 10 août 2007
Statut
Membre
Dernière intervention
8 novembre 2024
7
11 mai 2012 à 10:46
11 mai 2012 à 10:46
--Merci pour la réponse !
Donc du coup ce n'est pas possible sans faire passer une variable en url ?
Donc du coup ce n'est pas possible sans faire passer une variable en url ?
Fallentree
Messages postés
2309
Date d'inscription
mercredi 25 février 2009
Statut
Membre
Dernière intervention
22 juillet 2019
209
11 mai 2012 à 10:51
11 mai 2012 à 10:51
onclick="javascript: alert('<?php $tmp="une variable"; echo $tmp; ?>');"
dariumis
Messages postés
571
Date d'inscription
mardi 16 mars 2010
Statut
Membre
Dernière intervention
18 avril 2018
63
11 mai 2012 à 11:27
11 mai 2012 à 11:27
non, c'est pas possible a moins de faire de l'ajax, le javascript étant executer coté client et le php coté serveur tu es obligé de rafraichir ta page pour effectuer un traitement php.
dariumis
Messages postés
571
Date d'inscription
mardi 16 mars 2010
Statut
Membre
Dernière intervention
18 avril 2018
63
11 mai 2012 à 11:28
11 mai 2012 à 11:28
Ou je me suis planté, tu veux faire php -> vers javascript, ou javascript -> vers php??
Fallentree
Messages postés
2309
Date d'inscription
mercredi 25 février 2009
Statut
Membre
Dernière intervention
22 juillet 2019
209
11 mai 2012 à 12:06
11 mai 2012 à 12:06
Mille escuses...
J'avais pas bien lu...
Mais tu peux peut etre t en sortir avec une Iframe ...
Tu codes pour que l iframe change de Src avec les parametres qui te permettent de tes variables ..
J'avais pas bien lu...
Mais tu peux peut etre t en sortir avec une Iframe ...
Tu codes pour que l iframe change de Src avec les parametres qui te permettent de tes variables ..
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
TRUNCKS
Messages postés
1017
Date d'inscription
vendredi 10 août 2007
Statut
Membre
Dernière intervention
8 novembre 2024
7
11 mai 2012 à 14:48
11 mai 2012 à 14:48
Merci pour ces réponses,
En fait j'aimerai quand en cas de onclick, une variable php prenne "Ok"
Je ne connais pas cette solution iframe, il est possible de détailler ou de me rediriger vers un tuto ?
Dans tous les cas, merci pour votre patience
En fait j'aimerai quand en cas de onclick, une variable php prenne "Ok"
Je ne connais pas cette solution iframe, il est possible de détailler ou de me rediriger vers un tuto ?
Dans tous les cas, merci pour votre patience
Fallentree
Messages postés
2309
Date d'inscription
mercredi 25 février 2009
Statut
Membre
Dernière intervention
22 juillet 2019
209
11 mai 2012 à 16:57
11 mai 2012 à 16:57
c est pas un gestionare de formulaire que tu cherches a faire ...
une fois validé tu as fichier.php?Ok
une fois validé tu as fichier.php?Ok
TRUNCKS
Messages postés
1017
Date d'inscription
vendredi 10 août 2007
Statut
Membre
Dernière intervention
8 novembre 2024
7
11 mai 2012 à 20:30
11 mai 2012 à 20:30
Non en fait j'aimerai tout simplement, une fois cliqué sur "onclick" que ma variable se mette en ok.
Et me resservir de ce ok dans une autre partie du script.
Et me resservir de ce ok dans une autre partie du script.
Fallentree
Messages postés
2309
Date d'inscription
mercredi 25 février 2009
Statut
Membre
Dernière intervention
22 juillet 2019
209
Modifié par Fallentree le 11/05/2012 à 22:04
Modifié par Fallentree le 11/05/2012 à 22:04
<?php
$Ok='false';
if (sizeof($_GET)>0){
if (isset($_GET['Ok']))
$Ok='true';
if ($_GET['Ok']=='false') $Ok='false';
echo "ma valeur est ".$Ok;
}
?>
<body bgcolor="#FFFFFF">
<script type="text/javascript">
var temoin =<?php if ($Ok==false) echo 'false'; else echo 'true';?>;
window.onload=function ( ) {
document.getElementsByName('Ok')[0].value=temoin;
document.getElementsByName('valid form')[0].value='temoin='+temoin;};
function affiche() {
if (temoin==true) {
temoin=false;
document.getElementById('iframe').style.visibility='hidden';
}
else {
temoin=true;
document.getElementById('iframe').style.visibility='visible';
document.getElementById('iframe').src='test iframe.php?Ok'; }
document.getElementsByName('Ok')[0].value=temoin;
document.getElementsByName('valid form')[0].value='temoin='+temoin;
}
</script>
<form name="test" method="get">
<input type="hidden" name="Ok" />
<input type="submit" name="valid form" />
</form>
<input type="submit" onclick="affiche();" name="charge_value" />
<hr>
<iframe style="visibility:hidden;" width="600" height="400" id="iframe"></iframe>
</body>
</html>
$Ok='false';
if (sizeof($_GET)>0){
if (isset($_GET['Ok']))
$Ok='true';
if ($_GET['Ok']=='false') $Ok='false';
echo "ma valeur est ".$Ok;
}
?>
<body bgcolor="#FFFFFF">
<script type="text/javascript">
var temoin =<?php if ($Ok==false) echo 'false'; else echo 'true';?>;
window.onload=function ( ) {
document.getElementsByName('Ok')[0].value=temoin;
document.getElementsByName('valid form')[0].value='temoin='+temoin;};
function affiche() {
if (temoin==true) {
temoin=false;
document.getElementById('iframe').style.visibility='hidden';
}
else {
temoin=true;
document.getElementById('iframe').style.visibility='visible';
document.getElementById('iframe').src='test iframe.php?Ok'; }
document.getElementsByName('Ok')[0].value=temoin;
document.getElementsByName('valid form')[0].value='temoin='+temoin;
}
</script>
<form name="test" method="get">
<input type="hidden" name="Ok" />
<input type="submit" name="valid form" />
</form>
<input type="submit" onclick="affiche();" name="charge_value" />
<hr>
<iframe style="visibility:hidden;" width="600" height="400" id="iframe"></iframe>
</body>
</html>
Fallentree
Messages postés
2309
Date d'inscription
mercredi 25 février 2009
Statut
Membre
Dernière intervention
22 juillet 2019
209
11 mai 2012 à 22:04
11 mai 2012 à 22:04
si ca peux t 'aider ...
TRUNCKS
Messages postés
1017
Date d'inscription
vendredi 10 août 2007
Statut
Membre
Dernière intervention
8 novembre 2024
7
13 mai 2012 à 16:32
13 mai 2012 à 16:32
Merci d'avoir pris la peine de m'aider, mais mon niveau en Javascript est vraiment très nul.
J'ai fait un copier coller mais je n'ai pas vraiment compris l'idée de l'exemple.
Pardonnez moi :(
Je clique et ça me remet les mêmes boutons.
J'ai fait un copier coller mais je n'ai pas vraiment compris l'idée de l'exemple.
Pardonnez moi :(
Je clique et ça me remet les mêmes boutons.
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
Modifié par Alain_42 le 13/05/2012 à 16:55
Modifié par Alain_42 le 13/05/2012 à 16:55
un exemple plus concret:
<html> <script type="text/javascript"> function passer_valeur(valeur){ document.getElementById('ok').value=valeur; } </script> <body> <?php //init variables par defaut $ok=false; if(issset($_POST['envoyer')){ //le formulaire a été posté //recup valeur de ok $ok=$_POST['ok']; } if($ok==false){ ?> <form name="form1" method="post" action=""> <input type="hidden" name="ok" id="ok" value="" /> Avez vous bu un café ce matin ? <br /> <input type="button" name="bouton1" value="Oui" onclick="passer_valeur('oui');" /> <input type="button" name="bouton2" value="Non" onclick="passer_valeur('non');" /> <br /><br /> <input type="submit" name="envoyer" value="Envoyer" /> </form> <?php }else{ if($ok=='oui') echo 'Vous avez bu votre café !'; if($ok=='non') echo 'Vous n\'avez pas bu votre café !'; } ?> </body> </html>
Fallentree
Messages postés
2309
Date d'inscription
mercredi 25 février 2009
Statut
Membre
Dernière intervention
22 juillet 2019
209
Modifié par Fallentree le 14/05/2012 à 09:58
Modifié par Fallentree le 14/05/2012 à 09:58
on peut rajouter un parent javascript pour sa variable php
Mais je ne comprends pas pourquoi il veut qu elle change...
Si elle n'est pas lier a la session, elle ne vit que le temps de l'appel ...
Bref $ok est peut etre une source issue d'un calcul ...
Mais je ne comprends pas pourquoi il veut qu elle change...
Si elle n'est pas lier a la session, elle ne vit que le temps de l'appel ...
Bref $ok est peut etre une source issue d'un calcul ...
Fallentree
Messages postés
2309
Date d'inscription
mercredi 25 février 2009
Statut
Membre
Dernière intervention
22 juillet 2019
209
14 mai 2012 à 10:00
14 mai 2012 à 10:00
Fais nous un rebus de code pour voirTRUNCKS ...