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 + boolean [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2016
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2016
    Messages : 37
    Points : 15
    Points
    15
    Par défaut checkbox + boolean
    Bonjour a tous.

    Voilà j'aimerais que lorsque mon logo soi cocher, sa valeur passe a 1 (0 de base dans la db) et y reste même si la page est rafraichie.
    Je suis encore assez novice.

    Voila mon code HTML:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php foreach($institution as $instit): ?>
    <input type="checkbox" name="instit" value="<?= $instit['value'] ?>" id="<?= $instit['id'] ?>">
    <label for="<?= $instit['id'] ?>"><?= htmlspecialchars_decode($instit['content']) ?></label>
    <?php endforeach; ?>
    Code PHP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(!empty($_POST['value'])){
    $value = 0;
    }else{
    $value = 1;
    }

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    oui, et donc ?
    A quel niveau se situe le problème ?

  3. #3
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Peut-être conserver la coche ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <?php $check = ($instit['value'] == 1)?"checked":"";
    <input type="checkbox" name="instit" value="1" id="<?= $instit['id'] ?>" <?=$check; ?>>
    AU passage, là ton code passe la valeur à 0 si la case est cochée et à 1 si elle est décochée. Je pense que tu veux plutôt faire l'inverse :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(!empty($_POST['instit'])){
        $value = 1;
    }else{
        $value = 0;
    }
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  4. #4
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2016
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2016
    Messages : 37
    Points : 15
    Points
    15
    Par défaut
    Merci beaucoup,
    alors j'ai fait mes modifications, mais maintenant comment mettre a jour ma base de donnée avec 1 ou 0 ?
    J'ai essayer avec différent update mais cela ne me donne rien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if ($db->where('value')->update('site_institution')) {
       $success = true;
    } else {
       $success = false;
       $err[] = 'Erreur lors de la mise à jour du header';
    }

  5. #5
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Tu utilises un framework (genre ZF ou Symfony, par exemple) ? un ORM (genre Doctrine) ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  6. #6
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2016
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2016
    Messages : 37
    Points : 15
    Points
    15
    Par défaut
    Non rien du tout

  7. #7
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Hum... Avec une structure du genre $db->where('value')->update('site_institution') il y a forcément quelque chose.
    Comme fais-tu la connexion et les requêtes sur la base ? on peut voir un exemple ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  8. #8
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2016
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2016
    Messages : 37
    Points : 15
    Points
    15
    Par défaut
    Voila le code entier correspondant, je suis un peu perdu avec cette requete
    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
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    <?php 
    $institution = $db->orderBy('id', 'ASC')->get('site_institution');
     
    if (!empty($_POST)) {
     
        $comp = new \AxessWeb\Components();
     
        $post = array_map('trim', $_POST);
     
        if (empty($post['content'])) {
            $err[] = 'Le contenu ne peut être vide';
        }
     
        $edit = $post; // On repeuple
        if (count($err)) {
            $success = false;
        } else {
     
            $data = [
                'content' => htmlspecialchars($post['content'], ENT_QUOTES),
                'value' => $value['value'],
            ];
     
            if ($db->where('id', 1)->update('site_institution', $data)) {
                $success = true;
            } else {
                $success = false;
                $err[] = 'Erreur lors de la mise à jour du header';
            }
        }
    }
     
     
     
    if(!empty($_POST['value'])){
    $value = 1;
    }else{
    $value = 0;
    }
    ?>
    <main>
        <section class="section">
     
            <h1>
                <i class="fa fa-stack-exchange"></i> Gestion des institutions
            </h1>
     
            <div class="row">
                <div class="col s12">
                    <div class="card-panel z-depth-0 blue lighten-4">
                        <span class="font14 blue-grey-text text-darken-1">Gestion des institutions dans le header</span>
                    </div>
                </div>
            </div>
     
            <div class="row">
                <div class="col s12">
    <?php if (!empty($_POST)): ?>
        <?php if ($success): ?>
                            <div class="card-panel green">
                                <span class="white-text">Les images ont été mis à jour avec succès</span>
                            </div>
                        <?php else: ?>
                            <div class="card-panel red">
                                <span class="white-text">Une erreur est survenue lors de la mise à jour des liens</span>
                            </div>
                        <?php endif; ?>
    <?php endif; ?>
                    <br>
     
                    <form id="" method="post">
                        <div class="row">
                            <div class="input-group col s12">
                                <div class="col s12 input-group" id="usr_title">
                                    <?php foreach($institution as $instit): ?>
                                    <?php $check = ($instit['value'] == 1)?"checked":"";?>
                                    <input type="checkbox" name="instit" value="<?= $instit['value'] ?>" id="<?= $instit['id'] ?>"><label for="<?= $instit['id'] ?>"><?= htmlspecialchars_decode($instit['content']) ?></label>
                                    <?php endforeach; ?>
                                    <br><br>
                                </div>
                            </div>
                        </div>
     
                        <div class="row">
                            <div class="col s8 offset-s2">
                                <br>
                                <div class="center">
                                    <button class="btn waves-effect indigo darken-4" type="submit" name="submit">
                                        Metre à jour
                                    </button>
                                </div>
                            </div>
                        </div>
     
                    </form>
                </div>
        </section>
    </main>

  9. #9
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Vu la tête du code au-dessus, je dirais qu'il faut que tu changes cette partie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $data = [
                'content' => htmlspecialchars($post['content'], ENT_QUOTES),
                'value' => $value['value'],
            ];
     
            if ($db->where('id', 1)->update('site_institution', $data)) {
                $success = true;
            } else {
                $success = false;
                $err[] = 'Erreur lors de la mise à jour du header';
            }
    A priori, ce code fait la mise à jour des champs "content" et "value" de ta table avec les données du formulaire.
    Donc ce qu'il faut faire c'est changer la valeur envoyée dans la colonne value.

    Par contre, ce qui m'embête dans ton code, c'est la liste des checkboxes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php foreach($institution as $instit): ?>
        <?php $check = ($instit['value'] == 1)?"checked":"";?>
        <input type="checkbox" name="instit" value="<?= $instit['value'] ?>" id="<?= $instit['id'] ?>"><label for="<?= $instit['id'] ?>"><?= htmlspecialchars_decode($instit['content']) ?></label>
    <?php endforeach; ?>
    Tu as plusieurs checkboxes qui portent le même nom (instit)
    Et inversement, tu utilises $_POST['content'], mais je ne vois aucun champ qui porte le nom "content"
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  10. #10
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2016
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2016
    Messages : 37
    Points : 15
    Points
    15
    Par défaut
    Le name = 'instit' c'est pour que tous soi pris en compte ce n'est pas comme cela ?

    Le code n'est pas de moi je le reprend d'ou mon soucis a tout comprendre aussi
    J'ai l'impression d'etre dans un gros bourbier et impossible de m'en dépêtré depuis le début de la semaine.

  11. #11
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2016
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2016
    Messages : 37
    Points : 15
    Points
    15
    Par défaut
    comment faire pour simplement lui dire que quand cocher c'est 1 et non plus 0 dans la db du coup ?

    Nom : Capture d’e?cran 2017-01-06 a? 16.26.40.png
