jhierso
Messages postés6Date d'inscriptionjeudi 2 octobre 2008StatutMembreDernière intervention 6 octobre 2008
-
5 oct. 2008 à 10:18
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 2013
-
6 oct. 2008 à 09:23
Bonjour,
J'ai une base de donnée agents (matricule, nom et téléphone) et un formulaire que je dois remplir avec les 3 champs. le champ agent est une combo box qui appelle la liste des agents.
Quand je choisie un agent son matricule et son telephone doivent s'afficher dans les 21 autres champs.
J'ai dans ma balise :
<script>
function actuagent(){
document.insertion.matricule.value = document.insertion.agents.value;
document.insertion.telephone.value = document.insertion.agents.value;
}
</script>
et dans mon formulaire en rouge la combo box et les autres champs:
<form name="insertion"
action="agent_insertok.php"
method="POST" class="Style6"
onsubmit = 'return controlegeneral()';>
----
,
" />
,
----
Heure : ,
" size="8" maxlength="6" />,
----
Matricule : ,
,
----
Agents : ,
<select name=agents size=1 onchange='actuagent()' style='width:200px'>
<option selected>Choisir un agent</option >
<?php connexion_listecombobox('SELECT matricule, nom, telephone FROM agents ORDER BY nom ASC', ''); ?>
</select>,
----
Téléphone : ,
,
----
Service : ,
<select name="service" size="1" id="service">
<option selected>Choisir un service</option >
<?php connexion_listecombobox('select nom, nom from service', ''); ?>
</select>
,
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 5 oct. 2008 à 11:01
bonjour,
21 autres champs ? où qui sont-y ?
que fais-tu dans connexion_listecombobox en php ?
où mémorises-tu matricule, nom, telephone ?
chaque ligne ( option ) d'un select ( entre nous un combobox ça n'existe pas ! )
ne peut contenir que 2 valeurs : value et text.
tu en met plusieurs dans le .value avec un séparateur entre ?
donc matricule=telephone=value de l'option sélectionnée
si le .value contient plusieurs valeurs avec un séparateurs,
il faut les exploiter ( split ? )
il vaudrait mieux d'ailleurs ne poster que l'extrait nécessaire
de la page résultante.. pas le php !!!! ( et j'ai bien dit l'extrait !
pas 256895 lignes ! ) sinon on devine comment le contenu de la
base de données, ce que génère le php ... ?
jhierso
Messages postés6Date d'inscriptionjeudi 2 octobre 2008StatutMembreDernière intervention 6 octobre 2008 5 oct. 2008 à 14:14
- Désole c'est une erreur de frappe, il n'y a que 2 champs
- Dans connexion_listecombobox j'affiche la liste des agents et quand je
sélectionne l'un d'entre eux, j'affiche son matricule et son phone.
- matricule, nom, telephone sont dans une bdd'agents'
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 5 oct. 2008 à 14:39
>>j'affiche son matricule et son phone.
t'es sur ? dans le .text du select alors ?
>> matricule, nom, telephone sont dans une bdd'agents'
certes... mais tu l'as déjà traité cette bdd,
pour créer le select...
si tu ne mémorises pas les données quelque part coté client
( le mieux dans l'option du select ? )
il va te falloir au onchange rappeler le php pour qu'il
te retourne ces données en fonction de l'option choisie.
jhierso
Messages postés6Date d'inscriptionjeudi 2 octobre 2008StatutMembreDernière intervention 6 octobre 2008 5 oct. 2008 à 15:05
Je le mémorise dans la bdd 'service'(id,matricule, nom, téléphone, service).
Je suis débutant en php et j'ai un peu de mal à te saisir cette partie : met le dans le .value avec le matricule séparé par un "\t" par exemple
et quand tu veux afficher fait un split sur le .value .
Peux tu me donner un exemple STP
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 6 oct. 2008 à 08:30
un exemple ?
quand tu crée l'option en php : <?echo '<option value='.$telephone.'\t'.$nom.'\t'.$service.''.'>'.$matricule.'</option>';
et dans le onchange :
var tab=le select.options[le select.selectedIndex].value.split("\t");
tab[0]=téléphone
tab[1]=nom
tab[2]=service
le select.options[le select.selectedIndex].text=matricule
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 6 oct. 2008 à 09:23
erreur de syntaxe d'ailleurs...
<?php echo '<option value="'.$telephone.'\t'.$nom.'\t'.$service.'">'.$matricule.'</option>';
ou pas loin ;o)
Bul[mon Site][M'écrire]