Passer variable javascript en php
Mickael86480
Messages postés
698
Statut
Membre
-
Mickael86480 Messages postés 698 Statut Membre -
Mickael86480 Messages postés 698 Statut Membre -
Bonjour,
Voici ce que j'ai produit :
<SCRIPT language="Javascript">var relance = prompt("De combien voulez-vous relancer ?");</SCRIPT>
.
.
.
autre code php
.
.
.
?><SCRIPT language="Javascript">var relance =</SCRIPT><?php$relance;?>
<?php
$capital2=$capital-$relance;
Or il s'avère que $capital2 a la même valeur que $capital
Je pense que comme $relance n'est pas dans le même bloc php, il est égale a 0.
Comment puis-je faire? Sachant que si je ne fais pas <?php$relance;?>, il y a une erreur
merci
Voici ce que j'ai produit :
<SCRIPT language="Javascript">var relance = prompt("De combien voulez-vous relancer ?");</SCRIPT>
.
.
.
autre code php
.
.
.
?><SCRIPT language="Javascript">var relance =</SCRIPT><?php$relance;?>
<?php
$capital2=$capital-$relance;
Or il s'avère que $capital2 a la même valeur que $capital
Je pense que comme $relance n'est pas dans le même bloc php, il est égale a 0.
Comment puis-je faire? Sachant que si je ne fais pas <?php$relance;?>, il y a une erreur
merci
A voir également:
- Passer variable javascript en php
- Passer en azerty - Guide
- Passer a windows 10 - Accueil - Mise à jour
- Easy php - Télécharger - Divers Web & Internet
- Passer un texte en majuscule - Guide
- Expert php pinterest - Télécharger - Langages
4 réponses
d'où vient ta variable $relance en php ?
tes 2 morceaux de code Javascript sont-ils exécutés dans la même page ?
tes 2 morceaux de code Javascript sont-ils exécutés dans la même page ?
Ok j'ai supprimé la deuxième création de relance merci.
j'ai renommé $relance en $relancer, est-ce ça le problème?
<SCRIPT language="Javascript">relance =</SCRIPT><?php$relancer;?>
sinon je ne vois pas où il est car $relancer est créée dans le passage de valeur entre var relance et $relancer
j'ai renommé $relance en $relancer, est-ce ça le problème?
<SCRIPT language="Javascript">relance =</SCRIPT><?php$relancer;?>
sinon je ne vois pas où il est car $relancer est créée dans le passage de valeur entre var relance et $relancer
Si tu veux passer une valeur de variable PHP à javascript, il faudrait normalement faire ceci :
Sachant que pour javascript 10 n'est pas une valeur mais une string et que si tu veux réaliser une opération mathématique avec ce nombre il te faudra utiliser parseInt() http://www.toutjavascript.com/reference/reference.php?ref=parseInt&parent=210
<?php $relance = 10; ?> <script type="text/javascript">var relance=<?php echo $relance; ?>;</script>
Sachant que pour javascript 10 n'est pas une valeur mais une string et que si tu veux réaliser une opération mathématique avec ce nombre il te faudra utiliser parseInt() http://www.toutjavascript.com/reference/reference.php?ref=parseInt&parent=210
Salut,
@__construct : ce que tu dis à propos des types n'est pas tout à fait exact.
De ton exemple, voici le code qui sera envoyé au navigateur, donc une fois le PHP exécuté :
Pour ce qui est de l'échange de variable entre JS et PHP, ce n'est possible que dans le sens « PHP -> JS » (comme __construct l'a montré) mais pas dans l'autre. Et l'explication est très simple : le PHP est exécuté par le serveur avant d'envoyer la page au client (navigateur). Lorsque le Javascript est exécuté (par le navigateur), le PHP n'est plus présent dans le code source plus.
Je t'invite à regarder du côté d'AJAX (XmlHttpRequest), peut-être que c'est la solution à ton problème.
@__construct : ce que tu dis à propos des types n'est pas tout à fait exact.
De ton exemple, voici le code qui sera envoyé au navigateur, donc une fois le PHP exécuté :
<script type="text/javascript">var relance=10;</script>La variable JS « relance » sera donc un entier (integer), parseInt() n'est pas utile, on peut effectuer des opérations mathématiques.
Pour ce qui est de l'échange de variable entre JS et PHP, ce n'est possible que dans le sens « PHP -> JS » (comme __construct l'a montré) mais pas dans l'autre. Et l'explication est très simple : le PHP est exécuté par le serveur avant d'envoyer la page au client (navigateur). Lorsque le Javascript est exécuté (par le navigateur), le PHP n'est plus présent dans le code source plus.
Je t'invite à regarder du côté d'AJAX (XmlHttpRequest), peut-être que c'est la solution à ton problème.
Effectivement tu as raison, je me rappelle avoir eu ce problème d'une valeur entrée dans un formulaire et qui devait être manipulée dans une opération mathématique et j'avais eu ce problème!
Dans le cas présent, effectivement c'est bien un integer pour javascript!
Mille excuses pour ma fausse information... et un grand merci à avion-f16 pour avoir relevé mon erreur!
@+
Dans le cas présent, effectivement c'est bien un integer pour javascript!
Mille excuses pour ma fausse information... et un grand merci à avion-f16 pour avoir relevé mon erreur!
@+
D'accord mais l'opération ne se fait pas en javascript mais en php, parseInt() ne m'es pas utile si je ne me trompe pas.
Je n'es peut-être pas été assez clair dans mes explications, en faite, je fais un site de poker, lorsque l'utilisateur clique sur le bouton relancer, une fenêtre en javascript apparaît et lui demande de combien il souhaite relancer. D'où le prompt(). Je récupère la valeur retourné par cette fonction et je soustrais la valeur du capital de départ par la valeur de la relance et j'affiche cette nouvelle valeur.
J'espère être suffisamment clair, si ce n'est pas le cas dites-le moi merci
Je n'es peut-être pas été assez clair dans mes explications, en faite, je fais un site de poker, lorsque l'utilisateur clique sur le bouton relancer, une fenêtre en javascript apparaît et lui demande de combien il souhaite relancer. D'où le prompt(). Je récupère la valeur retourné par cette fonction et je soustrais la valeur du capital de départ par la valeur de la relance et j'affiche cette nouvelle valeur.
J'espère être suffisamment clair, si ce n'est pas le cas dites-le moi merci
AJAX est sûrement la solution. Mais soit prudent, n'oublie pas que le Javascript peut être modifié. On peut même en exécuté via la console du navigateur, donc modifier les variables.
prompt() te retournera bien une chaine, même si tu indiques « 10 ».
Mais la convertir en entier avec parseInt ne servira à rien si tu utilises AJAX : le nombre sera passé en argument GET ou POST et redeviendra une chaine en PHP.
http://www.siteduzero.com/tutoriel-3-4745-ajax-et-l-echange-de-donnees-en-javascript.html
prompt() te retournera bien une chaine, même si tu indiques « 10 ».
Mais la convertir en entier avec parseInt ne servira à rien si tu utilises AJAX : le nombre sera passé en argument GET ou POST et redeviendra une chaine en PHP.
http://www.siteduzero.com/tutoriel-3-4745-ajax-et-l-echange-de-donnees-en-javascript.html
Si je fais ça en créant une fonction en JavaScript est-ce que cela est faisable?
en gros, lorsque l'utilisateur clique sur le bouton relancer, on appelle une fonction JS, qui prend la valeur de la relance via le prompt, la soustrait au capital de départ, et retourne la valeur du nouveau capital.
en gros, lorsque l'utilisateur clique sur le bouton relancer, on appelle une fonction JS, qui prend la valeur de la relance via le prompt, la soustrait au capital de départ, et retourne la valeur du nouveau capital.
et oui le code que j'ai montré est sur la même page