Affichages : 1299
Taille : 15,7 Ko

  12. #12
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    1/
    • Pole emploie ??
    • ursaff ??

    d'autre part (vu le contenu du champ 'content') :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                'content' => htmlspecialchars($post['content'], ENT_QUOTES),
    -> il NE faut PAS utiliser htmlspecialchars (encore moins htmlentities !) AVANT d'enregistrer des données en base !
    htmlspecialchars s'utilise pour l'AFFICHAGE.

    2/ COMPRENDS-TU le fonctionnement de cette ligne ? (car moi, non)
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $db->where('id', 1)->update('site_institution', $data)
    En clair : SAIS-TU faire une requête UPDATE ?

    3/ [EDIT] à priori (si j'ai bien compris), il faut remplacer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            $data = [
                'content' => htmlspecialchars($post['content'], ENT_QUOTES),
                'value' => $value['value'],
            ];
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            $data = [
                'content' => $post['content'],
                'value' => (!empty($post['value'])? 1:0),
            ];

  13. #13
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Tu as une case par ligne de la base de données ? Tu peux utiliser un tableau de checkboxes dans ce cas (indexé avec l'id, comme ça on récupère aussi l'id)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php foreach($institution as $instit): ?>
        <?php $check = ($instit['value'] == 1)?"checked":"";?>
        <input type="checkbox" name="instit[<?= $instit['id'] ?>]" value="1" id="instit_<?= $instit['id'] ?>"><label for="instit_<?= $instit['id'] ?>"><?= htmlspecialchars_decode($instit['content']) ?></label>
    <?php endforeach; ?>
    Et pour l'enregistrement, il faut boucler sur le tableau :
    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
    $institution = $db->orderBy('id', 'ASC')->get('site_institution');
     
    if (!empty($_POST)) {
     
        $comp = new \AxessWeb\Components();
     
        foreach ($institution as $instit) {
            $id = $instit['id'];
            $value = 0;
            // si la case est cochée
            if (!empty($_POST['instit']) && !empty($_POST['instit'][$id])) {
                $value = 1;
            }
     
            $data = [
                'value' => $value
            ];
     
            if ($db->where('id', $id)->update('site_institution', $data)) {
                $success = true;
            } else {
                $success = false;
                $err[] = 'Erreur lors de la mise à jour du header';
            }
        }
    }
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  14. #14
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2016
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2016
    Messages : 37
    Points : 15
    Points
    15
    Par défaut
    personne ?
    Toujours le même soucis et je ne vois aucune solution ...

  15. #15
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Et les deux réponses qu'on a t'a fait ne t'ont pas aidé ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  16. #16
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2016
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2016
    Messages : 37
    Points : 15
    Points
    15
    Par défaut
    Oui mais le soucis est que la case ne reste pas coché et du coup cela reste a 1

  17. #17
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Nous, on ne voit pas ton code............................

  18. #18
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2016
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2016
    Messages : 37
    Points : 15
    Points
    15
    Par défaut
    Bonjour oui pardon je pensais l'avoir mis ^^'

    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
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    <?php
     
    $institution = $db->orderBy('id', 'ASC')->get('site_institution');
     
    if (!empty($_POST)) {
     
           foreach ($institution as $instit) {
            $id = $instit['id'];
            $value = 0;
            // si la case est cochée
            if (!empty($_POST['instit']) && !empty($_POST['instit'][$id])) {
                $value = 1;
            }
     
            $data = [
                'value' => $value
            ];
     
            if ($db->where('id', $id)->update('site_institution', $data)) {
                $success = true;
            } else {
                $success = false;
                $err[] = 'Erreur lors de la mise à jour du header';
            }
        }
    }
    ?>
    <main>
        <section class="section">
     
            <h1>
                <i class="fa fa-stack-exchange"></i> Gestion des institutions
            </h1>
     
            <div class="row">
                <div class="col s12">
                    <div class="card-panel z-depth-0 blue lighten-4">
                        <span class="font14 blue-grey-text text-darken-1">Gestion des institutions dans le header</span>
                    </div>
                </div>
            </div>
     
            <div class="row">
                <div class="col s12">
                <?php if (!empty($_POST)): ?>
                    <?php if ($success): ?>
                            <div class="card-panel green">
                                <span class="white-text">Les images ont été mis à jour avec succès</span>
                            </div>
                    <?php else: ?>
                            <div class="card-panel red">
                                <span class="white-text">Une erreur est survenue lors de la mise à jour des liens</span>
                            </div>
                    <?php endif; ?>
                <?php endif; ?>
                    <br>
     
                    <form id="" method="post">
                    	<?php foreach($institution as $instit): ?>
                                <?php $check = ($instit['value'] == 0)?"checked":"";?>
                        <input type="checkbox" name="instit[<?= $instit['id'] ?>]" value="1" id="instit_<?= $instit['id'] ?>" ><label for="instit_<?= $instit['id'] ?>"><?= htmlspecialchars_decode($instit['content']) ?></label>
                            <?php endforeach; ?>
     
                    	<div class="row">
                            <div class="col s6 offset-s2">
                                <br>
                                <div class="center">
                                    <button class="btn waves-effect indigo darken-4" type="submit" name="submit">
                                        Envoyer
                                    </button>
                                </div>
                            </div>
                        </div>
                    </form>
                </div>
            </div>
        </section>
    </main>

  19. #19
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <?php $check = ($instit['value'] == 0)?"checked":"";?>
    <input type="checkbox" name="instit[<?= $instit['id'] ?>]" value="1" id="instit_<?= $instit['id'] ?>" >
    La variable $check calcule si la case dit être cochée ou pas en se basant sur la valeur (en l'occurrence, c'est écrit à l'envers puisqu'on a dit value = 1 <=> cochée)
    Mais pour que ça fonctionne, il faut utiliser $check
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <?php $check = ($instit['value'] == 1)?"checked":"";?>
    <input type="checkbox" name="instit[<?= $instit['id'] ?>]" value="1" id="instit_<?= $instit['id'] ?>" <?=$check; ?> >
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  20. #20
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2016
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2016
    Messages : 37
    Points : 15
    Points
    15
    Par défaut
    C'est ce que j'avais essayer mais aucun changement justement les cases reste décoché, j'ai essayer en changer l'a variable de 0 a 1 et vise versa mais rien ne change.

    Merci beaucoup pour l'aide en tout cas

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Problème checkbox et cellule boolean
    Par jeanmidudu dans le forum Macros et VBA Excel
    Réponses: 51
    Dernier message: 08/05/2016, 18h23
  2. Récupérer résultat d'une boolean checkbox
    Par monstor dans le forum JSF
    Réponses: 17
    Dernier message: 17/04/2008, 11h03
  3. Checkbox
    Par rgarnier dans le forum XMLRAD
    Réponses: 11
    Dernier message: 06/03/2003, 10h48
  4. Couleur d'un CheckBox
    Par benj63 dans le forum C++Builder
    Réponses: 4
    Dernier message: 15/07/2002, 14h48
  5. CheckBox en Read Only
    Par MrJéjé dans le forum C++Builder
    Réponses: 7
    Dernier message: 23/06/2002, 15h00

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