Pb formulaire avec suppression par checkbox..

Résolu/Fermé
-RoRo- Messages postés 98 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 14 mai 2010 - 23 janv. 2010 à 19:54
-RoRo- Messages postés 98 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 14 mai 2010 - 24 janv. 2010 à 13:24
Bonjour à toutes et à tous. J'ai crée un tableau contennant différents comptes d'utilisateurs. Une colonne est dédiée à la suppression de comptes . Pour la suppression, j'utilise des checkbox et un bouton supprimer. Ensuite, je possède une colonne avec des liens permettant la modification de compte. Le problème, c'est que la modification de compte et la suppression ne fonctionnent plus. A force de changer mes lignes, ça ne fonctionne plus ! J'ai passé toute mon aprem, je n'arrive pas à croire que je n'ai pas réussit à résourdre mon problème...
Voici mes 2 scripts :

fichier ChangeData.php :
<html>

	
<?php
$host="localhost";
$user="root";
$pass="cr9myyw2gh";
$DataBase="Salmagne-music";


mysql_connect("$host","$user","$pass");                       
mysql_select_db("Salmagne-music");                            
$query="SELECT * FROM `Comptes` LIMIT 0 , 30";
$result = mysql_query($query);

$nbResults = mysql_num_rows($result);
echo "Comptes : $nbResults ";

$i="1";
$cases="1";


?>

<TABLE BORDER=1><tr> 
<th><center>Delete</center></th>
<th><center>Pseudos</center></th>
<th><center>Instruments</center></th>
<th><center>Prénoms</center></th>
<th><center>Noms</center></th>
<th><center>Mots de passe</center></th>
<th><center>Adresses mail</center></th>

<?php

      While ($i<$nbResults)
           {
  	             $i++;
	             $add=",$i";
	             $caseNew=$cases.$add;
	        	 $cases=$caseNew;
           }
		
  $a=$caseNew;
  $tableGet=array($a);

  $i=0;
  

      while ($tab = mysql_fetch_array($result))
           {
	         	$delete="delete".$i;
				echo $delete;
				
	   	        $identifiant=$tab[Identifiants];
		        $instrument=$tab[Instruments];
				$nom=$tab[Noms];
				$prenom=$tab[Prenoms];
				$password=$tab[Passwds];
				$adressemail=$tab[AdrsMail];
			   
			    $tableGet[$i]=$identifiant;

?>
              <form name="<?php echo $i; ?>" method="post" action="ChangeDataSecond.php">
               <tr>
               	
              <td><input type="checkbox" name="<? echo $delete; ?>" id="delete" value="<?php echo $identifiant; ?>"></td>
 
			   
  		       <td><a href="javascript:document.forms['<?php echo $i; ?>'].submit();"><input type="hidden" name="<?php echo $i; ?>" value="<?php echo $identifiant;?>"><?php echo "$identifiant"; ?></href></input></a></td>
               <td><center><?php echo "$instrument" ?></center></td>
			   <td><center><?php echo "$nom" ?></center></td>
			   <td><center><?php echo "$prenom" ?></center></td>
			   <td><center><?php echo "$password" ?></center></td>
			   <td><center><?php echo "$adressemail" ?></center></td>
			  </tr>
		     
		  
<?php
	   $i++;
	       }
		   
echo "<input type='submit' id='delete' value='Supprimer'>";	   
echo "</form>";	   
	
 	   
mysql_close();

?>
<br><br>

		    
</table>
</html>


fichier ChangeDataSecond.php
<?php

$host="localhost";
$user="root";
$pass="cr9myyw2gh";
$DataBase="Salmagne-music";

mysql_connect("$host","$user","$pass");                       
mysql_select_db("Salmagne-music"); 

$query="SELECT *FROM `Comptes`";
$query="SELECT * FROM `Comptes`";
$result = mysql_query($query);

$result = mysql_query($query);
$nbResults = mysql_num_rows($result);

$j="0";	
$a="0";

while ($j<$nbResults)
   {	
   
        $delete=$_POST['delete'.$j];	

            if (empty ($_POST['delete'.$j]))
                  {
                  	  $a="1";
                      $cancel="DELETE FROM `Comptes` WHERE `Identifiants`='$delete'";
		              mysql_query($cancel);
					  
				  }
				    
			  if (($a="1")AND($j=="20"))
	           	  {
		              require("ChangeData.php");
		              exit();   // sans exit, le reste de la page s'affichera
		              break;
				  }
			$j++; 	  
	      
   }
   

$i="0";

while ($i<$nbResults)
   {
       $recup=$_POST[$i];
	   
       if (isset($_POST[$i]))
           {
               $recup=$_POST[$i];
               break;
           }
       $i++;
    }
	
$getID=$recup;


$query = " SELECT * FROM `Comptes` WHERE `Identifiants`= '$getID' ";
$rep=mysql_query($query);


while($tab=mysql_fetch_array($rep))
{
$pseudo_NEW=$tab[Identifiants];
$instrument_NEW=$tab[Instruments];
$nom_NEW=$tab[Noms];
$prenom_NEW=$tab[Prenoms];
$passwd_NEW=$tab[Passwds];	
$adrmail_NEW=$tab[AdrsMail];
}

