Adaptation de code ... aidez moi please
arcadia77
Messages postés
7
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour à tous,
Merveilleuse source d'information que vous êtes, j'ai besoin de votre aide !!!
Voila mon probleme :
J'ai cette requete qui fonctionne très bien sur avec un select
Voici ma requete $sql
$sql = mysql_query("SELECT * FROM liste_services order by service");
Voila ma question !
J'aurai besoin de faire exactement la même chose avec des cases a cocher !
Quelqu'un peut m'aider ???
S'il vous manque des infos n'hesitez pas... :-)
D'avance merci !
Christophe
Merveilleuse source d'information que vous êtes, j'ai besoin de votre aide !!!
Voila mon probleme :
J'ai cette requete qui fonctionne très bien sur avec un select
<?php
$rows = mysql_num_rows($sql);
if(isset($rows))
{
while($data = mysql_fetch_array($sql))
{
$selected="";
if ($data[1]==$service)
{
$selected=" selected=\"selected\"";
}
echo "<option value=\"".$data[1]."\"".$selected.">".$data[2]."</option>\n";
}
}
?>
Voici ma requete $sql
$sql = mysql_query("SELECT * FROM liste_services order by service");
Voila ma question !
J'aurai besoin de faire exactement la même chose avec des cases a cocher !
Quelqu'un peut m'aider ???
S'il vous manque des infos n'hesitez pas... :-)
D'avance merci !
Christophe
A voir également:
- Adaptation de code ... aidez moi please
- Code ascii - Guide
- Code puk bloqué - Guide
- Code de déverrouillage oublié - Guide
- Code activation windows 10 - Guide
- Scanner qr code pc - Guide
3 réponses
<?php
$rows = mysql_num_rows($sql);
if(isset($rows))
{
while($data = mysql_fetch_array($sql))
{
$checked="";
if ($data[1]==$service)
{
$checked=" checked=\"checked\"";
}
print "<input type=\"checkbox\" value=\"".$data[1]."\"".$checked.">".$data[2]."\n";
}
}
?>
Pense à mettre un attribut name aux input checkbox.
Et puis éventuellement attribut id aux input avec un label for sur le texte (c'est bien plus pratique) : https://www.aplawrence.com/Blog/B993.html
Merci Bizu ...
Mais alors à priori mon probleme ne viendrais donc pas de la.
En fait, je te plante le decors ...
1er formulaire avec des checkboxs. Lors du post, je sérialise toute la série de case a cocher, et la je recupere dans la BDD la valeur sérialisée des cases.
//serialisation liste de diffusion
$tableau_2=array($_POST['listediffusion']);
$stableau_2=serialize($tableau_2);
Sur un autre formulaire, je récupere le champs sérialisé de la BDD, la je déserialise, j'obtiens bien la liste des cases qui etaient cochées. - jusque la tout va bien -
$nom_listes_diff1 = unserialize ($nom_listes_diff);
foreach($nom_listes_diff1[0] as $selectValue)
{
echo $selectValue." ";
}
alors c'est a partir de la ou je dois recocher les cases précedement cochées.
donc je voulais utiliser cette méthode, mais ca fonctionne pas ...
Une idée ??
D'avance merci
Christophe
Mais alors à priori mon probleme ne viendrais donc pas de la.
En fait, je te plante le decors ...
1er formulaire avec des checkboxs. Lors du post, je sérialise toute la série de case a cocher, et la je recupere dans la BDD la valeur sérialisée des cases.
//serialisation liste de diffusion
$tableau_2=array($_POST['listediffusion']);
$stableau_2=serialize($tableau_2);
Sur un autre formulaire, je récupere le champs sérialisé de la BDD, la je déserialise, j'obtiens bien la liste des cases qui etaient cochées. - jusque la tout va bien -
$nom_listes_diff1 = unserialize ($nom_listes_diff);
foreach($nom_listes_diff1[0] as $selectValue)
{
echo $selectValue." ";
}
alors c'est a partir de la ou je dois recocher les cases précedement cochées.
donc je voulais utiliser cette méthode, mais ca fonctionne pas ...
Une idée ??
D'avance merci
Christophe
J'ai un peu progressé mais c'est pas encore ca ! (merci Bizu53)
voici la nouvelle tete du code :
<?php
$colonne = 0;
$rows2 = mysql_num_rows($sql2);
if(isset($rows2))
{
while ($data2 = mysql_fetch_array($sql2))
{
$nom_listes_diff1 = unserialize ($nom_listes_diff);
foreach($nom_listes_diff1[0] as $selectValue)
{
$checked="";
if ($data2[2]==$selectValue)
{
$checked=" checked=\"checked\"";
echo "<tr>\n";
echo "<td class=\"title\" TITLE='".$data2[2]."'><input type=\"checkbox\" name='".$data2 [2]."' ".$checked.">".$data2[2]."</input>";
}
if (0 == $colonne)
//echo "<tr>\n";
//echo "<td class=\"title\" TITLE='".$data2[2]."'><input type=\"checkbox\" name='".$data2[2]."' ".$checked.">".$data2[2]."</input>";
$colonne = ($colonne + 1) % 4; // affichage sur 4 colonnes
if (0 == $colonne)
echo "</tr>\n\n";
}
}
}
if ($colonne != 0)
echo "</tr>";
?>
A ce stade, je récupère exclusivement les cases cochées !
mais pas celles qui ne le sont pas du 1er formulaire et je les veux !
Dans le cas ou je place des commentaires dans la boucle if ($data2[2]==$selectValue), et que je decommente les lignes suivantes :
//echo "<tr>\n";
//echo "<td class=\"title\" TITLE='".$data2[2]."'><input type=\"checkbox\" name='".$data2[2]."' ".$checked.">".$data2[2]."</input>";
je me recupere autant de fois la meme case à cocher qu'il y a de case cochées et cela pour toutes (c'est pas clair du tout mais je ne sais pas comment le dire autrement !) par contre, j'ai celles qui n'ont pas été cochées du 1er formulaire !
Help me !!!
Thanks
Christophe
voici la nouvelle tete du code :
<?php
$colonne = 0;
$rows2 = mysql_num_rows($sql2);
if(isset($rows2))
{
while ($data2 = mysql_fetch_array($sql2))
{
$nom_listes_diff1 = unserialize ($nom_listes_diff);
foreach($nom_listes_diff1[0] as $selectValue)
{
$checked="";
if ($data2[2]==$selectValue)
{
$checked=" checked=\"checked\"";
echo "<tr>\n";
echo "<td class=\"title\" TITLE='".$data2[2]."'><input type=\"checkbox\" name='".$data2 [2]."' ".$checked.">".$data2[2]."</input>";
}
if (0 == $colonne)
//echo "<tr>\n";
//echo "<td class=\"title\" TITLE='".$data2[2]."'><input type=\"checkbox\" name='".$data2[2]."' ".$checked.">".$data2[2]."</input>";
$colonne = ($colonne + 1) % 4; // affichage sur 4 colonnes
if (0 == $colonne)
echo "</tr>\n\n";
}
}
}
if ($colonne != 0)
echo "</tr>";
?>
A ce stade, je récupère exclusivement les cases cochées !
mais pas celles qui ne le sont pas du 1er formulaire et je les veux !
Dans le cas ou je place des commentaires dans la boucle if ($data2[2]==$selectValue), et que je decommente les lignes suivantes :
//echo "<tr>\n";
//echo "<td class=\"title\" TITLE='".$data2[2]."'><input type=\"checkbox\" name='".$data2[2]."' ".$checked.">".$data2[2]."</input>";
je me recupere autant de fois la meme case à cocher qu'il y a de case cochées et cela pour toutes (c'est pas clair du tout mais je ne sais pas comment le dire autrement !) par contre, j'ai celles qui n'ont pas été cochées du 1er formulaire !
Help me !!!
Thanks
Christophe