affichage de valeurs d'attributs à partir d'un tableau
Bonjour, ayant un tableau d'équipements avec des checkbox à coté de chaque équipement , j'essaie en cochant sur une chekbox et en cliquant sur un bouton "creer DT" de passer à un formulaire "add_DT_interne.php" dans le lequel on doit afficher libellé , marque , numéro de série de l'équipement en interdisant à l'utilisateur de les modifier " les griser par exemple" , et l'autre partie du formulaire à saisir : description de la panne, avancement DT(liste déroulante) , opérateur (liste déroulante), date création DT , date arrêt équipement. une fois la saisie terminée , l'utilisateur clique sur le bouton sauvegarder pour passer ensuite à la page maj_DT_interne.php qui contient toutes les opérations effecuées sur une BDD (ajout ,suppresion,edition, modification). le hic c'est que je n'arrive pas à m'en sortir en passant d'un formulaire à un autre !!!! je vous met le code : liste_equipement.php :
<form action="maj_equipement.php" method="post" name="adminForm">
<table width="100%" class="menubar" cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="menudottedline" width="40%"> </td>
<td class="menudottedline" align="right">
<table cellpadding="0" cellspacing="0" border="0" id="toolbar" align="right">
<tr valign="middle" align="center">
<td> </td>
<td>
<a class="toolbar" >
<input type='submit' name='calendrier' value='' class='bt_remove' />
Calendrier </a>
<input name="operation" type="hidden" value="calendrier"> </td>
<td> </td>
<td>
<a class="toolbar" >
<input type='submit' name='creer_DT' value='' class='bt_remove' />
Créer DT </a>
<input name="operation" type="hidden" value="creer_DT"></td>
<td> </td>
<td>
<a class="toolbar" >
<input type='submit' name='remove' value='' class='bt_remove' />Supprimer</a>
<input name="operation" type="hidden" value="delete"> </td>
<td> </td>
<td>
<a class="toolbar">
<input type='submit' name='edit' value='' class='bt_edit' />
Editer</a>
<input name="operation" type="hidden" value="edit">
<br> </td>
<td> </td>
<td>
<a class="toolbar" href="add_equipement.php">
<input type='submit' name='new' value='' class='bt_new' />Nouveau</a>
<input name="operation" type="hidden" value="new"> <br> </td>
</tr>
</table> </td>
<td class="menudottedline" align="left"> </td>
</tr>
</table>
<br>
<table class="adminheading">
<tr>
<th width="64%" class="user">
liste des équipements </th>
<td width="20%">
</td>
<td width="16%"> </td>
</tr>
</table>
<div align="center" class="centermain">
<div class="main">
<?php
$BD = mysql_connect("localhost", "root", "");
if (!$BD) die(mysql_error());
mysql_select_db("gmao_db", $BD) or die(mysql_error());
$requete = "select lib_equip, marque_equip,num_serie_equip,type_equip, fournisseur_equip,DATE_FORMAT(date_achat_equip,GET_FORMAT(DATE,'EUR')) AS date_achat_equip,DATE_FORMAT(date_mise_sce_equip,GET_FORMAT(DATE,'EUR')) AS date_mise_sce_equip,critique_equip,etat_equip,id_equip
from equipement,fournisseur_equip,type_equip where equipement.fk_type_equip= type_equip.id_type_equip
and equipement.fk_fournisseur_equip= fournisseur_equip.id_fournisseur_equip ORDER BY id_equip ASC";
if (!$requete) die(mysql_error());
$result = mysql_query($requete, $BD);
if (!$result) die(mysql_error());
$rows = mysql_fetch_array($result);
echo"<table class=\"adminlist\" border=\"0\" align=\"center\">";
echo "<tr>
<th class=\"title\"><input type=\"checkbox\" onClick=\"toutcocher();\" name=\"cid[]\" value=\"",$rows['id_intervenant'],"\" /></th>
<th class=\"title\">Libellé</th>
<th class=\"title\">Marque</th>
<th class=\"title\" >Num de série</th>
<th class=\"title\" >Type équipement</th>
<th class=\"title\">Fournisseur</th>
<th class=\"title\" >Date achat</th>
<th class=\"title\">Date mise en service</th>
<th class=\"title\">Critique</th>
<th class=\"title\">Etat équipement</th>";
echo "</tr>\n";
for($i=0;$i<mysql_num_rows($result);$i++)
{
mysql_data_seek($result,$i);
$champs=mysql_fetch_array($result);
echo "<tr align=\"center\">";
for($j=0;$j<9;$j++) // 9 = nombre de champs figurant dans le select
{
if($j==0)
echo '<td><input type="checkbox" onClick="toutcocher();"name="cid[]" value="'.$champs['id_equip'].'"></td>';
echo '<td> '.$champs[$j].' </td>';
}
echo "</tr>";
}
echo "</table>";
mysql_close();
?>
</form>
<table class="adminlist"><tr><th colspan="3">
<span class="pagenav"><< Première</span>
<span class="pagenav">< Précédente</span>
<span class="pagenav"> 1 </span>
<span class="pagenav">Suivante ></span>
<span class="pagenav">Dernière >></span></th></tr><tr><td nowrap="nowrap" width="48%" align="right">Eléments par page</td>
<td>20</td>
<td nowrap="nowrap" width="48%" align="left"> </td>
</tr></table>
</form>
comme vous l'avez sans doute remarqué , cette liste n'emmène vers le formulaire de maj_equipement.php où on peut ajouter,éditer,modifier,supprimer un équipement.
mes question : 1. ya t' il un moyen de m'orienter vers un autre formulaire *add_DT_interne.php *tout en gardant le script propre à l'équipement? comme intégrer d'autres !! 2. je ne sais pas comment afficher les 3 valeurs des attributs libelle, marque , numéro de série , j'ai tenté un bout de code que je met ci-dessous :
<?php
// connexion à la base
include('fonctions.php');
$result = db_connect();
if (!$result)
die(mysql_error());
// selection de la base de données
$select = mysql_select_db($dbName,$result);
if (!$select)
die(mysql_error());
if (isset($_POST["creer_DT"]))
{
if (!isset($_POST["cid"]))
{
echo"Vous devez cocher au moins une case!";
echo'</br>';
echo '<a href="liste_equipement.php" class=style1 > Cliquez ici pour revenir à la liste des équipements </a>';
exit();
}
// on créé une liste des id
$ids = implode(",",$_POST["cid"]);
$affiche= mysql_query("select * from equipement where id_equip IN ($ids)") or die(mysql_error());
// On fait une boucle pour lister tout ce que contient la table :
while ($object=mysql_fetch_array($affiche))
{
$id = $object['id_equip'];
$libelle = $object['lib_equip'];
$marque = $object['marque_equip'];
}
}
?>
<form action="maj_DT_interne.php" method="post" name="adminForm">
<table width="100%" class="menubar" cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="menudottedline" width="40%"> </td>
<td class="menudottedline" align="right">
<table cellpadding="0" cellspacing="0" border="0" id="toolbar">
<tr valign="middle" align="center">
<td>
<a class="toolbar" >
<input type='submit' name='save' value='' class='bt_sauver' />sauver</a>
<input name="operation" type="hidden" value="insert"><br> </td>
<td> </td>
<td>
<a class="toolbar" >
<input type='submit' name='apply' value='' class='bt_apply'/>
appliquer</a> <br> </td>
<td> </td>
<td>
<a class="toolbar" href="liste_equipement.php">
<input type='submit' name='cancel' value='' class='bt_cancel'/>
annuler</a> <br></td>
</tr>
</table>
</td>
</tr>
</table>
<br />
<table class="adminheading">
<tr>
<th class="marteau">Demande de travail : <small>Ajouter</small> </th>
</tr>
</table>
<table width="106%" >
<tr>
<td width="60%" valign="top">
<table class="adminform">
<tr>
<th colspan="6">
Détails demande de travail : </th>
</tr>
<tr>
<td >
Libellé *:</td>
<td colspan="5">"'.$champs['id_equip'].'"
<input type="hidden" name="update" value="'.$object->id_equip.'"/>";
<input type="text" name="libelle" class="inputbox" size="40" maxlength="50" value=<? if(isset($_POST['libelle'])){ echo "'.$object->libelle.'";} ?> > </td>
</tr>
<tr>
<td>
Marque*: </td>
<td colspan="5">
<input type="text" name="marque" class="inputbox" size="40" maxlength="25" value=<? if(isset($_POST['marque'])){ echo "'.$object->marque.'";} ?>> </td></tr>
<tr>
<td>Numéro de série* :</td>
<td colspan="5"><input type="text" name="num_serie" class="inputbox" size="40" maxlength="25" value=<? if(isset($_POST['num_serie'])){ echo "'.$object->num_serie.'";} ?>> </td>
</tr>
<tr>
<td valign="top">Description de la panne : </td>
<td colspan="5"><textarea cols="60" rows="10" name="description_panne" class="inputbox"></textarea></td>
</tr>
<tr>
<td >Opérateur * : </td>
<?php
$result = db_connect();
if (!$result)
die(mysql_error());
// selection de la base de données
$select = mysql_select_db($dbName,$result);
if (!$select)
die(mysql_error());
?>
<? $Result= mysql_query("Select * from operateur") or die(mysql_error());
$nb = mysql_num_rows($Result);
$ListDir = '<option value="0">choisir un opérateur</option>';
while ($tmpObject = mysql_fetch_object($Result)) //tant qu'il y a des opérateurs, on les affiche
{
$ListDir .= '<option value="'.$tmpObject->id_operateur .'">'.$tmpObject->nom.' '.$tmpObject->prenom.'</option>';
}
?>
<td colspan="5">
<select name="fk_operateur" id="fk_operateur">
<?=$ListDir?>
</select> </td>
</tr>
<tr>
<td >Avancement* : </td>
<?php
$result = db_connect();
if (!$result)
die(mysql_error());
// selection de la base de données
$select = mysql_select_db($dbName,$result);
if (!$select)
die(mysql_error());
$Result= mysql_query("Select * from avancement") or die(mysql_error());
$nb = mysql_num_rows($Result);
$ListDir = '<option value="0">choisir un avancement</option>';
while ($tmpObject = mysql_fetch_object($Result)) //tant qu'il y a des avancements, on les affiche
{
$ListDir .= '<option value="'.$tmpObject->id_avancement .'">'.$tmpObject->avancement.'</option>';
}
?>
<td colspan="5">
<select name="fk_avancement" id="fk_avancement">
<?=$ListDir?>
</select> </td>
</tr>
<tr>
<td>
Date création DT : </td>
<td width="25" colspan="2">
<input type="text" name="date_creat_DT" id="" class="calendrier" size="8" /> </td>
<td>
Date arrêt équipement: </td>
<td colspan="2" width="23%"> <input type="text" name="date_arret_equip" id="" class="calendrier" size="8" /> </td>
</tr>
<tr> </tr>
</table> </td>
</tr>
</table>
</form>
le traitement de ce formulaire se fait dans la page maj_DT_interne.php "ajout, edition,modification d'une DT_interne
voilà J'espère m'etre bien expliquée, si vous avez des propositions , je suis preneuse merci d'avance.