Auteur |
Message |
LionHell
Messages : 1
Inscrit le : 30/06/2003 |
Posté le 30/06/2003 à 13:02:26
Message N°1 #
|
Voici une portion d'un script qui ne fonctionne pas... ou est l'erreur ???
<select id="quoi" style="font:10px verdana;color:#993333;border:1 solid #993333;width:145px" onChange="fichenation()">
<?php
$db = mysql_connect("localhost","root");
mysql_select_db("maxultra_db",$db);
$sql="SELECT * FROM nations ORDER BY pays";
$resultat= mysql_query($sql,$db);
while($ligne=mysql_fetch_object($resultat))
echo stripslashes("<option value='".$ligne->idpays."'>".$ligne->pays."</option>");
mysql_close();
?>
</select>
<script language="Jscript">
function fichenation(){
i = quoi.options(quoi.selectedIndex).value;
<?php $idx = i ;
$db = mysql_connect("localhost","root");
mysql_select_db("maxultra_db",$db);
$sql="SELECT * FROM nations WHERE idpays='$idx'";
$resultat= mysql_query($sql,$db);
while($lign=mysql_fetch_object($resultat));
$p=$lign->pays;
?>
affichage.innerHTML=<?php echo $p ?>;
<?php mysql_close() ?>
}
</script>
|
|
david
Messages : 6
Inscrit le : 29/04/2003 |
Posté le 30/06/2003 à 16:16:38
Message N°2 #
|
salut,
L'erreur dans ton script c'est que tu ne peux traiter des variables Jscript dans le PHP,
Le PHP est exécuté avant l'affichage de la page HTML, par conséquent si tu veux exécuter du code PHP à partir d'une liste Jscript, il te faudra charger une nouvelle page avec les paramètres de ton JS.
ça pourra peut-être faire ton affaire ...
<select id="quoi" style="font:10px verdana;color:#993333;border:1 solid #993333;width:145px" onChange="fichenation()">
<?php
$db = mysql_connect("localhost","root");
mysql_select_db("maxultra_db",$db);
$sql="SELECT * FROM nations ORDER BY pays";
$resultat= mysql_query($sql,$db);
while($ligne=mysql_fetch_object($resultat))
echo stripslashes("<option value='".$ligne->idpays."'>".$ligne->pays."</option>");
mysql_close();
?>
</select>
<script language="Javascript">
function fichenation(){
i = quoi.options(quoi.selectedIndex).value;
window.location = "<?php echo $_PHP_SELF ?>"+i;
</script>
<?php
// si on a sélectionné un pays dans la liste
// récupérer les données du pays
$idx = isset($_GET['i']) ? $_GET['i'] : 0;
if($idx){
$db = mysql_connect("localhost","root");
mysql_select_db("maxultra_db",$db);
$sql="SELECT * FROM nations WHERE idpays='$idx'";
$resultat= mysql_query($sql,$db);
while($lign=mysql_fetch_object($resultat));
$p=$lign->pays;
mysql_close();
// affichage du pays
echo '<script language="Javascript">'."\n";
echo 'affichage.innerHTML='. $p.';'."\n";
echo '</script>'."\n";
}
?> |
|