8791 sujets

Développement web côté serveur, CMS

bonjour à tous!!!!
je voudrais ajouter à ce code un checkbox qui a la fonction selectionner tout . c'est à dire quand je clique dessus il coche toute les cases.

<table width="751">
<tr>

<td width="19" class="Style152">Selectionner</td>
  <td width="192" class="Style152">Ville</td>
<td width="273" class="Style152">Nom</td>
<td width="270" class="Style152">Adresse email</td>


</tr>
<?php
 
$liste_inscrits_vrac = mysql_query("SELECT zone, nom, prenom ,mail FROM shop_client"); //on récupère la table newsletter en vrac
    while ($donnees = mysql_fetch_array($liste_inscrits_vrac))
    {
?>

<tr>

<td height="33" class="Style15"  > 
<input type="checkbox" name="list[]" id="list" value="<?=$tab['id']?>" /></form></td>
</div>

<td class="Style15"><?php echo ($donnees['zone']); ?></td>


<td class="Style15"><?php echo ($donnees['nom']); ?>  <?php echo ($donnees['prenom']); ?> </td>


<td class="Style15"><?php echo ($donnees['mail']); ?></td>
</tr>
 
<?php
    }
?>
</table><br/>

j'espere que quelequ'un a une idée comment faire ça!! merci d'avance! Smiley smile
Modifié par nounou85 (21 May 2011 - 15:39)
bjr, je tiens à te remercie pour l'attention que t'a donné pour mon sujet. j'ai essayé le code mais ça ne marche tjrs pas!!
Smiley decu
Bonjour,

Attention, ce que tu essayes de faire se déroule côté client et non pas serveur.

Sinon en Js, je pense que je tenterais de faire comme ça:
1) ajouter une classe à tous les checkbox du groupe, ou récupérer un array en parcourant le DOM.
2) utiliser ce code à la fin du chargement des checkboxs (ou de body pour mieux faire):

// recuperation de la liste par la classe 'checkb1'
var checkb1 = getElementsByClassName('checkb1'),
    nbr_checkb1 = checkb1.length;

for (var x = 0; x < nbr_checkb1; x++) {
    checkb = checkb1[x];
    checkb.onclick = function() {
        for (var x = 0; x < nbr_checkb1; x++) {
            checkb = checkb1[x];
            checkb.checked;
        }
    }
}


Je n'ai pas testé mais l'idée est bonne il me semble. Par contre la syntaxe est un peu lourde, jQuery serait plus adapté.

Bonne chance Smiley smile
Bonjour,

Ceci peut peut-être t'inspirer :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
    <title> Cocher tous les checkbox </title>
    <script type="text/javascript">
//<![CDATA[
        function cocher(){
          var v = document.getElementsByName('list[]');
          if(document.getElementById("cocher_tout").checked == true){
             for (i=0;i<v.length;i++){document.getElementById("list"+i).checked = true;}
          }
          else{
             for (i=0;i<v.length;i++){document.getElementById("list"+i).checked = false;}
          }
        }
    //]]>
    </script>
  </head>
  <body>
    <form action="#" id="frm" name="frm">
      <input type="checkbox" name="list[]" id="list0" value="valeur1" />valeur1<br />
      <input type="checkbox" name="list[]" id="list1" value="valeur2" />valeur2<br />
      <input type="checkbox" name="list[]" id="list2" value="valeur3" />valeur3<br />
      <input type="checkbox" name="list[]" id="list3" value="valeur4" />valeur4<br />
      <input type="checkbox" name="list[]" id="list4" value="valeur5" />valeur5<br />
      <br />(dé)Sélectionner tout
      <input type="checkbox" value="Cocher tout" id="cocher_tout" onclick="cocher();" />
    </form>
  </body>
</html>