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

Langage PHP Discussion :

affecter une valeur à une case à cocher non cochée


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut affecter une valeur à une case à cocher non cochée
    Bonjour, j'ai dans mon formulaire, des checkbox (environ 20) et lorsque l'utilisateur la coche celle ci vaut 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     <input type="checkbox" name="numwagon" id="numwagon" value="1" />
    mais le probléme c'est que lorsqu'une checkbox n'est pas coché la requete "INSERT INTO" ne s'exécute pas :
    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    if (isset($_POST['gestionnaire']) AND isset($_POST['date']) AND isset($_POST['poste']) AND isset($_POST['casier']) AND isset($_POST['nombre']) AND isset($_POST['coullee'])AND isset($_POST['num1bloom']) AND isset($_POST['lg1bloom']) AND isset($_POST['num2bloom']) AND isset($_POST['lg2bloom']) AND isset($_POST['plandechargement'])AND isset($_POST['numwagon']) AND isset($_POST['numordre']) AND isset($_POST['section']) AND isset($_POST['longueur']) AND isset($_POST['nombredebloom']) AND isset($_POST['identificationbloom']) AND isset($_POST['poidparbloom'])AND isset($_POST['numcoulee']) AND isset($_POST['numbloom']) AND isset($_POST['hauteurchiffres']) AND isset($_POST['largeurchiffre']) AND isset($_POST['hauteurchiffre'])AND isset($_POST['largeur']) AND isset($_POST['hauteur']) AND isset($_POST['deformationtotale']) AND isset($_POST['deformationlocale']) AND isset($_POST['convecxite']) AND isset($_POST['concavite']) AND isset($_POST['hanchage'])AND isset($_POST['crique']) AND isset($_POST['paille']) AND isset($_POST['rayureprofondeur']) AND isset($_POST['rayurelargeur']) AND isset($_POST['rayureanglesvifs'])AND isset($_POST['creuxtranches']) AND isset($_POST['stries']) AND isset($_POST['perpendicularite'])AND isset($_POST['bavureepaisseur']) AND isset($_POST['bavurelargeur'])){
     
    		// passe les valeurs $POST en variables
    		$gestionnaire = $_POST['gestionnaire'];
    		$date = $_POST['date'];
    		$poste = $_POST['poste'];
    		$casier = $_POST['casier'];
    		$nombre = $_POST['nombre'];
    		$coullee = $_POST['coullee'];
    		$num1bloom = $_POST['num1bloom'];
    		$lglbloom = $_POST['lglbloom'];
    		$num2bloom = $_POST['num2bloom'];
    		$lg2bloom = $_POST['lg2bloom'];
    		$plandechargement = if ($_POST['plandechargement'] ==''){ $plandechargement = 0;
    		} else $_POST['plandechargement'];
    		$numwagon = $_POST['numwagon'];
    		$numordre = $_POST['numordre'];
    		$section = $_POST['section'];
    		$longueur = $_POST['longueur'];
    		$nombredebloom = $_POST['nombredebloom'];
    		$identificationbloom = $_POST['identificationbloom'];
    		$poidparbloom = $_POST['poidparbloom'];
    		$numcoulee = $_POST['numcoulee'];
    		$numbloom = $_POST['numbloom'];
    		$hauteurchiffres = $_POST['hauteurchiffres'];
    		$largeurchiffre = $_POST['largeurchiffre'];
    		$hauteurchiffre = $_POST['hauteurchiffre'];
    		$largeur = $_POST['largeur'];
    		$hauteur = $_POST['hauteur'];
    		$deformationtotale = $_POST['deformationtotale'];
    		$deformationlocale = $_POST['deformationlocale'];
    		$convecxite = $_POST['convecxite'];
    		$concavite = $_POST['concavite'];
    		$hanchage = $_POST['hanchage'];
    		$crique = $_POST['crique'];
    		$paille = $_POST['paille'];
    		$rayureprofondeur = $_POST['rayureprofondeur'];
    		$rayurelargeur = $_POST['rayurelargeur'];
    		$rayureanglesvifs = $_POST['rayureanglesvifs'];
    		$creuxtranches = $_POST['creuxtranches'];
    		$stries = $_POST['stries'];
    		$perpendicularite = $_POST['perpendicularite'];
    		$bavureepaisseur = $_POST['bavureepaisseur'];
    		$bavurelargeur = $_POST['bavurelargeur'];
     
     
    if(isset($_POST['action']) && $_POST['action'] == "insertion"){
    	// insert into dans raport
    	$add_ctrl = sprintf("INSERT INTO controle (gestionnaire, date, poste, casier, nombre, coullee, num1bloom, lg1bloom, num2bloom, lg2bloom, plandechargement, numwagon, numordre, section, longueur, nombredebloom, identificationbloom, poidparbloom, numcoulee, numbloom, hauteurchiffres, largeurchiffre, hauteurchiffre, largeur, hauteur, deformationtotale, deformationlocale, convecxite, concavite, hanchage, crique, paille, rayureprofondeur, rayurelargeur, rayureanglesvifs, creuxtranches, stries, perpendicularite, bavureepaisseur, bavurelargeur) VALUES ('$gestionnaire', '$date', '$poste', '$casier', '$nombre', '$coullee', '$num1bloom', '$lg1bloom', '$num2bloom', '$lg2bloom', '$plandechargement', '$numwagon', '$numordre', '$section', '$longueur', '$nombredebloom', '$identificationbloom', '$poidparbloom', '$numcoulee', '$numbloom', '$hauteurchiffres', '$largeurchiffre', '$hauteurchiffre', '$largeur', '$hauteur', '$deformationtotale', '$deformationlocale', '$convecxite', '$concavite', '$hanchage', '$crique', '$paille', '$rayureprofondeur', '$rayurelargeur', '$rayureanglesvifs', '$creuxtranches', '$stries', '$perpendicularite', '$bavureepaisseur', '$bavurelargeur')");
    	mysql_select_db($database_dbprotect, $dbprotect);
    	$result = mysql_query($add_ctrl, $dbprotect) or die(mysql_error());
    	header("Location:controle_blooms.php?add=ok"); // message comme quoi l'enregistrement à été fait
    	echo $result;
    }
    }
    alors j'ai pensé a rajouter ce code à l'attribution des variables pour chaque $_POST de type checkbox:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $plandechargement = if ($_POST['plandechargement'] ==''){ $plandechargement = 0;
    		} else $_POST['plandechargement'];
    Mais ca ne fonctionne pas non plus, alors aurait vous une idée pour attribué 0 a une checkbox NON COCHE ?
    Merci

  2. #2
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 195
    Par défaut
    Salut
    Un input checkbox sans value coché aura une valeur à TRUE donc pour faire le test cela devrait suffir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($_POST['plandechargement']) {...}

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut
    ben non une checkbox qui n'est pas coché ne renvoi rien, si elle est coché elle renvoi 1 dans mon cas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="checkbox" name="numwagon" id="numwagon" value="1" />

  4. #4
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 195
    Par défaut
    Dans ce cas ceci devrait faire l'affaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if(isset($_POST['numwagon'])){
       /* traitement si c'est coché */
    }

  5. #5
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if(isset($_POST["moncheckx"]) && $_POST["moncheckx"] != '' )
    { $mavariable = $_POST["moncheckx"]; } else {$mavariable=0; }
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

Discussions similaires

  1. [PHP 5.2] Cases à cocher non cochées
    Par LadyArwen dans le forum Langage
    Réponses: 4
    Dernier message: 08/10/2010, 11h25
  2. Récupérer valeurs d'une liste de cases à cocher
    Par jminguely dans le forum Langage
    Réponses: 3
    Dernier message: 10/10/2008, 22h10
  3. Réponses: 7
    Dernier message: 30/07/2008, 18h51
  4. associer une valeur pour case à cocher
    Par frans_2000 dans le forum Modélisation
    Réponses: 6
    Dernier message: 12/01/2008, 01h15
  5. Réponses: 8
    Dernier message: 17/08/2006, 16h16

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