triple table et checkbox

triple table et checkbox - PHP - Programmation

Marsh Posté le 28-02-2008 à 20:59:54    

salut
 
j ai un probleme avec un table de droit au administrateur
 
je voudrai faire un tableau ou on donne les droits (sur un forum) au gens de pouvoir creer un nouveau sujet, repondre, ou meme aller sur les page reserver au moderateur et administrateur
 
j ai 3 table dans ma base de donner groupe, droit, et droit_groupe
 
j arrive bien a recuperer les donner dans ces table mais je n arrive pas a faire en sorte qu au moment de cocher une de ces case une nouvelle ligne apparaisse dans ma table  
du coup quand je coche une case sa refresh mais la case ne reste pas cocher et dans ma bdd rien a changer
 
mon tableau  
<form action='admin_groupe.php' method='post'>
<input type="hidden" name="enregistre" value="oui"/>
 
<table>
<tr>
<td>groupe</td>
 
<?php  
 
$sql = "SELECT * FROM droit";
$resultat = mysql_query ($sql);
 
while ($droit = mysql_fetch_array ($resultat))
{
 echo "<td>". $droit['nomdroit'] ."</td>";
}
echo"</tr>";
 
$sql3 = "SELECT * FROM groupe";
$resultat3 = mysql_query ($sql3);
 
while ($groupe = mysql_fetch_array ($resultat3))
{
 
echo "<tr>";
echo "<td>".$groupe['groupe']."</td>";
 
 $sql = "SELECT * FROM droit";
 $resultat = mysql_query ($sql);
 
 while ($droit = mysql_fetch_array ($resultat))
 {
echo "<td>";//.$groupe['groupe']."-".$droit[nomdroit]."-";
 
  $sql4 = "SELECT * FROM droit_groupe where ( idgroupe=".$groupe['idgroupe']." and iddroit=".$droit['iddroit']." )";
  $resultat4 = mysql_query ($sql4);
  //echo mysql_num_rows($resultat4);  
  if (mysql_num_rows($resultat4)==1)
  {
   echo "<input type='checkbox' name='modifier[]' checked='true' value='$id' />";
   $iddroit = $droit['iddroit'];
   $idgroupe = $groupe['idgroupe'];
  }
  else
  {
   echo "<input  type='checkbox'/>";
  }
echo "</td>";
 }
 
echo "</tr>";
 
}
 
?>
 
</table>
<input type='submit' value='modifier'>
 
</form>
 
voila merci

Reply

Marsh Posté le 28-02-2008 à 20:59:54   

Reply

Marsh Posté le 29-02-2008 à 00:46:22    

les requetes dans les boucles sont à bannir
en apprenant les jointures en SQL tu fais la meme chose en 1 requete

Reply

Marsh Posté le 29-02-2008 à 00:49:47    

J'ai pas tout saisi. Tu veux faire un panneaux d'administration pour définir des droits, c'est ça?
 
Quel est le souci exactement parce que j'ai même pasenvie de comprendre ton pavé (utilises [code=php][/code] )

Reply

Marsh Posté le 29-02-2008 à 07:23:27    

dsl j avait pas trouver le bouton pour les code je te le remet avec les balises
 
et oui j ai fait un tableau pour les droit des administrateur mais j arrive pas a enregistrer le faite que j ai cocher/decocher un case dans ma bdd
 
ma table droit_groupe reprend mon iddroit (le droit d ecrire repondre ou devoir cetaine page)de ma table droit et mon idgroupe (admin, moderateur, membre, visiteur)de ma table groupe
 

Code :
  1. <form action='admin_groupe.php' method='post'>
  2. <input type="hidden" name="enregistre" value="oui"/>
  3.  
  4. <table>
  5. <tr>
  6. <td>groupe</td>
  7.  
  8. <?php  
  9.  
  10. $sql = "SELECT * FROM droit";
  11. $resultat = mysql_query ($sql);
  12.  
  13. while ($droit = mysql_fetch_array ($resultat))
  14. {
  15. echo "<td>". $droit['nomdroit'] ."</td>";
  16. }
  17. echo"</tr>";
  18.  
  19. $sql3 = "SELECT * FROM groupe";
  20. $resultat3 = mysql_query ($sql3);
  21.  
  22. while ($groupe = mysql_fetch_array ($resultat3))
  23. {
  24.  
  25. echo "<tr>";
  26. echo "<td>".$groupe['groupe']."</td>";
  27.  
  28. $sql = "SELECT * FROM droit";
  29. $resultat = mysql_query ($sql);
  30.  
  31. while ($droit = mysql_fetch_array ($resultat))
  32. {
  33. echo "<td>";//.$groupe['groupe']."-".$droit[nomdroit]."-";
  34.  
  35.  $sql4 = "SELECT * FROM droit_groupe where ( idgroupe=".$groupe['idgroupe']." and iddroit=".$droit['iddroit']." )";
  36.  $resultat4 = mysql_query ($sql4);
  37.  //echo mysql_num_rows($resultat4);  
  38.  if (mysql_num_rows($resultat4)==1)
  39.  {
  40.   echo "<input type='checkbox' name='modifier[]' checked='true' value='$id' />";
  41.   $iddroit = $droit['iddroit'];
  42.   $idgroupe = $groupe['idgroupe'];
  43.  }
  44.  else
  45.  {
  46.   echo "<input  type='checkbox'/>";
  47.  }
  48. echo "</td>";
  49. }
  50.  
  51. echo "</tr>";
  52.  
  53. }
  54.  
  55. ?>
  56.  
  57. </table>
  58. <input type='submit' value='modifier'>
  59.  
  60. </form>


 
voila  
 
mon probleme c est que je ne sais pas trop comment reprendre les checkbox pour les enregistrer dans ma bdd
 
merci

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed