Ajouter chekbox dans un formulaire
BillyBB
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
je m'entraîne en tant que jeune développeur à faire des petites choses et la en ce moment j'essaye de faire une gestion client. Malheureusement pour ajouter client je viens de rajouter 2 chekbox (impaye et actuDPO) et par rapport à ce que j'ai écris, l'ajout client fonctionne seulement si mes 2 boutons sont cochés :/ J'aimerai donc savoir exactement quoi écrire par rapport àmes 2 chekbox, sinon tout le reste fonctionne niquel.
Voici mon AjoutReq.php qui permet de coder mon ajout des clients :
et voici mes lignes de codes en html avec les deux chekbox :
Si quelqu'un pourrait m'aider ce serais vraiment cool merci ahah :)
je m'entraîne en tant que jeune développeur à faire des petites choses et la en ce moment j'essaye de faire une gestion client. Malheureusement pour ajouter client je viens de rajouter 2 chekbox (impaye et actuDPO) et par rapport à ce que j'ai écris, l'ajout client fonctionne seulement si mes 2 boutons sont cochés :/ J'aimerai donc savoir exactement quoi écrire par rapport àmes 2 chekbox, sinon tout le reste fonctionne niquel.
Voici mon AjoutReq.php qui permet de coder mon ajout des clients :
<?php include('pdo.php'); $stmt = $pdo->prepare('SELECT * from clients WHERE codeClient = :codeClient'); $stmt->bindValue(':codeClient', $_POST['codeClient'], PDO::PARAM_STR); $stmt->execute(); $userExist=$stmt->fetch(); if(empty($userExist)) { $req = $pdo->prepare(" INSERT INTO clients(codeClient,numCompte,typeClient,statut,nom,adresse1,adresse2,codePostal,ville,pays,numTelephone,numPortable,numAutre,numAutre2,mail,mail2,distanceKM,infosDivers,impaye, actuDPO,dateCreation) VALUES (:codeClient,:numCompte,:typeClient,:statut,:nom,:adresse1,:adresse2,:codePostal,:ville,:pays,:numTelephone,:numPortable,:numAutre,:numAutre2,:mail,:mail2,:distanceKM,:infosDivers,:impaye,:actuDPO,:dateCreation)", array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY)); $req->execute( array( ':codeClient'=>strtoupper($_POST['codeClient']), ':numCompte'=>$_POST['numCompte'], ':typeClient'=>$_POST['typeClient'], ':statut'=>$_POST['statut'], ':nom'=>strtoupper($_POST['nom']), ':adresse1'=>strtoupper($_POST['adresse1']), ':adresse2'=>strtoupper($_POST['adresse2']), ':codePostal'=>$_POST['codePostal'], ':ville'=>strtoupper($_POST['ville']), ':pays'=>strtoupper($_POST['pays']), ':numTelephone'=>$_POST['numTelephone'], ':numPortable'=>$_POST['numPortable'], ':numAutre'=>$_POST['numAutre'], ':numAutre2'=>$_POST['numAutre2'], ':mail'=>$_POST['mail'], ':mail2'=>$_POST['mail2'], ':distanceKM'=>$_POST['distanceKM'], ':infosDivers'=>$_POST['infosDivers'], ':impaye'=>$_POST['impaye'], ':actuDPO'=>$_POST['actuDPO'], ':dateCreation'=>date('y-m-d'), )); $req->closeCursor(); header('Location:clientList.php'); } else { header('Location:ajouterClient.php?error=codeclient'); } ?>
et voici mes lignes de codes en html avec les deux chekbox :
<div class="form-group col-md-2" style="text-align:center"> <label for="impaye">Impayé</label><br> <input style="width: 50%; height: 1.7em;" type="checkbox" name="impaye" value="oui" id="impaye" <?php if($client["impaye"] == "oui"){ ?>checked<?php } ?>> </div> <div class="form-group col-md-2" style="text-align:center"> <label for="actuDPO">Actu DPO</label><br> <input style="width: 50%; height: 1.7em;" type="checkbox" name="actuDPO" value="oui" id="actuDPO" <?php if($client["actuDPO"] == "oui"){ ?>checked<?php } ?>> </div>
Si quelqu'un pourrait m'aider ce serais vraiment cool merci ahah :)
A voir également:
- Ajouter chekbox dans un formulaire
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Ajouter un profil netflix payant - Accueil - Guide streaming
- Formulaire de reclamation instagram - Guide
- Ajouter agenda outlook dans google agenda - Guide
1 réponse
Bonjour,
Quelques conseils à lire ( et à appliquer )
- https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
et
- https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
par exemple,
pour ta première requête
Il serait préférable d'écrire
( code à reproduire pour ta seconde requête (et tes futurs codes... )
Quelques conseils à lire ( et à appliquer )
- https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
et
- https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
par exemple,
pour ta première requête
$stmt = $pdo->prepare('SELECT * from clients WHERE codeClient = :codeClient'); $stmt->bindValue(':codeClient', $_POST['codeClient'], PDO::PARAM_STR); $stmt->execute(); $userExist=$stmt->fetch();
Il serait préférable d'écrire
//récupération PROPRE des variables AVANT de les utiliser $codeClient = !empty($_POST['codeClient']) ? $_POST['codeClient'] : NULL; if($codeClient ){ //préparation de la requête $sql = 'SELECT * from clients WHERE codeClient = :codeClient'; //exécution de la requête dans un bloc TRY/CATCH pour voir les éventuelles erreurs.. try{ $stmt = $pdo->prepare($sql); $stmt->bindValue(':codeClient', $codeClient , PDO::PARAM_STR); $stmt->execute(); $userExist=$stmt->fetch(); }catch(Exception $e){ echo "Erreur " . $e->getMessage(); } }
( code à reproduire pour ta seconde requête (et tes futurs codes... )
Mais je ne comprend pas en quoi la gestion des erreurs pourrait m'aider par rapport à mon problème :/ et tu me dis qu'il est préférable d'écrire ma requête comme tu me l'as présenter ci dessus et j'en tiendrais compte pour mes futurs requête merci :) mais je pense que actuellement si je change ma requête par la tienne, ça sera la même chose et j'aurais le même problème que maintenant :/
( tu as certainement mis, dans ta bdd, le fait que tu n'autorisais pas une valeur NULL sur un de tes champs.... )
Moi je ne t'ai donné qu'un exemple ... à toi de modifier les autres...