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

Administration MySQL Discussion :

Checkbox sur MySQL


Sujet :

Administration MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Avril 2013
    Messages : 2
    Par défaut Checkbox sur MySQL
    Bonjour ,

    Je cherche à faire afficher un ou plusieurs choix selectionnés sur les checkbox. Après avoir selectionné un checkbox, une phrase apparaît disant qu'on la choisi.
    J'aimerais aussi que quand on selectionne plusieurs checkbox, la phrase soit reformulée autrement.
    Exemple :
    Si je prend l'option 1, j'ai comme phrase : Option 1.
    Si je prend l'option 1 et 2, j'ai comme phrase : Option 1 - Option 2.
    Si je prend l'option 1, 2 et 3, j'ai comme phrase : Option 1 - Option 2 - Option 3.

    De plus je suis une brêle en MySQL. J'ai un léger souci au niveau de la base de données.
    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
    <input name="name" placeholder="" style="line-height: 25px;"/>
    	       </td>
    	   </tr>
    	   <tr>
    	   		<td>
    		Option 1<input type="checkbox" name="type" value="option1">
    			</td>
    		</tr>
    		<tr>
    			<td>
    		Option 2 <input type="checkbox" name="type2" value="option2">
    			</td>
    		</tr>
    		<tr>
    			<td>
    		Option 3 <input type="checkbox" name="type3" value="option3">
    			</td>
    		</tr>
    J'ai créé plusieurs champs sur ma BDD (type, type2, type3 etc...), et je ne crois pas que ça soit la bonne solution en fait !

    Mais :
    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
    <div id="formulaire">
    <?php
     
    include 'config.php';
     
    # On récupère les infos du formulaire
    $name = $_POST['name'];
    $description = $_POST['description'];
    $type = $_POST['type'];
    $type2 = $_POST['type2'];
    //$image = $_FILES['image'];
    # On insère dans la BDD
    $sql = "INSERT INTO etape_un (name, description, type, type2, type3) VALUES ('$name', '$description', '$type', '$type2', '$type3')";
    mysql_query($sql);
     
    # On redirige vers la liste des article
    //header('location: etape_deux.php');
     
    ?>
    <?php
    include 'config.php';
    $sql = 'SELECT * FROM etape_un WHERE 1';
    $result = mysql_query($sql);
    if(!$result){
    	die('erreur dans la requete : ' . mysql_error());
    }
     
    while($row = mysql_fetch_array($result, MYSQL_ASSOC)){
    	echo '<p>Nom du héros : '.$row["name"].'</p>';
    	echo  '<p>Description du héros : '.$row["description"]. '</p><br />';
    	echo '<p>Type du héros : '.$row["type"].'/'.$row["type2"].'</p>';
    }
    ?>
     
    </div>
    En faisant mes codes, tout semble fonctionner sauf que j'ai des messages d'erreurs quand je ne choisis pas l'option 2, option 3. Ca dit :
    Undefined index: type2
    Mais ça affiche tout de même les choix.

    Que faire pour avoir ce code plus propre ? Merci

    En fait, j'aimerais surtout que les résultats soient envoyés sur la base de données, et qu'on fait afficher les résultats stockés sur la Base de données.

  2. #2
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2007
    Messages : 23
    Par défaut
    ceci est normal si une checkbox n'est pas coché, sa valeur n'est pas envoyé.

    Donc tu te dois de faire un avant pour savoir si la valeur est envoyé.



    A noter :
    dans ta récupération des valeurs POST, tu récupère type, type 2, mais pas type 3
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $type = $_POST['type'];
    $type2 = $_POST['type2'];
    //$image = $_FILES['image'];
     
    $sql = "INSERT INTO etape_un (name, description, type, type2, type3) VALUES ('$name', '$description', '$type', '$type2', '$type3')";

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Avril 2013
    Messages : 2
    Par défaut
    Bonjour,

    Tout d'abord, merci pour ta réponse, mais je ne suis pas sûr de comprendre.
    Faut il mettre ce $type = $_POST['type']; à ce moment là ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $name = $_POST['name'];
    $description = $_POST['description'];
    $type = $_POST['type'];
    isset($_POST['type']);
    isset($_POST['type2']);
    $type2 = $_POST['type2'];
    Si oui, ca ne fonctionne pas

    Edit : Une erreur sur l'exemple, j'ai corrigé :
    Si je prend l'option 1, j'ai comme phrase : Option 1.
    Si je prend l'option 1 et 2, j'ai comme phrase : Option 1 - Option 2.
    Si je prend l'option 1, 2 et 3, j'ai comme phrase : Option 1 - Option 2 - Option 3.

Discussions similaires

  1. Foreign Key sur Mysql
    Par lemagicien dans le forum Outils
    Réponses: 1
    Dernier message: 23/09/2005, 13h39
  2. Récupérer des valeurs de checkbox dans MySQL
    Par digger dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 05/09/2005, 14h58
  3. export base 4D sur mysql ou sqlserver
    Par jarod71 dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 13/07/2004, 12h55
  4. driver sur mySql
    Par sampq dans le forum Installation
    Réponses: 8
    Dernier message: 19/08/2003, 09h15
  5. possible sur MySQL 4.0 ?
    Par djforest dans le forum Langage SQL
    Réponses: 7
    Dernier message: 06/06/2003, 09h49

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