Actualise une variable lors de changement dans une liste deroulante [Résolu]

Signaler
Messages postés
87
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
17 décembre 2008
-
cs_chamallow
Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
29 janvier 2007
-
Bonjour a tous

Voila mon probleme :
J'ai un formulaire dans une popup avec une liste deroulante(pour selectionner une personne)

Pour remplir la liste je fais appel a une fonction :
affichelistetech2($codetechnicien,"codetechnicien",1);

A la base dans ma liste je suis sur la valeur "A definir".
En changeant cette valeur (cad selectionner une personne dans ma liste)
je voudrait que ca ouvre automatiquement une autre popup (validation.php) me confirmant que le technicien selectionne est : '$nom'

code de la fonction :
///////////////
function affichelistetech2($codetechnicien,$nom,$allowempty) {

$query="SELECT codetechnicien,nom FROM techniciens where nom!='CLIENT' ORDER by nom";
$req=mysql_query($query);
?>
<form name="validation" ACTION="validation.php" METHOD="POST">
<select name='$nom' onChange="window.open('popup.php?page=validation&codetechnicien=$codetechnicien&referrant=$PAGEURLENC','Confirmation','width=500,height=305')">";
<?
if($allowempty!=0)
echo "<option value=""></option>";

while($line = mysql_fetch_array($req)) {
$tmpcode=$line["codetechnicien"];
$tmpnom=$line["nom"];
echo "<option";

if($codetechnicien==$tmpcode) {
echo " selected";
}
printf(" value ="%d">%s</option>\n",$tmpcode,$tmpnom);

}
echo "</select>\n";
echo "</form>";
}
////////////////////////
avec l'attribut onchange ca marche nickel la popup s'ouvre mais je recupere toujours l'ancienne valeur de ma liste deroulante 'A definir'

code validation.php
/////////////////////
<?
$query = "SELECT nom FROM techniciens where codetechnicien=$codetechnicient";
$req = mysql_query($query);
$line = mysql_fetch_array($req);
$nom = $line ["nom"];
echo "Technicien associé : $nom
\n";
//////////////
?>

En faite la variable $codetechnicien ne s'actualise pas elle est toujours a la valeur initiale

Comment je peut faire pour recup le bon nom de personne en fonction de son code ????

Merci
Atomik29

9 réponses

Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
29 janvier 2007
1
OK j'ai testé et ça marche donc j'espère ça marchera avec toi :)

Mets ça :
echo"<select name='$nom' onChange="window.open('popup.php?page=validation&codetechnicien='+this.options[this.selectedIndex].value+'&referrant=$PAGEURLENC','Confirmation','width=500,height=305')
">";

Normalement ça marche, après pour récup la valeur tu fais $_GET['codetechnicien']
tiens moi au courant :)
Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
29 janvier 2007
1
J'ai répondu dans ton autre post, maintenant je suis pas sur que ce soit ca !
Messages postés
87
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
17 décembre 2008
1
Salut chamallow excuse javais pas mater....

bon j'ai modifie par ce que tu m'a dit mais ca ne marche pas
Cad que la popup ne s'ouvre plus du tout maintenant.

echo"<select name='$nom' onChange="window.open('popup.php?page=validation&codetechnicien='+this.options[this.selectedIndex].value;+'
&referrant=$PAGEURLENC','Confirmation','width=500,height=305') ">";

tu aurais une idee ???

Atomik29
Messages postés
87
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
17 décembre 2008
1
sinon je mettais dit que dans l'attribut onchange jaurai pu balancer une fonction pour actualise et
apres ouvrir la popup(pour recup le code technicien )

/////////////////
function verif()
{
document.forms.formu.submit();
}
//////////////
echo"<form name= form2 ACTION="validation.php" METHOD="POST">";
echo"<select name='$nom' onChange=" verif(), window.open ('popup.php?page =validation&codeincident=$codeincident&codetechnicien=$codetechnicien&referrant=$PAGEURLENC','Confirmation','width=500,height=305') ">";
////////////
dans ma page principale qui liste tout je vois bien le technicien qui s'actualise mais dans la popup
qui s'ouvre je recupere toujours mon ancienne valeur

Je suis vraiment bloque....
Atomik29
Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
29 janvier 2007
1
Ca a pas marché ce que j'ai dis ?? lol zut alors!
Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
29 janvier 2007
1
ah j'ai pas vu ta réponse : alors si la popup ne s'ouvre pas, faut vérifier les guillements doubles et simples et le passages de paramètres, ca vient souvent de ca!
Après je reconte ptet une super grosse connerie, alors je vais tester parce que moi ça marchait ce genre de truc :)
Messages postés
87
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
17 décembre 2008
1
ma fonction en entier :
/////////////////////////////////
function affichelistetech2($codetechnicien,$nom,$allowempty) {

$query="SELECT codetechnicien, nom FROM techniciens where nom!='CLIENT' ORDER by nom";
$req=mysql_query($query);

echo"<form name=form2 ACTION="validation.php" METHOD="POST">";
echo"<select name='$nom' onChange="window.open('popup.php?page=validation&codetechnicien=$codetechnicien'+this.options[this.selectedIndex].value;+'&referrant=$PAGEURLENC','Confirmation','width=500,height=305') ">";

if($allowempty!=0)
echo "<option value=""></option>";

while($line = mysql_fetch_array($req)) {
$tmpcode=$line["codetechnicien"];
$tmpnom=$line["nom"];
echo "<option";

if($codetechnicien==$tmpcode) {
echo " selected";
}
printf(" value ="%d">%s</option>\n",$tmpcode,$tmpnom);
}
echo "</select>\n";
echo "</form>";
}

Atomik29
Messages postés
87
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
17 décembre 2008
1
ok ben un grand MERCI chamallow
de la balle ca fonctionne
j'ai fait une erreur de merde, j'avais &codetechnicien=$codetechnicien'+this.options
et ca foutai la merde
merci encore a plus
Atomik29
Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
29 janvier 2007
1
Oui j'avais vu mais il y avait aussi le ; après this.options[this.selectedIndex].value qu'il aimait pas beaucoup !!
Mais bon tant que ça marche, c'est cool :) Et de rien, j'suis contente d'avoir pu t'aider !