Page 1 sur 1

Formulaire dynamiquement liée

Posté : 26 avr. 2013, 12:00
par Black Vampire
Bonjour,

Voila je suis dans une impasse j'aimerais que a partir d'une List Box que je sélectionne cela me pré-remplisse 5 champs

En gros je sélectionne une société et sa me complète sont Adresse sont Numéro de Téléphone son IP etc enfin 5 champs et que je puisse modifier après

Image

Je voudrais remplacer le premier par une listbox et que sa pré remplisse

J'ai trouver sa comme code mais il y a que 3 possibilité :


Can you help me ?

Merci

Code : Tout sélectionner

<script type="text/javascript"> function setInputText() { var mylist=document.getElementById("mLst") document.getElementById("txt"). value=mLst.options[mLst.selectedIndex].text document.getElementById("num"). value=mLst.options[mLst.selectedIndex].value document.getElementById("name"). value=mLst.options[mLst.selectedIndex].label } </script> <form> Select option: <select id="mLst" onchange="setInputText()"> <option value="1" label="lab1">txt1</option> <option value="2" label="lab2">txt2</option> <option value="3" label="lab3">txt3</option> <option value="4" label="lab4" >txt4</option> </select> <br />The text is: <input type="text" id="txt" size="20"> <br />The value is: <input type="text" id="num" size="20"> <br />The name is: <input type="text" id="name" size="20"> <br />The test is: <input type="text" id="test" size="20"> </form>

Re: Formulaire dynamiquement liée

Posté : 26 avr. 2013, 12:34
par ghost5922
Bonjour,

Perso je passerai par Jquery pour récupérer les informations et les ajoutes au champs texte en question

par exemple un onchange sur mLst puis avec jquery on envoi l'id list a un fichier php qui traite et retourne un tableau que tu peux assigne a chaque champs

si tu as besoin d'aide je d'aiderai pour coder un peux

après il a le json que je ne maîtrise pas :)

Re: Formulaire dynamiquement liée

Posté : 26 avr. 2013, 12:41
par Black Vampire
Alors la c'est vrais que je debute en PHP alors jquerry c'est vrais qu'un peu d'aide ne me ferait pas de mal

Re: Formulaire dynamiquement liée

Posté : 26 avr. 2013, 12:52
par ghost5922
Bonjour,

Voila un exemple

page formulaire :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script src="mlst.js"></script>
</head>

<body>
<form>
<select name="mlst" id="mLst">
	<option value="1">Test 1</option>
    <option value="2">Test 2</option>
</select><br />


<input type="text" name="adresse" id="adresse" /><br />
<input type="text" name="adresse2" id="adresse2" /><br />
<input type="text" name="contact" id="contact" /><br />
<input type="text" name="tel" id="tel" /><br />
<input type="text" name="marque" id="marque" /><br />
<input type="text" name="modele" id="modele" /><br />
<input type="text" name="ip" id="ip" /><br />
<input type="text" name="pass" id="pass" /><br />
</form>
</body>
</html>

Page JS "mlst.js" :

[javascript]$(document).ready(function () {
$("#mLst").change(function(){
var valeur=$('#mLst').val();// on recupere la valeur du select id
$.ajax({
type: "POST",
data: {"mLst" : valeur},
url: "./mlst.php",
success:function(data){
var infos=data.split("|");//j'imagine que php me r'envois les infosmations separer par "|"

if (infos[0]) {//on verifie si la variable n'est pas vide
$("#adresse").val(infos[0]); // on ajoute les infos au champ id adresse
}
if (infos[1]) {//on verifie si la variable n'est pas vide
$("#adresse2").val(infos[1]); // on ajoute les infos au champ id adresse2
}
if (infos[2]) {//on verifie si la variable n'est pas vide
$("#contact").val(infos[2]); // on ajoute les infos au champ id adresse2
}
if (infos[3]) {//on verifie si la variable n'est pas vide
$("#tel").val(infos[3]); // on ajoute les infos au champ id adresse2
}
if (infos[4]) {//on verifie si la variable n'est pas vide
$("#marque").val(infos[4]); // on ajoute les infos au champ id adresse2
}
if (infos[5]) {//on verifie si la variable n'est pas vide
$("#modele").val(infos[5]); // on ajoute les infos au champ id adresse2
}
if (infos[6]) {//on verifie si la variable n'est pas vide
$("#ip").val(infos[6]); // on ajoute les infos au champ id adresse2
}
if (infos[7]) {//on verifie si la variable n'est pas vide
$("#pass").val(infos[7]); // on ajoute les infos au champ id adresse2
}
}
});
});
});



[/javascript]


Page Php "mlst.php"
<?php
$idMlst=(int)$_POST['mLst'];

switch ($idMlst){
	
	
	case"1":
		echo'111 rue ...||contact|060000000|Sonx|Mod|127.0.0.1|192.168.1.1';	
	break;
	case"2":
		echo'222 rue ...||ghost|030803000|Mar|toto|127.0.0.1|192.168.1.1';	
	break;	
	
	default;
        //adresse|adresse2|contact|telephone|marque|modele|ip|passe
	echo'|||||||';
}

?>

Re: Formulaire dynamiquement liée

Posté : 26 avr. 2013, 13:23
par Black Vampire
Je test sa dés maintenant :)

Re: Formulaire dynamiquement liée

Posté : 26 avr. 2013, 14:32
par ghost5922
Bonjour,

Je vous ai fourni dans mon message presedent une solution qui marche test DEMO

Re: Formulaire dynamiquement liée

Posté : 26 avr. 2013, 14:40
par Black Vampire
Bien jouer :)


C'est exactement ce que je voulais même si je ne voit pas trop bien comment sa fonctionne on est vendredi ^^ ,

Merci a toi !

Re: Formulaire dynamiquement liée

Posté : 26 avr. 2013, 14:55
par ghost5922
BOnjour,

désolé j'ai vite fais cela

en faite a chaque changement de choix du select on appelle la page php qui nous retour les résultat et derniere avec jquery on découpe la chaine retourne et on modifie la valeur des inputs par celle retourne je t'ai laisse mon skype au besoin