PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Forum Général PHP » affichage de valeurs d'attributs à partir d'un tableau » 05-08-2012 14:32:09

peacemind
Réponses : 0

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%">&nbsp;</td>
 
  <td class="menudottedline" align="right">
        <table cellpadding="0" cellspacing="0" border="0" id="toolbar" align="right">
    <tr valign="middle" align="center">
          <td>&nbsp;</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>&nbsp;</td>
            <td>
        <a class="toolbar" >
        <input type='submit' name='creer_DT' value='' class='bt_remove' />
        Cr&eacute;er DT       </a>
        <input name="operation" type="hidden" value="creer_DT"></td>
        <td>&nbsp;</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>&nbsp;</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>&nbsp;</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">&nbsp;</td>
</tr>
</table>
 
<br>
<table class="adminheading">
    <tr>
      <th width="64%" class="user">
      liste des équipements      </th>
 
      <td width="20%">
      </td>
 
 
      <td width="16%">&nbsp;</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">&lt;&lt;&nbsp;Première</span>
<span class="pagenav">&lt;&nbsp;Précédente</span>
<span class="pagenav"> 1 </span>
<span class="pagenav">Suivante&nbsp;&gt;</span>
<span class="pagenav">Dernière&nbsp;&gt;&gt;</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">&nbsp;</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 <form> !!

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%">&nbsp;</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>&nbsp;</td>
 
          <td>
      <a class="toolbar" >
        <input type='submit' name='apply' value='' class='bt_apply'/>
        appliquer</a> <br>  </td>
          <td>&nbsp;</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&eacute; *:</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&eacute;ro de s&eacute;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">&nbsp;
             <input type="text" name="date_creat_DT" id="" class="calendrier" size="8" />          </td>
           <td>
          Date arr&ecirc;t &eacute;quipement:         </td>
           <td colspan="2" width="23%">&nbsp; <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.

Pied de page des forums

Propulsé par FluxBB