Récupérer une checkbox en PHP

Par JeremDevWeb, il y a 11 ans


salut depuis longtemps je cherche à envoyer des données d'un input checkbox avec php dans une bdd. je ne trouve pas de tutoriel qui peut me montrer comment faire?

5 réponses

Yentia, il y a 11 ans

Salut,

Faire un tutoriel pour sa, serait totalement inutile, le système est le même pour tous les champs.

voici un exemple avec une seul checkbox, c'est très simple, après a toi de modifier pour l'adapter a ton projet.
Si tu connais PDO, rien de compliqué

<form action="test.php" method="post">
    // value sera la valeur stocké en base et name sera le nom que tu retrouvera dans $_POST
    <input type="checkbox" name="checkbox1" value="ma checkbox qui dechire"> ma checkbox qui dechire

    <input type="submit" name="btn_envoi" value="envoyer">

</form>

<?php

    if(isset($_POST['btn_envoi'])){
        // rempli la connection a ta BDD généralement user = root et pass est vide
        $DB = new PDO('mysql:host=localhost;dbname=taBDD','user','pass', array(
                    PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8',
                    PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION,PDO::ERRMODE_WARNING
                ));
        // dans values le premier champs est vide car il s'agit de l'id en BDD qui est en autoincrement
        $req = $DB->prepare("INSERT INTO matable VALUES ('', :checkbox );");
        // ici on peut egalement faire un array($_POST['checkbox1']) et remplacer :checkbox dans la requete par un ?
       // , cela remplira les ? dans l'ordre du tableau.
      // exemple : $req = $DB->prepare("INSERT INTO matable VALUES ('',  ? );");
      // $req->execute(array($_POST['checkbox1']));
     // les deux techniques fonctionnent
        $req->execute(array(':checkbox' => $_POST['checkbox1']));
    }

?>

Bonne continuation

JeremDevWeb, il y a 11 ans

merci donc si j'ajoute un checkbox la case cochée sera envoyée sans la bdd?

Grafikart, il y a 11 ans

Topic édité merci de mettre un sujet clair "Aide" n'apporte aucune information

JeremDevWeb, il y a 11 ans

désolé Grafikart j'y ai pensé après mais j'ai pas modif ;(

Bakar23, il y a 11 ans

Le value de la checkbox sera envoyé, si la checkbox est en "on" en effet