$pseudoOLD=$pseudo_NEW;

?>

<html>
	<body>
	   	 <form name="formulaire" method="post" action="ChangeDataThird.php">
           
		    <?php	
			echo "<input type='hidden' name='identifiantStory' value='$pseudoOLD' >"; 
			?>	
			
			<?php 
			echo "Nom <input type='texte' name='nom' value='$nom_NEW'>";
			?>
			
            </br></br>		
			   
			<?php 
			echo "Prénom <input type='texte' name='prenom' value='$prenom_NEW'>";
			?>
					   
            <br></br>		   
			
			<?php
			echo "Adresse mail <input type='texte' name='adressemail' value='$adrmail_NEW'>";
			?>
			
            </br></br>	
				   
            <?php 
			echo "Instrument joué <input type='texte' name='instrument' value='$instrument_NEW'>";
			?>
					   
           </br></br>		   

	       <?php
		    echo "Identifiant <input type='texte' name='identifiant' value='$pseudo_NEW'> ";
			?>		   
            </br></br>		   

			<?php
			echo "Mot de passe <input type='texte' name='passwd' value='$passwd_NEW'> ";
			?>
			 
            </br></br>
	       
            <input type="submit" name="validation" value="modifier">
            </form>
    </body>
</html>
A voir également:

2 réponses

-RoRo- Messages postés 98 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 14 mai 2010 1
23 janv. 2010 à 22:32
J'ai légèrement modifié le fichier ChangeDataSecond et j'ai insérer un echo. Et bizzarement, je ne reçois pas de valeurs.

while($j<$nbResults)
   {	
        $receive="'delete'.$j";
        $delete=$_POST[$receive];
------------->     echo $delete;     <--------------------
            //if (!empty($_POST[$receive]))   // ATTENTION : empty que pour les booléens
			if (empty($delete))
                  {
                  	
                  	echo $delete;
                  	  $a="1";
                      $cancel="DELETE FROM `Salmagne-music`.`Comptes` WHERE `Comptes`.`Identifiants` = '$delete'";
		              mysql_query($cancel);
					  
				  }
			$j++; 	 
	      
   }
 if ($a="1")
	           	  {
		              require("ChangeData.php");
		              exit();  
				  }
0
-RoRo- Messages postés 98 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 14 mai 2010 1
24 janv. 2010 à 13:24
Enfin, j'ai trouvé ! J'ai organisé mon script d'une autre façon. Tout d'abord, j'ai créé un tableau qui va recevoir 2 tableaux. Dans le tableau principale, j'ai donc mon tableau de suppression de comptes et un tableau de modification de comptes. Ceci m'a ammené à effectuer deux formulaires avec deux actions différentes. Pour le tableau de suppression de compte, je fais appel à un fichier nommé DeleteAccount.php. Et pour la modification de compte, je fais appel à Change!dataSecond.php
Au final, dans mon tableau principal, j'aurai deux tableaux côte à côte.


J'espère que ça pourra aider certains :

ChangeData.php :
<html>

	
<?php
$host="localhost";
$user="root";
$pass="cr9myyw2gh";
$DataBase="Salmagne-music";


mysql_connect("$host","$user","$pass");                       
mysql_select_db("Salmagne-music");                            
$query="SELECT *FROM `Comptes` LIMIT 0 , 30";
$result = mysql_query($query);

$nbResults = mysql_num_rows($result);
echo "Comptes : $nbResults ";

$i="1";
$cases="1";

?>
<input type="button" onclick = "document.getElementById('form1').submit()" value="supprimer">

