IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Checkbox dans un while [Débutant(e)]


Sujet :

PHP & Base de données

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 7
    Points : 1
    Points
    1
    Par défaut Checkbox dans un while
    Bonjour a tous , tout d'abord désolé pour le titre mais étant donné que c'est a cause de ça que je bloque ....
    Alors voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <?
    mysql_connect('localhost','root','');
    if (mysql_select_db('mabase'))
    {
    $requete="select * from projet ";
    $res=mysql_query($requete);
     
    while($ligne=mysql_fetch_array($res))
    {echo '<br>'."<div id=case> <INPUT TYPE=checkbox NAME='box' ></div>";
    echo "<div id=case2> ".$ligne['titre-proj']."</div>";
    echo "<div id=case3>".$ligne['design-projet']."</div>";
    echo "<div id=case4>".$ligne['organisme financeur']."</div>".'<br>';
    }
    }
    echo '<br>'. '<input type="button" value="Supprimer" name="Bt_supr">';
    echo '<input type="button" value="Modifier" name="Bt_modif">';
    echo '<input type="button" value="Ajouter" name="Bt_ajout">';
    Vous l'avez compris, j'aimerais que qu'une fois une case (qui correspond a une lige )est cochée et que l'onclique sur supprimer ou modiffier ben ça supprime ou modifie un tuple.
    Seulement voila , je suis un peu débutant et meme si je connais les bases du SQL et du php je ne sais pas comment m y prendre , ou rentrer le DELETE... et le UPDATE, je ne sais utiliser que le Submit et le Form method = Post qui appele une autre page.
    Si je n'ai pas été assez clair ou si vous avez besoin d'autre chose n'hésitez pas .
    Merci d'avance.

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Points : 206
    Points
    206
    Par défaut
    La méthode de ton formulaire c'est GET ou POST ?
    Nulla dies sin linea

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    De qu'el formulaire parles tu .?? le CSS mis a part la totalité de mon code est postée..

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Points : 206
    Points
    206
    Par défaut
    Il faut que tu utilises les fonctions onClick() et form.submit() de javascript sur chacun de tes boutons.

    Ainsi lorsque tu appuies sur un bouton ton traitement récupérera la valeur du bouton.
    Derrière tu fais des tests et selon la valeur du bouton tu insères supprimes ou modifies.
    C'est pour cela que tu dois utiliser un formulaire.
    C'est pas trop compliquer à mettre en place si tu te creuses la tête...
    Nulla dies sin linea

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Je comprends le principe mais j'ai du mal a le retranscrire...
    Quelle méthode doi-je donc utiliser pour le form et comment utiliser form.submit ?
    Chui encore plus embroullé

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Points : 206
    Points
    206
    Par défaut
    Voici un exemple que tu peux lancer.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    <html>
        <head>
            <script language='javascript'>
                    function getValue()
                    {
                        document.form1.mavaleur=document.form1.butt1.value;
                        document.form1.submit();
                    }
            </script>
        </head>
     
        <body>
            <form name='form1' method='POST' action='result.php'>
                  <input type='button' name='butt1' value='bouton1'/ onclick='getValue();'>
                  <input type='button' name='butt2' value='bouton2'/>
                  <input type='hidden' name='mavaleur'>
    Dans la page result.php. Tu fais tes traitements selon la valeur de $_POST['mavaleur'].
    Nulla dies sin linea

  7. #7
    Nouveau Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    J'ai essayé d'adapter mon script a l'éxemple que tu m'as donné ça donne ça
    projet.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    <script language="javascript">
    function getValue()
                    {
                        document.form1.mavaleur=document.form1.Bt_supr.value;
                        document.form1.submit();
                    }
            </script>
     
     
     
    <body>
    <?
    mysql_connect('localhost','root','');
    if (mysql_select_db('mabase'))
    {
    $requete="select * from projet ";
    $res=mysql_query($requete);
     
    while($ligne=mysql_fetch_array($res))
    {
    echo "<form name='form1' method='POST' action='result.php'>";
    echo '<br>'."<div id=case> <INPUT TYPE=checkbox NAME='box' ></div>";
    echo "<div id=case2> ".$ligne['titre-proj']."</div>";
    echo "<div id=case3>".$ligne['design-projet']."</div>";
    echo "<div id=case4>".$ligne['organisme financeur']."</div>".'<br>';
     
    }
    }
     
    echo '<br>'. '<input type="button"  name="Bt_supr" value="Supprimer"/ onclick="getValue()">';
    echo '<input type="button" value="Modifier" name="Bt_modif">';
    echo '<input type="button" value="Ajouter" name="Bt_ajout">';echo "<input type='hidden' name='mavaleur'>";
    echo "</form>";
    ?>
    puis jai crée result.php
    avec seulement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?
    $yes=$_POST['mavaleur'];
    echo $yes;
    ?>
    Si j'ai bien compris $_POST['mavaleur'] doit rettourner la valeur du bouton comme 'supprimer' ou 'modifier'...
    Je ne sais pas quoi faire ensuite

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Points : 206
    Points
    206
    Par défaut
    Une fois que tu as récupérer la valeur du bouton. Tu sais si c'est ajouter supprimer ou mettre à jour.
    Selon la valeur du bouton, tu créés la requête adéquate... (select, insert, ou update)
    Nulla dies sin linea

  9. #9
    Nouveau Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Ceci mis à part, je ne suis plus au bureau et je ne peux pas travailler ici donc je vérifirai demain en rentrant les requetes directement je n'ai pas de moyen de savoir si $_POST['mavaleur'] retourne bien la bonne valeur.
    De plus je me demandais si les bouton c'est bien button le type et pas submit.
    Merci

  10. #10
    Nouveau Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Re bonjour,
    J'ai réalisé ce test dans résult.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    if ($_POST['mavaleur']=="Ajouter")
    		{mysql_connect('localhost','root','');
    			if (mysql_select_db('mabase'))
    			{$requete2="INSERT INTO `projet` ( `titre-proj` , `design-projet` , `organisme financeur` , `resposable` , `adresse fact` , `divers` )
    						VALUES ('gh', 'ghd', 'd', 'd', 'gh', 'd')";
    			$res=mysql_query($requete2);
    			}
    			$moi=$_POST['mavaleur'];
    			echo $moi;	
    		}	
    	else {$moi="salut";
    			echo $moi;}
    mais qu'el que soit le bouton ou je clique je reçois le message "salut" ce qui veut dire que $_POST['mavaleur'] ne revoie rien... peut etre que j'ai fait une érreur dans le javascript , ça fait une heure que je vérifie , mais je ne trouve pas si qu'el qu'un voit une erreur dites le moi s'il vou plait.

  11. #11
    Nouveau Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Désolé pour ce 3e post à la suite .
    Oublions le problème des boutons je l'ai résolu d'une autre manière .
    Reste le problème des chekbox, en effet comme ils sont dans un while je ne peux pas leur donner de value.

    dans ma page des traitements je me retrouve avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if ($_POST['mavaleur']=="Supprimer") //si on a cliqué sur supprimer 
    {mysql_connect('localhost','root','');
    	if (mysql_select_db('mabase'))
    	{$requete="DELETE FROM `projet`  WHERE `titre-proj` = '?????' ";
    	$res=mysql_query($requete);
    	}
    Voila, comment récupérer le titre du ou des projets sécetionnés. Par ailleur pour l'insertion par exemple j'aurai besoin des autres champs.
    Merci .

Discussions similaires

  1. [PHP 5.1] Valeurs Checkbox dans un WHILE
    Par fredouzzz dans le forum Langage
    Réponses: 4
    Dernier message: 30/03/2012, 15h46
  2. plusieurs checkbox dans un while
    Par kaking dans le forum Langage
    Réponses: 4
    Dernier message: 30/10/2008, 16h18
  3. [Conception] checkbox dans une boucle while
    Par SAFOne dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 22/12/2006, 14h05
  4. [VB.NET] Insérer une colonne de CheckBox dans un DataGrid
    Par Manue.35 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 22/05/2003, 11h44
  5. Réponses: 3
    Dernier message: 25/11/2002, 14h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo