Petit problème en PHP/JAva - Programmation
TomsGuide.com : 700 000 inscrits répondent à toutes vos questions high-tech et informatique.
Pour obtenir de l'aide, inscrivez-vous gratuitement !
 




Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : Petit problème en PHP/JAva
 
Profil : IDNaute
Plus d'informations

Voil j'explique mon problème. Nous avons un projet a faire en DUT, et le but est de faire un site Web avec base de données, etc... Donc ce qui implique PHP, CSS, HTML, SQL. Tous ces langages sont assez nouveaux pour nous. Bon enfin bref là n'est pas le problème, mon problème est en fait le fait que j'essaye de faire cocher toutes les checkbox d'un coup (j'ai été récupéré le code sur le net), donc pour une de mes pages ca marche tres bien, alors que pour une autre page ça ne marche pas. Je me demande si cela ne vient pas du fait que je fais mes checkbox directement en faisant appel à ma base de données. Bon je sais pas si c'est bien claire lol, donc voilà le code :


Entre les balises <head> on a ca :

Code :
  1. <SCRIPT LANGUAGE="JavaScript">
  2. function checkAll()  <!-- Cette fonction permet de cocher toutes les cases de type checkbox ayant pour nom cb* -->
  3. {
  4. for (var j = 1; j <= 5; j++)
  5.     {
  6.     box = eval("document.checkform.cb" + j);
  7.     if (box.checked == false) box.checked = true;
  8.       }
  9. }
  10. function uncheckAll() <!-- Cette fonction permet de décocher toutes les cases de type checkbox ayant pour nom cb* -->
  11. {
  12.     for (var j = 1; j <= 5; j++)
  13.     {
  14.     box = eval("document.checkform.cb" + j);
  15.     if (box.checked == true) box.checked = false;
  16.     }
  17. }
  18. <!--
  19.   window.onload=montre;
  20.   function montre(id) {
  21.   var d = document.getElementById(id);
  22.       for (var i = 1; i<=10; i++)
  23.               {
  24.             if (document.getElementById('smenu'+i))
  25.                             {
  26.                                     document.getElementById('smenu'+i).style.display='none';}
  27.                   }
  28.   if (d)
  29.   {
  30.               d.style.display='block';}
  31.   }
  32.   //-->
  33. </script>



Et dans le code principal :

Code :
  1. <?php
  2. $titre_page='Vous êtes sur la page de Suppression';
  3. include "entete.inc";
  4. require "connexionBD.php";
  5. $lien=seConnecter();
  6. $resultat=executerRequeteBD($lien, "SELECT Titre,nomA,prénomA from reference, auteur, ecrire,typeref
  7. WHERE type='journal' AND auteur.Idauteur=ecrire.Idauteur AND ecrire.Idref=reference.Idref AND typeref.Idref=reference.Idref" );
  8. ?>
  9. <form action="suite.php" method="post" name=checkform>
  10. <table>
  11. <dl id="menu">
  12.           <dt onclick="javascript:montre('smenu2');">Conférence</dt>
  13.              
  14. <?php
  15. echo'<dd id="smenu2">
  16.                   <ul>';
  17.         while($choix = mysql_fetch_array($resultat) )
  18. {
  19. echo'<li>'.$choix[0].'<input type=checkbox value="'.$choix[0].'" name=cb[0]></li>';
  20. }
  21. ?>
  22.                   </ul>
  23.               </dd>
  24. </dl>
  25.   </table>
  26.   <input type=button value="Sélectionner tout" onClick="checkAll()">&nbsp;&nbsp;&nbsp;<input type=button value="Dé-sélectionner tout" onClick="uncheckAll()"><br/><br/>
  27.   </form>



Voilà si quelqu'un pouvait m'aider ca serait sympa. :)

Bonne journée a tous.

Liens sponsorisés


Inscrivez-vous ou connectez-vous pour masquer ceci.

Profil : IDNaute
Plus d'informations

faut accorder les noms des checkbox.
en php tu les appelles tous cb[0]
et en javascript c'est cb0, cb1 ...

Profil : IDNaute
Plus d'informations

Ce qui veut dire qu'il faut que je fasse quoi? :$

Profil : IDNaute
Plus d'informations

lire ton cours
lire les tutoriaux de ce genre de site:
http://www.phpdebutant.org/
http://www.siteduzero.com/
ou alors attendre qu'un gars bien gentil te fasse tes devoirs

Profil : IDNaute
Plus d'informations

Lol merci mais je n'ai pas de cours, :) on se doit d'apprendre ce genre de langage tout seul, donc c'est pour ca que j'ai cherché une petite aide, m'enfin ...

Profil : IDNaute
Plus d'informations

si une checkbox s'appelle toto:

Code :
  1. <input type="checkbox" name="toto"/>


pour y acceder en javascript:
document.checkform.toto

si tu l'appelle toto1, document.checkform.toto ne pointera sur rien du tout

apres c'est logique

Profil : IDNaute
Plus d'informations

Oui mais si je les appelles toutes "toto", document.checkform.toto devrait pointer vers toutes les checkbox. Alors que là ce n'est pas le cas, il me coche aucune des cases...

Profil : IDNaute
Plus d'informations

... t'as qu'a les appeler cb0, cb1 etc... mais dans les 2 codes et non cb[0] dans l'un et cb0 dans l'autre

Profil : IDNaute
Plus d'informations

Oui mais comme je génère chaque checkbox, comment je fais pour permettre au cb de s'auto incrémenter tout seul?
Je sais je parais newbie, mais je m'y connais pas encore beaucoup

Profil : IDNaute
Plus d'informations

hellnino a écrit :

Oui mais comme je génère chaque checkbox, comment je fais pour permettre au cb de s'auto incrémenter tout seul?
Je sais je parais newbie, mais je m'y connais pas encore beaucoup



Ecoute mon vieux ! Tu as la bonne inspiration et le bon reflexe.

Pourquoi ça ne marche pas ? Parce que tu gère comme un tableau. Sur le net le tableau c'est bien ! mais se transporte élément par élément. Jamais en block.

Pour rester strictement à ton problème

comme dans le JavaScript tu utilise les A0, A1, A2 ....
Dans le php
commence par initialiser $i=0; //hors de la boucle while.
Ensuite, chaque fois que tu génère un nouvel <input name="A$i" id="A$i" value="tavaleur" ... >
tu fais aussi $i++
et tu fermes le while.

Ainsi quand tu vas récupérer les Ai dans le javaScript tu n'aura plus de surprises.

Essaie. Cela doit marcher.
A+


  FORUM Infos-du-Net » Programmation » Petit problème en PHP/JAva

Aller à :
 

Liens