<TABLE BORDER=1>
	<tr> 
       <td>
          <TABLE BORDER=0>
          	 <tr> 
              <th><center>Delete</center></th>
			 </tr>
			  
              <?php
                   $tableGet=array($a);

                   $i=0;

                   while ($tab = mysql_fetch_array($result))
                         {
	         	              $identifiant=$tab[Identifiants];
		                      $instrument=$tab[Instruments];
				              $nom=$tab[Noms];
				              $prenom=$tab[Prenoms];
				              $password=$tab[Passwds];
				              $adressemail=$tab[AdrsMail];
			   

                          $supprimer="supprimer".$i;        ?>

               <tr>	
		           <form method="post" name="<?php echo $supprimer; ?>" id="form1" action="DeleteAccount.php">
		                   <td> 
						        <center><input type="checkbox" name="<?php echo $supprimer; ?>" value="<?php echo $identifiant;?>"></center>
				           </td>
		       </tr>
		  
           <?php 
                          $i++; 
			          }
               echo "</form>";
               echo "</table>";
           ?> 
		   
	 <td>
	     <TABLE BORDER=0>
             <tr> 
	                 <th><center>Pseudos</center></th>
                     <th><center>Instruments</center></th>
                     <th><center>Prénoms</center></th>
                     <th><center>Noms</center></th>
                     <th><center>Mots de passe</center></th>
                     <th><center>Adresses mail</center></th></tr>

                     <?php                      
                     $query="SELECT *FROM `Comptes`";
                     $result = mysql_query($query);
                     $nbResults = mysql_num_rows($result);

                     $i=1;

                     while ($tab = mysql_fetch_array($result))
                             {
	         	                   $identifiant=$tab[Identifiants];
		                           $instrument=$tab[Instruments];
				                   $nom=$tab[Noms];
				                   $prenom=$tab[Prenoms];
				                   $password=$tab[Passwds];
				                   $adressemail=$tab[AdrsMail];
                     ?>
					 			   
                                   <tr>       
                                       <form name="<?php echo $i; ?>" method="post" action="ChangeDataSecond.php">
		                                     <td><a href="javascript:document.forms['<?php echo $i; ?>'].submit();">
		                                     	     <input type="hidden" name="<?php echo $i; ?>" value="<?php echo $identifiant;?>" />
												      <?php echo "$identifiant"; ?>
									   </form>
											     </href>
										     </td>
                                             <td><center><?php echo "$instrument" ?></center></td>
			                                 <td><center><?php echo "$nom" ?></center></td>
			                                 <td><center><?php echo "$prenom" ?></center></td>
			                                 <td><center><?php echo "$password" ?></center></td>
			                                 <td><center><?php echo "$adressemail" ?></center></td>
			                           
			                        </tr>
		      
		  
                     <?php
	                           $i++;     
	                         } 
		              echo "</table>";
                      mysql_close();

                     ?>
					 
	        </td>
	   </tr>
	<TABLE BORDER=1>    
</table>

</html>



ChangeDataSecond.php :
<?php

$host="localhost";
$user="root";
$pass="cr9myyw2gh";
$DataBase="Salmagne-music";

mysql_connect("$host","$user","$pass");                       
mysql_select_db("Salmagne-music"); 

$query="SELECT *FROM `Comptes`";
$result = mysql_query($query);
$nbResults = mysql_num_rows($result);
$query="SELECT * FROM `Comptes`";
$result = mysql_query($query);


$i="0";

      while ($i<$nbResults)
           {
   	          $i++;
              $recup=$_POST[$i];
	   
              if (isset($_POST[$i]))
                    {
                         $recup=$_POST[$i];
                         break;
                    }
             }
	
$getID=$recup;


$query = " SELECT * FROM `Comptes` WHERE `Identifiants`= '$getID' ";
$rep=mysql_query($query);


       while($tab=mysql_fetch_array($rep))
            {
                 $pseudo_NEW=$tab[Identifiants];
                 $instrument_NEW=$tab[Instruments];
                 $nom_NEW=$tab[Noms];
                 $prenom_NEW=$tab[Prenoms];
                 $passwd_NEW=$tab[Passwds];	
                 $adrmail_NEW=$tab[AdrsMail];
             }

$pseudoOLD=$pseudo_NEW;

?>

<html>
	   <body>
	        	 <form name="formulaire" method="post" action="ChangeDataThird.php">
           
		              <?php	
			          echo "<input type='hidden' name='identifiantStory' value='$pseudoOLD' >"; 
			          ?>	
			
			          <?php 
			          echo "Nom <input type='texte' name='nom' value='$nom_NEW'>";
			          ?>
			
                      </br></br>		
			   
			          <?php 
			          echo "Prénom <input type='texte' name='prenom' value='$prenom_NEW'>";
			          ?>
					   
                      <br></br>		   
			
			          <?php
			          echo "Adresse mail <input type='texte' name='adressemail' value='$adrmail_NEW'>";
			          ?>
			
                      </br></br>	
				   
                      <?php 
			          echo "Instrument joué <input type='texte' name='instrument' value='$instrument_NEW'>";
			          ?>
			 		   
                      </br></br>		   

	                  <?php
		              echo "Identifiant <input type='texte' name='identifiant' value='$pseudo_NEW'> ";
			          ?>		   
                     
					  </br></br>		   

			          <?php
			          echo "Mot de passe <input type='texte' name='passwd' value='$passwd_NEW'> ";
			          ?>
			 
                      </br></br>
	       
                  <input type="submit" name="validation" value="modifier">
                
			 </form>
      </body>
</html>





DeleteAccount.php
:
<?php
$host="localhost";
$user="root";
$pass="cr9myyw2gh";
$DataBase="Salmagne-music";

mysql_connect("$host","$user","$pass");                       
mysql_select_db("Salmagne-music");    
$query="SELECT *FROM `Comptes`";
$result = mysql_query($query);
$nbResults = mysql_num_rows($result);

$i=0;

     while ($i<$nbResults)
           {
	            $supprimer="supprimer".$i;
	            $supprimer=$_POST[$supprimer];    //ATTENTION = pas $supprimer=$_POST['$supprimer'];
	 
	            if (!isset($_POST[$supprimer]))
                       {
                            $cancel="DELETE FROM `Salmagne-music`.`Comptes` WHERE `Comptes`.`Identifiants` ='$supprimer'";
                            mysql_query($cancel);
                       } 
	            $i++;
            }


require("ChangeData.php");
exit();

?>
0