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 :

Enregistrer une case à cocher sur MySQL


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Enregistrer une case à cocher sur MySQL
    Bonjour,

    je cree une sorte de checklist pour ne pas oublier les chose que je devrais faire.
    Jai donc cree un formulaire avec plusieur point a marquer et au bout de ces point une checkbox.

    J'aimerai enregistrer dans ma table Mysql mon tavbleau qui est sous forme de checkbox checkbox je pense que cela doit être fait sous forme de POST

    mais je n'arrive pas a trouver la solution

    Jai cree une table Controle dans ma table j'ai cree un champs fait_cont qui a une valeur booleennne (BOOL)

    voici mon mcd http://dadou9101.skyrock.com/photo.h...99365167&rev=1

    je voulais savoir comment je pourrais intégrer mes enregistrement lier a mes checkbox dans ma base mysql.

    je vous remercie de toutes laide que vous pourrez m'apporter


    si joint mon code avec une exemple de 2 case que je doit cocher

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    <?php
     
    include('connexion.php');
    //création de la requête SQL
    $sql = "SELECT * FROM `operations` WHERE `id_ope`=1";
    //exécution de la requête SQL
    $requete = @mysql_query( $sql, $link ) or die( $sql . "<br>" . mysql_error() );
    echo "<table width=100% border=2>";
    echo "<tr>";
    echo "<td width=10%><center>N°</center></td>";
    echo "<td width=80%><center>Description</center></td>";
    echo "<td width=10%><center></center></td>";
    echo "</tr>";
     
    while ($tab = mysql_fetch_array($requete))
    {
    	echo "<tr>";
    	echo "<td width=10%><center>".$tab['id_ope']."</center></td>";
    	echo "<td width=80%><a href=\"operations/operation (1).php?nom=".$tab['description_ope']."\" target=\"_blank\">".	$tab['description_ope']."</a></td>";
    	echo "<td width=10%><center><input type=\"checkbox\" name=\"id_cont\" value=\"1\" /></center></td>";
    	echo "</tr>";
    }
    ?> 
     
     
      <?php
     
    include('connexion.php');
    //création de la requête SQL
    $sql = "SELECT * FROM `operations` WHERE `id_ope`=2";
    //exécution de la requête SQL
    $requete = @mysql_query( $sql, $link ) or die( $sql . "<br>" . mysql_error() );
     
     
    while ($tab = mysql_fetch_array($requete))
    {
        echo "<tr>";	
    	echo "<td width=10%><center>".$tab['id_ope']."</center></td>";
    	echo "<td width=80%><a href=\"operations/operation (2).php?nom=".$tab['description_ope']."\" target=\"_blank\">".$tab['description_ope']."</a></td>";
    	echo "<td width=10%><center><input type=\"checkbox\" name=\"id_cont\" value=\"1\" /></center></td>";
    	echo "</tr>";
    }
    ?>

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 28
    Points : 25
    Points
    25
    Par défaut
    Bonjour,

    Tout d'abord il faut une balise <form> afin de pouvoir récupérer les données. Ensuite si je me souviens bien, je donnais à tous les checkbox un nom (ex manger) et une valeur comme 0 ou 1 qui voit si l'action a été faite.

    Ensuite tu récupères les données par un foreach :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php
    foreach ($_POST as $k=>$v) {
       echo 'action : '.$k.'<br />';
       echo 'fait ? '.$v;
    }
    ?>
    Voilà normalement celà devrait fonctionner.

    Cordialement,
    Maxime.

  3. #3
    Futur Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    pas compris avec un exemple sa pourrait m'aider
    le souci c'est comment je récupéré mes plusieurs checkbox et les enregistre sur ma base

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 28
    Points : 25
    Points
    25
    Par défaut
    Bah c'est simple.
    Quand tu postes ton formulaire, tu as la superglobale $_POST qui contient un tableau de toutes les données du formulaire.
    Donc avec un foreach ($_POST $k=>$v) $k vaut le l'attribut name de ton checkbox et $v la valeur que tu prédéfinis (ici 1 ou 0 selon la tâche si elle est affectuée ou pas).

    Exempel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <form [..]>
    <p>Operation : Manger (id:1) <input type="checkbox" name="1" value="1" /></p>
    <p>Operation : Boire (id:2) <input type="checkbox" name="2" value="0" /></p>
    <p>Operation : Dormir (id:3) <input type="checkbox" name="3" value="0" /></p>
    </form>
    Donc ici $_POST contiendra :
    '1' => 1,
    '2' => 0,
    '3' => 0,

    Donc tu extrais avec un foreach et tu as chaque fois l'id de l'opération avec son statut (fait (1) ou pas fait (0)).

    Et selon ça tu enregistre dans la bdd par exemple ..

  5. #5
    Futur Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Donc regarde mon code ma checkbox est cree je dois lenvoyer donc sur une autre page php afin quelle senregistre dans ma base
    c'est sa ??

    Exemple si joint avec 2 case a cocher

    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
    36
    37
    38
    39
    40
    41
    42
     
    <?php
     
    include('connexion.php');
    //création de la requête SQL
    $sql = "SELECT * FROM `operations` WHERE `id_ope`=1";
    //exécution de la requête SQL
    $requete = @mysql_query( $sql, $link ) or die( $sql . "<br>" . mysql_error() );
    echo "<table width=100% border=2>";
    echo "<tr>";
    echo "<td width=10%><center>N°</center></td>";
    echo "<td width=80%><center>Description</center></td>";
    echo "<td width=10%><center></center></td>";
    echo "</tr>";
     
    while ($tab = mysql_fetch_array($requete))
    {
    	echo "<tr>";
    	echo "<td width=10%><center>".$tab['id_ope']."</center></td>";
    	echo "<td width=80%><a href=\"operations/operation (1).php?nom=".$tab['description_ope']."\" target=\"_blank\">".	$tab['description_ope']."</a></td>";
    	echo "<td width=10%><center><input type=\"checkbox\" name=\"id_cont\" value=\"1\" /></center></td>";
    	echo "</tr>";
    }
    ?> 
      <?php
     
    include('connexion.php');
    //création de la requête SQL
    $sql = "SELECT * FROM `operations` WHERE `id_ope`=2";
    //exécution de la requête SQL
    $requete = @mysql_query( $sql, $link ) or die( $sql . "<br>" . mysql_error() );
     
     
    while ($tab = mysql_fetch_array($requete))
    {
        echo "<tr>";	
    	echo "<td width=10%><center>".$tab['id_ope']."</center></td>";
    	echo "<td width=80%><a href=\"operations/operation (2).php?nom=".$tab['description_ope']."\" target=\"_blank\">".$tab['description_ope']."</a></td>";
    	echo "<td width=10%><center><input type=\"checkbox\" name=\"id_cont\" value=\"1\" /></center></td>";
    	echo "</tr>";
    }
    ?>

  6. #6
    Futur Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    up

    desole je comprend pas trop je sais que mtn il faut que j'atribu un nom different pour chaque checkbox que je voudrais enregistrer
    mais je narrive toujours pas a voir comment je fais pour l'enregistrer

    quel est le code

  7. #7
    Futur Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    jai toujours un petit souci je narrive pas a affectuer mon enregistrement sur ma base de donne pourtant jai suivi ta methode

    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
     
    <?php
    foreach($_POST AS $key=>$value)
    echo $key . "<br>";
    echo $value . "<br>";
    include('connexion.php');
    {
    if($value == '1')
    {
    //Ici tu mets toutes les actions que tu veux faire si le bouton est coché
    $statement = "INSERT INTO controle (operations_id_ope ,magasin_id_magasin) VALUES ('$key','$value')";
    echo $statement;
    //mysql_query ($statement);
    }
    else
    {
    //ici tu mets toutes les actions que tu veux faire si le bouton n'est pas coché
    }
    }
    ?>

Discussions similaires

  1. lier une case à cocher sur un graphique
    Par markym dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/10/2014, 16h36
  2. [AC-2010] Enregistrer la valeur d'une case à cocher sur un splash
    Par dodo28 dans le forum IHM
    Réponses: 4
    Dernier message: 12/02/2014, 13h07
  3. Impossible d'enregistrer une case à cocher
    Par sab_info dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/05/2013, 14h43
  4. Etat avec une case à cocher sur une requête difficile
    Par marcoO dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 10/01/2007, 14h21

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