OVH Cloud OVH Cloud

JavaScript et PHP

4 réponses
Avatar
Jay
Bonjour à tous,

Désolé c'est peut-être un peu hors-sujet :
Comment faire pour récupérer une variable JavaScript en PHP, et ce sur
la MEME PAGE.

Je souhaiterai par exemple récupérer la valeur d'un champ
(document.myForm.f_name.value) pour la traiter en PHP.

Merci pour votre aide,
Jay

4 réponses

Avatar
Démosthene
Bonjour à tous,

Désolé c'est peut-être un peu hors-sujet :
Comment faire pour récupérer une variable JavaScript en PHP, et ce sur
la MEME PAGE.

Je souhaiterai par exemple récupérer la valeur d'un champ
(document.myForm.f_name.value) pour la traiter en PHP.

Merci pour votre aide,
Jay


Cela semble évoluer un peu dans un avenir proche mais jusqu'à
aujourdhui, Javascript se met en marche à partir du moment ou Php à
finit le sien. En fait tu veux assister à ta propre naissance ;)

Donc pour moi la réponse à ta question est impossible sans une
artillerie lourde.

Le plus simple est d'expliquer avec des mots simples ce que tu souhaites
réaliser, nous verrons comment t'aiguiller.

Démosthène

Avatar
Jay
Le plus simple est d'expliquer avec des mots simples ce que tu souhaites
réaliser, nous verrons comment t'aiguiller.


En fait je souhaiterai afficher dans une page le coût total d'un devis
en fonction d'une grille de barème que l'utilisateur sélectionne dans
une liste déroulante.

Par exemple, l'utilisateur sélectionne l'item "grille 3", le résultat du
calcul s'affiche tout de suite. Mais pour des raisons de commodité, je
souhaiterai que le résultat s'affiche sur la même page...

Jay

Avatar
Démosthene

Le plus simple est d'expliquer avec des mots simples ce que tu
souhaites réaliser, nous verrons comment t'aiguiller.



En fait je souhaiterai afficher dans une page le coût total d'un devis
en fonction d'une grille de barème que l'utilisateur sélectionne dans
une liste déroulante.

Par exemple, l'utilisateur sélectionne l'item "grille 3", le résultat du
calcul s'affiche tout de suite. Mais pour des raisons de commodité, je
souhaiterai que le résultat s'affiche sur la même page...

Jay


Dans ce cas, c'est Javascript, qui va modifier ta page à la volée.


Grâce à une recherche google, tu devrais trouver une base de départ sans
difficultés.
Globalement, je ferais une page ou chaque élément à modifier à la volée
est inclus dans une balise div avec en attribut id des noms différents

<div id="tva"> </div>
<div id="total_general"> </div>

le contenu de la balise est vide au départ, et lorsque ton client change
une option, un appel de fonction de recalcul met à jour le contenu de
tes <div> grâce à getElementById("total_general").innerHtml = "24433 €".

Si ta structure de grille n'existe pas, cherches-en une avec google,
sinon, publie là, nous ferons les modifications en direct.

Bon courage

Démosthène


Avatar
ASM

Le plus simple est d'expliquer avec des mots simples ce que tu souhaites
réaliser, nous verrons comment t'aiguiller.


En fait je souhaiterai afficher dans une page le coût total d'un devis
en fonction d'une grille de barème que l'utilisateur sélectionne dans
une liste déroulante.

Par exemple, l'utilisateur sélectionne l'item "grille 3", le résultat du
calcul s'affiche tout de suite. Mais pour des raisons de commodité, je
souhaiterai que le résultat s'affiche sur la même page...


avec un exemple simple
en s'appuyant sur un formulaire
(fonctionnant aussi sur mon vieux NC4.5)

<form name="monForm" id="monForm">
<script type="text/javascript">
prix = new Array();
quantite = new Array();
prix[0] = <? echo $prix_0; ?>;
quantite[0] = <? echo $quantite_0; ?>;
prix[1] = <? echo $prix_1; ?>;
quantite[1] = <? echo $quantite_1; ?>;
prix[2] = <? echo $prix_2; ?>;
quantite[2] = <? echo $quantite_2; ?>;
.../...
prix[n] = <? echo $prix_n; ?>;
quantite[n] = <? echo $quantite_n; ?>;
total = 0;
for(var i=0;i<prix.length;i++)
total += prix[i]*quantite[i];
function totalise(){
document.forms['monForm'].elements['totalise'].value=total;
}
onload = totalise;
</script>
<h1>Devis</h1>
<p>Article 1 : <?echo $prix_1; ?> x <? echo quantite_1; ?>
<p>Article 2 : <?echo $prix_2; ?> x <? echo quantite_2; ?>
.../...
<p>Article n : <?echo $prix_n; ?> x <? echo quantite_n; ?>
<hr>
<p>Total = <input type=text name=totalise id=totalise>
<select onchange="var p = this.options.selectedIndex;
if(p==0) alert('Choisir dans la liste');
else
resultat.value=total*(1-this.options[p].value);">
<option selected>Rabais
<option value="5"> 05 %
<option value="10"> 10 %
<option value="15"> 15 %
<option value="20"> 20 %
</select>
= <input type=text name=resultat id=resultat> Euros H.T
</form>

--
*******************************************************
Stéphane MORIAUX et son vieux Mac
Aide Pages Perso (images & couleurs, formulaire, CHP)
http://perso.wanadoo.fr/stephane.moriaux/internet/
*******************************************************