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 :

rendre une checkbox invisible sous condition


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 108
    Points : 25
    Points
    25
    Par défaut rendre une checkbox invisible sous condition
    bonsoir,

    est il possible de rendre invisible une checkbox du moment qu'une condition est vrai?j'ai éssayé ce code mais pas vraiment concluant.
    manque t' il quelquechose dans cette ligne ou est ce que cela ne fonctionne pas en php?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
     
    	if (blabla="vrai"){
    ?>
         <input type="checkbox" name="selection[1]" id="selection" value="oui" style=visibility:"hidden"/>
        <?php
    	}
    merci pour vos réponses

  2. #2
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    bonsoir,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
     
    	if (blabla="vrai"){
     
       print "<input type='checkbox' name=".selection[1]." id='selection' value='oui' style=visibility:'hidden'/>";
    	}?>

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 108
    Points : 25
    Points
    25
    Par défaut
    j'ai une petite erreur avec :
    Parse error: syntax error, unexpected '['

  4. #4
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Sélection est une variable PHP? Si oui tu n'aurais pas oublié un $
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 108
    Points : 25
    Points
    25
    Par défaut
    Selection est le nom de ma checkbox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
     
    	if (blabla="vrai"){
     
       print "<input type='checkbox' name=".selection[<?php echo $reponse['id']; ?>]." id='selection' value='oui' style=visibility:'hidden'/>";
    	}?>

  6. #6
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2015
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2015
    Messages : 107
    Points : 139
    Points
    139
    Par défaut
    Bonjour,

    Si je comprend bien, tu veux que ta checkbox se nomme selection+variable. Dans ce cas, je ferais comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php
     
    	if (blabla="vrai"){
    ?>
    <input type='checkbox' name='selection<?php echo $reponse["id"]?>' id='selection' value='oui' style=visibility:'hidden'/>
    <?php
    }
    Par contre, si selection n'est qu'un nom, ça ne peut pas être un tableau.
    Darkauron

  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
    Citation Envoyé par Darkauron Voir le message
    Par contre, si selection n'est qu'un nom, ça ne peut pas être un tableau.
    Sauf si c'est le nom d'un tableau

    Pour avoir un tableau de checkboxes indexé par l'id :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
     
    if (blabla="vrai"){
     
       echo '<input type='checkbox' name="selection['.$reponse['id'].']" id="selection" value="oui" style="visibility:hidden";/>';
    }?>
    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
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 108
    Points : 25
    Points
    25
    Par défaut
    j'ai apporté les modifications faites par celira ,mais ma checkbox selectionnée est toujours visible apres validation.

    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
    <?php
    	 while($reponse =$sql->fetch()) {
    	?>	
         <tr>
    	    <td><?php echo $reponse['id']; ?></td>
    	    <td><?php echo $reponse['prenom']; ?></td> 
                <td><?php echo $reponse['nom']; ?></td> 
    	    <td><?php echo $reponse['mail']; ?></td> 
    	    <td><input type="checkbox" name="selection[<?php echo $reponse['id']; ?>]" id="selection" value="oui" /></td>	    
        </tr>
    	<?php
    	 }
    	 if ($_POST['envoi']){
    		   echo '<input type="checkbox" name="selection['.$reponse['id'].']" id="selection" value="oui" style="visibility:hidden" ;/>';
    	 }
    ?>

  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
    Ton code est bizarre : tu as un tableau, qui contient une checkbox par ligne sans condition dessus. Et une checkbox toute seule à l'extérieur du tableau qui porte le même nom que les checkboxes à l'intérieur et qui a forcément une visibilité cachée lorsqu'elle existe (avec une condition d'existence bizarre).

    Tu essayes de faire quoi exactement ?
    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
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 108
    Points : 25
    Points
    25
    Par défaut
    j'ai un tableau donc un champ (selection) n'a que des checkbox .Ce que j'aimerai faire c'est après sélection de la checkbox et validation par le bouton submit ma checkbox devient invisible pour ne plus pouvoir l'utiliser

  11. #11
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2015
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2015
    Messages : 107
    Points : 139
    Points
    139
    Par défaut
    Je n'arrive pas à comprendre ce que tu veux faire.

    Pour le moment, avec ce code, tu parcours les résultats d'une requête SQL. Avec ces résultats, tu crées un tableau qui ressemble à ca :
    id prenom nom mail checkbox
    id_1 prenom_1 nom_1 mail_1 case à cocher 1
    id_2 prenom_2 nom_2 mail_2 case à cocher 2

    Et à la suite de ce tableau, une case à cocher qui est ajoutée seulement si $_POST["envoi"] est renseigné mais qui n'est pas affichée à l'écran.

    Qu'est ce qui doit disparaitre ? Et surtout, dans quel cas ?
    Quel est le but de ton code ?
    Darkauron

  12. #12
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 108
    Points : 25
    Points
    25
    Par défaut
    mes checkboxes sont ajouter en même temps que sont généré mes enregistrements dans mon tableau.
    ce que je désire c'est après que j'ai coché ma checkbox concernant mon enregistrement ,j'affiche le mail qui le concerne( ca c'est fait cela fonctionne) et après ma checkbox disparait

  13. #13
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2015
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2015
    Messages : 107
    Points : 139
    Points
    139
    Par défaut
    Quelle checkbox ? Celle que tu coches pour afficher le mail ?
    Darkauron

  14. #14
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2015
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2015
    Messages : 107
    Points : 139
    Points
    139
    Par défaut
    En essayant de comprendre ton code et avec tes explications, je pense avoir compris ton erreur.

    Lorsque tu fais ton tableau, tu insère les données (id, nom, prenom, mail, case a cocher) et ensuite, dans ton if $_POST["envoi"], tu essaies de modifier ta checkbox pour la cacher si elle a été sélectionnée. Est ce que j'ai bien compris ta démarche ?

    Si c'est bien ça, ça ne fonctionne pas. En PHP, tu ne peux pas modifier quelque chose après l'avoir affiché. C'est pour cela qu'on te dit qu'il y a une checkbox incompréhensible dans ton code (après ton tableau).

    Enlève style="visibility:hidden" qu'il y a dans ton if et teste à nouveau, je pense que tu auras une petite surprise.

    Si je me trompe, n'hésite pas à me réexpliquer.
    Darkauron

  15. #15
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 108
    Points : 25
    Points
    25
    Par défaut
    mais je n'ai pas de message d'erreur ,juste que je n'ai pas le résultat escompté

  16. #16
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2015
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2015
    Messages : 107
    Points : 139
    Points
    139
    Par défaut
    Je ne parle pas d'erreur de code mais d'une erreur de compréhension .

    Peux tu nous fournir le code contenant le bouton de validation et les traitements que tu fais ?
    Darkauron

  17. #17
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 108
    Points : 25
    Points
    25
    Par défaut
    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
    <?php
    $pdo = new PDO( 'mysql:host=localhost;dbname=messageries', 'root','', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
    $sql=$pdo->query( "SELECT * FROM user " );
    if(isset($_POST['selection'])     ) { 
    	$donnees=$pdo->prepare("select * from user where id=:id "); 
    	foreach($_POST['selection'] as $key=>$value) {
         $donnees->execute(array(':id'=>$key));
                    if ($resultat = $donnees->fetch()) {
     
    echo $destinataire = $resultat['mail'] ;
    //$headers = 'Mime-Version: 1.0'."\r\n";
    //$headers .= 'Content-type: text/html; charset=UTF-8'."\r\n";
    //$headers .= "\r\n";
    //$sujet = 'mise à jour' ;
    //$messagerie  = 'Bonjour,'."\r\n\r\n";
    //$messagerie .= 'Le mail a envoyer.' ."</br>"."\r\n\r\n";
    //$messagerie .= '*******************************'."</br>"."\r\n";
    //$messagerie .= '*******************************'."</br>"."\r\n";
    //mail($destinataire, $sujet, $messagerie, $headers) ;
     
                   }
        }
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-Strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>page test</title>
    </head>
    <body>
    <form  name="form1" method="post" action="test.php">
     
    <table width="200" border="1" cellspacing="1" cellpadding="5">
     
        <tr>
           <td>Numéro</td>
           <td>Prénom</td>	
    	   <td>nom</td>
    	   <td>Mail</td>	
    	   <td>selection</td>	
        </tr>
    	<?php
    	 while($reponse =$sql->fetch()) {
    	?>	
    	<tr>
    	    <td><?php echo $reponse['id']; ?></td>
    	    <td><?php echo $reponse['prenom']; ?></td> 
            <td><?php echo $reponse['nom']; ?></td> 
    	    <td><?php echo $reponse['mail']; ?></td> 
    	    <td><input type="checkbox" name="selection[<?php echo $reponse['id']; ?>]" id="selection" value="oui" /></td>	    
        </tr>
    	<?php
    	 }
    	 if ($_POST['envoi']){
    		   echo '<input type="checkbox" name="selection['.$reponse['id'].']" id="selection" value="oui" style="visibility:hidden" ;/>';
    	 }
    ?>
    	</table>
    	<br/>
    	<p>
     
    	     <label>
          <input type="submit" name="envoi"  value="Envoyer" />
        </label>
    	</p>
    </form>
    </body>
    </html>

  18. #18
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Qu'est-ce-qu'il y a dans test.php ?
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  19. #19
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2015
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2015
    Messages : 107
    Points : 139
    Points
    139
    Par défaut
    Je pense que tu as le contenu à l'écran. test.php appelle test.php pour le traitement.
    Darkauron

  20. #20
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 108
    Points : 25
    Points
    25
    Par défaut
    Test.php est mon seul et unique formulaire

Discussions similaires

  1. [VB.NET 2005] ListView : Rendre une colonne invisible
    Par rafou28 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 11/08/2006, 15h05
  2. Rendre une popup "invisible"
    Par NeHuS dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 15/06/2006, 15h15
  3. rendre une page invisible par les mteurs de recherche
    Par Delphi-ne dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 01/04/2006, 19h16
  4. Comment rendre une checkbox inactive ?
    Par damien99 dans le forum MFC
    Réponses: 2
    Dernier message: 08/02/2006, 21h42
  5. Réponses: 4
    Dernier message: 01/02/2006, 09h47

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