Vous n'êtes pas identifié(e).
Pages :: 1
bonjour a tous,
j'ai développer 2 select interdependants avec des valeurs qui proviennent d'une BDD.
quand je les fais fonctionner juste à 2, ca marche mais quand je l'intègre dans ma page ( un peu plus compliquée ), le 2eme select ne s'affiche pas.
Ci dessous le code :
$info_imputation = isset($_POST['imputation'])?$_POST['imputation']:null;
/*$info_contrat = isset($_POST['contrat'])$_POST['contrat']:null; */
?>
<html lang="fr">
<head>
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
<link rel="stylesheet" href="style.css">
<title>Ajouter une RNC</title>
</head>
<body style="color:rgb(175,0,124); font-family:arial; background-color : rgb(179,179,179);" >
<?php
if(isset($_POST['ok']) && isset($_POST['item']) && $_POST['item'] != "")
{ $contrat_selectionnee = $_POST['contrat'];
$item_selectionne = $_POST['item'];
}
$connexion = mysql_pconnect($serveur, $admin, $mdp);
if($connexion != false)
{ $choixbase = mysql_select_db($base, $connexion);
$sql1 = "SELECT num_contrat, nom_client, type_equipement FROM test.commande";
$rech_contrat = mysql_query($sql1);
$num_contrat = array();
$nom_client = array();
$type_equipement = array();
/* On active un compteur pour les contrats */
$nb_contrat = 0;
if($rech_contrat != false)
{ while($ligne = mysql_fetch_assoc($rech_contrat))
{ array_push($num_contrat, $ligne['num_contrat']);
array_push($nom_client, $ligne['nom_client']);
array_push($type_equipement, $ligne['type_equipement']);
/* On incrémente de compteur */
$nb_contrat++;
}
}
?>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" id="chgitem">
<!-- IMPUTATION -->
<table name ="Imputation" width = "100%" class= "tabcontrat">
<tbody>
<tr>
<td width = "15%"> <!--label Imputation-->
<label for="imputation">Imputation :</label>
</td>
<td width = "35%"> <!--input Imputation-->
<select required="required" style="width:200px; background-color : rgb(229,229,229);" name="imputation"; >
<option>Type d'imputation</option>
<?php
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '');
$requete = $bdd->query('select * from test.imputation');
while ($donnees = $requete->fetch())
{ echo '<option>'.$donnees['imputation'].'</option>'; }
?>;
</select>
</td>
</tr>
<tr>
<td width = "20%"> <!--label Contrat-->
<label for="contratClient">Contrat :</label>
</td>
<td width = "35%"> <!--input Contrat-->
<select style="width:200px; background-color : rgb(229,229,229);">
<option value="-1">Numéro de Contrat</option>
<?php
for($i = 0; $i < $nb_contrat; $i++)
{
?>
<option value="<?php echo($num_contrat[$i]); ?>"<?php echo((isset($idr) && $idr == $num_contrat[$i])?" selected=\"selected\"":null); ?>><?php echo($num_contrat[$i]); ?></option>
<?php
}
?>
</select>
</td>
</tr>
<tr>
<td width = "20%"> <!--label Item-->
<label for="contratClient">Item :</label>
</td>
<td width = "35%"> <!--input Item-->
<?php
mysql_free_result($rech_contrat);
/* On commence par vérifier si on a envoyé un numéro de contrat et le cas échéant s'il est différent de -1 */
if(isset($idr) && $idr != -1)
{
/* Création de la requête pour avoir les items de ce contrat */
$sql2 = "SELECT num_item, designation_item FROM test.item where contrat=\"". $idr ." \";";
if($connexion != false)
{ $rech_item = mysql_query($sql2, $connexion);
/* Un petit compteur pour les items */
$nd = 0;
/* On crée deux tableaux pour les numéros et les noms des items */
$num_item = array();
$desig_item = array();
/* On va mettre les numéros et noms des départements dans les deux tableaux */
while($ligne_item = mysql_fetch_assoc($rech_item))
{
array_push($num_item, $ligne_item['num_item']);
array_push($desig_item, $ligne_item['designation_item']);
$nd++;
}
/* Maintenant on peut construire la liste déroulante */
?>
<select name="item" id="item" style="width:175px; background-color : rgb(229,229,229);">
<?php
for($d = 0; $d<$nd; $d++)
{
?>
<option value="<?php echo($code_item[$d]); ?>"<?php echo((isset($item_selectionne) && $item_selectionne == $code_item[$d])?" selected=\"selected\"":null); ?>><?php echo($num_item[$d]." - ". $desig_item[$d] .""); ?></option>
<?php
}
?>
</select>
<?php
}
/* Un petit coup de balai */
mysql_free_result($rech_item);
}
?>
</td>
</tr>
</tbody>
</table><br><br>
</body>
</html>
J'imagine qu'il y a un soucis de syntaxe mais je ne trouve pas lequel.
Merci de votre aide.
Hors ligne
Hors ligne
C'est possible...
je decouvre php, mysql et javascript et je constitue mon programme avec des bouts de script péchés a gauche et a droite sans tout comprendre.
Néanmoins, comme je le dis dans mon premier post, ca fonctionne... il y a juste un soucis quand je l'intègre dans ma page complète...
Hors ligne
Pages :: 1