Je vous expose un problème auquel je suis confronté depuis un bout de temps.J'ai affiché un ensemble d'enregistrement dans un formulaire avec un checkbox pour chaque ligne.L'idée est de récupérer les informations et le nombres des lignes cochées dans des variables de sessions pour pouvoir les renvoyer sur un autres pages en vue de procéder à leur traitement
voici mon code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=UTF-8"/>
<title>Acceuil administrateur</title>
<link href="feuille.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="bloc-fixe">
<a href="deconnexion.php">
<?php
session_start();
echo '<br/>';
//echo ' ';
$user_con=$_SESSION['login'];
echo "Déconnexion [$user_con]";
?>
</a>
</div>
<div id="contenu">
<ul id="menuDeroulant">
<li>
<a href="#">Gestion des users</a>
<ul class="sousMenu">
<li><a href="#">Liste</a></li>
<li><a href="nouveau.php">Nouveau</a></li>
</ul>
</li>
<li>
<a href="#">MAJ Services</a>
<ul class="sousMenu">
<li><a href="#">Famille Amis</a></li>
<li><a href="#">Cub20</a></li>
<li><a href="#">Internet Mobil</a></li>
<li><a href="#">Ya bussiness</a></li>
</ul>
</li>
<li>
<a href="#">MAJ Informations</a>
<ul class="sousMenu">
<li><a href="acceuil-administrateur.php">Pharmacies</a></li>
<li><a href="#">News</a></li>
</ul>
</li>
<li>
<a href="#">Rapports</a>
<ul class="sousMenu">
<li><a href="acceuil.php">Services</a></li>
<li><a href="#">Informations</a></li>
</ul>
</li>
<li>
<a href="prechargement.php">Préchargement</a>
</li>
</ul>
<form action= "<?php echo $_SERVER['PHP_SELF'];?>" method="post" enctype="application/x-www-form-urlencoded">
<?php
if ($_SESSION['login']!=NULL){
ini_set('display_errors','1');
//Inclusion de la classe mère
include ("SGBD.class.php");
/* Initialisation de la variable du SGBD correspondant */
$SQL = "MySQL";
// Inclusion de la classe fille du SGBD correspondant
include ($SQL.".SGBD.class.php");
/* Création d'un nouvel objet de la classe fille + lancement du constructeur */
$database = new $SQL('root', '', 'localhost', 'dbprojet');
// Connection à la base de données
$database->connect();
//-----------------------------------------------------------------------------------------------------------------------
//Fonction de suppression
//-------------------------------------------------------------------------------------------------------------------
if ( !empty($_POST['submit']) && $_POST['submit']=='Supprimer') {
if ( !empty($_POST['check']) && is_array($_POST['check'])) {
array_walk($_POST['check'],create_function('$value','return mysql_real_escape_string($value);'));
$requete = 'DELETE FROM USERS where login in (\''.implode('\',\'',$_POST['check']).'\');';
$date = date("d-m-Y");
$heure = date("H:i");
$database->requete("INSERT INTO TRACE_USER VALUES ('', '$login', '$date', 'delete' , '$heure')");
$database->requete($requete);
}
}
//------------------------------------------------------------------------------------------------------------------------------------
//Fin Suppression
//------------------------------------------------------------------------------------------------------------------------------------
$database->requete("SELECT login, nom, prenoms, root FROM USERS ");
if (mysql_num_rows($database->requete) > 0) {
$nb=mysql_num_rows($database->requete);
echo '<p> </p>';
echo '<hr align="left" width="64%" color="red" size="1">';
echo'<form action="acceuil-administrateur.php" method="post">';
echo'<input type="submit" name="submit" value="Modifier"/> ';
echo'<input type="submit" name="submit" value="Supprimer"/><br />';
echo "$nb utilisateur(s) enregistré(s)";
//---------------------------------------------------------------------------------------------------------
// Affichage des utilisateurs dans le tableau
//---------------------------------------------------------------------------------------------------------
if(( $data = mysql_fetch_array($database->requete))!= NULL)
{
echo '<table bgcolor="#FFFFFF" width="650px">'."\n";
echo '<tr height="25" id="legend">';
echo '<td align="center"><b> </b></td>';
echo '<td align="center"><b>Login</b></td>';
echo '<td align="center"><b>Nom</b></td>';
echo '<td align="center"><b>Prénom(s)</b></td>';
echo '<td align="center"><b>Root</b></td>' ;
echo '</tr>'."\n";
do
{
echo '<tr>';
echo '<td height="3" align="center"><input type="checkbox" name="check[]" id="administrateur" value="'.$data['login'].'" onchange="colorier(this);"/></td>';
echo '<td bgcolor="#f3fbff" height="25" align="center"> '.$data['login'].'</td>';
echo '<td bgcolor="#f3fbff" height="25" align="center"> '.$data['nom'].'</td>';
echo '<td bgcolor="#f3fbff" align="center" height="25">'.$data['prenoms'].'</td>';
echo '<td bgcolor="#f3fbff" align="center" height="25">'.$data['root'].'</td>';
echo '</tr>'."\n";
}while(( $data = mysql_fetch_array($database->requete))!= NULL);
echo '</table>'."\n";
echo '<p> </p>';
}
}
//----------------------------------------------------------------------------------------------------------
//Fin fonction d'affichage
//---------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------------------
//Fonction de modification
//------------------------------------------------------------------------------------------------------------------------------------
if ( !empty($_POST['submit']) && $_POST['submit']=='Modifier') {
$check=$_POST['check'];
$_SESSION["check"]=$check;
$c = count($_POST['check']);
$_SESSION["var1"]=$c;
if ( !empty($_POST['check']) && is_array($_POST['check'])) {
array_walk($_POST['check'],create_function('$value','return mysql_real_escape_string($value);'));
for ($i = 0;$i < $c; $i++)
{
$database->requete=("select login,nom,prenoms,root from USERS where login='$check[$i]'");
for($j=0;$j<mysql_num_rows($database->requete);$j++)
{
$lignes=mysql_fetch_array($database->requete,MYSQL_BOTH);
}
$login[$i]=$lignes['login'];
$nom[$i]=$lignes['nom'];
$prenoms[$i]=$lignes['prenoms'];
$root[$i]=$lignes['root'];
$_SESSION["login$i"]=$login[$i];
$_SESSION["noms$i"]=$noms[$i];
$_SESSION["prenoms$i"]=$prenoms[$i];
$_SESSION["root$i"]=$root[$i];
echo "$_SESSION[noms$i]";
}
}
}
//------------------------------------------------------------------------------------------------------------------------------------
//Fin de la fonction de modification
//-----------------------------------------------------------------------------------------------------------------------------------
}else
{
header("Location: index.php" );
}
$database->deconnect();
?>
<!------------------------------------------------------------------------------------------------------------------------------------>
<!--Fonction permettant de changer la couleur d'un checkbox selectionné-->
<script>
function colorier(quoi)
{ if ( quoi.checked )
quoi.parentNode.parentNode.style.backgroundColor="#B0D8E8";
else quoi.parentNode.parentNode.style.backgroundColor="#B0D8E8";
}
</script>
</form>
</div>
</body>
</html>