Valeur récuperer dans un champ en php

Résolu/Fermé
abdeslam1999 Messages postés 29 Date d'inscription jeudi 21 mai 2009 Statut Membre Dernière intervention 16 avril 2018 - 4 sept. 2009 à 17:19
 abdeslam1999 - 7 sept. 2009 à 12:22
Bonjour,
j'ai deux champs de text ,je saisi une valeur dans le premier ,je voudrais la récuperer dans le deuxième sans cliquer sur le bouton et sans recharger la page(ca veut dire la valeur sera recuperer dans le deuxième une fois que je la saisi dans le premier)

3 réponses

kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
4 sept. 2009 à 17:37
Bonjour,

Il faut que tu utilise du javascript pour faire cela.
Ton script js devra donc :
- récupérer la valeur du champ 1
- écrire cette valeur dans le champ 2

Comment faire cela en javascript ?

Au sein de ta page et donc dans ton code, il faut que tu code un petite fonction javascript qui sera chargée d'effectuer le traitement voulu.
Pour ce faire, créé un fichier nommé 'fonctions.js' au même endroit que ton script PHP, le contenu devra être celui-ci :
<script language="javascript">
function copyValueFromTo ( _field1Id_, _field2Id_ ){
   // --- Retrieve fields object thanks to the Id parameters
   var field1Obj = document.getElementById(_field1Id_);
   var field2Obj = document.getElementById(_field2Id_);

   // --- Only if Id are known and exist in current document, do the treatment
   if ( field1Obj != null && field2Obj != null ){
      // --- Set value of field2 with value of field1
      field2Obj.value = field1Obj.value;
   }
}
</script>


Grosso modo, cette fonction permet de récupérer la valeur d'un champ 1 dont l'identifiant est passé en paramètre, puis de setter la valeur d'un champ 2 dont l'identifiant est passé en paramètre avec la valeur précédemment récupérée.

Il te reste alors à appeler cette fonction sur un évènement lié à ton champ 1, par exemple l'évènement 'onBlur' qui est l'inverse de l'évènement 'onfocus'. (C'est à dire c'est l'évènement qui est appelé lorsque ton champ perd le focus)
Pour ce faire, mettons que tu as tes deux champs écrits comme suit :
<input type='text' id='champ1' value='' onBlur='copyValueFromTo("champ1","champ2");'/>
<BR>
<input type='text' id='champ2' value=''/>


L'appel de ta fonction est en gras. L'important est de bien mettre des identifiants sur les champs en question, et de faire l'appel correctement.

Une dernière chose, il faut que tu importe le fichier javascript qui comprends la définition de ta fonction dans ta page HTML/PHP (selon comme tu l'as codée).
Il me semble que tu code en PHP, donc la syntaxe sera la suivante :
include "fonction.js";


A mettre au début de ton fichier (après '@session_start()' si tu utilise les sessions PHP)

Si tu as la moindre question n'hésite pas.
0
Merci pour votre réponse
je voudrais aller plus loin avec cette méthode que vous m'avez donné c'est pour cela j'ai essayé de faire un calcule pour cette formule

(prix_unitaire*quantité)*(1-(remise/100))

pour cela j'ai créé quatre champ de texte (pu,qt et remise)
dans le quatrième je récupéré le résultat de la formule

le problème c'est que le quatrième champ ne retourne que la première valeur saisie dans parmi les trois champ(pu,qte ou remise)

je ne sais pas comment récupérer le resultat

Merci
0
merci pour votre réponse
je voudrais aller plus loin avec cette méthode que vous m'avez donné c'est pour cela j'ai essayé de faire un calcule pour cette formule

(prix_unitaire*quantité)*(1-(remise/100))

pour cela j'ai créé quatre champ de texte (pu,qt et remise)
dans le quatrième je récupéré le résultat de la formule

le problème c'est que le quatrième champ ne retourne que la première valeur saisie dans parmi les trois champ(pu,qte ou remise)

je ne sais pas comment récupérer le resultat

Merci
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
7 sept. 2009 à 10:27
Bonjour,

Il faudrait que tu post le code que tu as fait pour que je puisse te dire où se situe ton erreur et les corrections à y apporter.
0
Salut
j'ai résolu le problème

voilà ce que j'ai voulu de faire

<script language="javascript">
function calcul_montant_ht() {

pu=document.getElementById('pu').value;
qte=document.getElementById('qte').value;
remise=document.getElementById('remise').value;
montant_ht=((pu*qte)*(1-(remise/100)));
document.getElementById('result').value=montant_ht;
}
</script>
<table>
<tr>
<td width="171"><span class="Style19">Quantité commandée</span></td>
<td colspan="3"><label>
<input style="width:80px" type="text" name="v_qte_cmd" id="qte" onkeyup="javascript:calcul_montant_ht();" />
</label></td>
</tr>
<tr>
<td><span class="Style21">Prix Unitaire</span></td>
<td colspan="3"><label>
<input style="width:80px" type="text" name="v_pu_cmd" id="pu" onkeyup="javascript:calcul_montant_ht();" />
DH</label></td>
</tr>
<tr>
<td><span class="Style21">Remise</span></td>
<td colspan="3"><label>
<input style="width:80px" type="text" name="v_remise_cmd" id="remise" onkeyup="javascript:calcul_montant_ht();" />
%
</label></td>
</tr>
<tr>
<td><span class="Style21">Montant TTC</span></td>
<td colspan="3"><label>
<input id="result" onkeyup="javascript:calcul_montant_ht();" style="width:80px ;COLOR: #FF0000;font-weight: bold"/>
DH</label></td>
</tr>
</table>
0