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 :

case à cocher et php/mysql [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Inscrit en
    Février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 24
    Par défaut case à cocher et php/mysql
    salut
    je viens de créer un formulaire avec 3 cases à cocher (exemple: formation :html, javascript, php)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <tr><td><!--mstheme--><font face="Arial">formation :<!--mstheme--></font>
     
    <td><!--mstheme--><font face="Arial"><input type="checkbox" name="html" value="html">Le langage HTML<br>
     
    <input type="checkbox" name="js" value="js">Le langage Javascript<br>
     
    <input type="checkbox" name="php" value="php">Le langage PHP<!--mstheme--></font></td></tr>
    maintenant je veux récupérer les données à partir du checkbox et les mettre dans la base de données :
    code php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    $f=$_POST['html']; 
    $g=$_POST['js']; 
    $h= $_POST['php'];
     
    $req="INSERT INTO table values('$f','$g','$h')"; 
    $resultat = mysql_query($req) ;
    mais le problème c'est qu'il m'affiche : undefined js at ligne 11

    cad que les cases que je n'ai pas coché affichent une erreur, solution ?

    merci

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Par défaut
    normal sont transmises en post que les cases cochées

  3. #3
    Membre actif
    Inscrit en
    Février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 24
    Par défaut
    normalement l'utilisateur doit cocher une case et je met dans la base de données une seule valeur (html , js,php ) dans la base j'ai une table comme suit :
    table(js(texte),php(texte),html(texte)) et je dois insérer une seule valeur dans la table

  4. #4
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    pour ne plus avoir d'erreur, il te suffit de vérifier que les variables existent !

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    if( isset($_POST["html"]) )
       $f=$_POST['html']; 
    else
       $f = 0;
     
    if( isset($_POST["js"]) )
       $g=$_POST['js']; 
    else 
       $g = 0;
     
    if( isset($_POST["php"]) )
       $h= $_POST['php'];
    else
       $h = 0;

  5. #5
    Membre actif
    Inscrit en
    Février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 24
    Par défaut
    j'ai déja essayer avec ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $f=$_POST['html']; 
    $g=$_POST['js']; 
    $h= $_POST['php'];
    if (isset ($_POST['HTML'])) $f= '1'; else $f = '0'; 
    if (isset ($_POST['js'])) $g = '1'; else $g = '0'; 
    if (isset ($_POST['PHP'])) $h = '1'; else $h = '0';
    mais ça donne une erreur dans l'option qui n'est pas cochée (exemple si je coche $f=$_POST['html'] j'aurais 2 erreurs aux lignes $g=$_POST['js'];
    $h= $_POST['php']

  6. #6
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    tout à fait normal vu que tu fais une attribution de variable AVANT de vérifier si elle existe !!

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $f=$_POST['html']; 
    $g=$_POST['js']; 
    $h= $_POST['php'];
    if (isset ($_POST['HTML'])) $f= '1'; else $f = '0'; 
    if (isset ($_POST['js'])) $g = '1'; else $g = '0'; 
    if (isset ($_POST['PHP'])) $h = '1'; else $h = '0';

    Tes 3 premières lignes ne servent à rien, et ce sont elles qui te renvoient une erreur !


    NB : Il en va de même dans les conditions multiples... Exemple :

    Admettons que $_POST["var"] ne soit pas défini :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if( $_POST["var"] == "un truc" && isset($_POST["var"]) ) {
        // si $_POST["var"] n'est pas défini, la condition renverra une erreur car tu test la valeur de la variable AVANT de tester si elle existe !
    }
     
    if( isset($_POST["var"]) && $_POST["var"] == "un truc" ) {
        // si $_POST["var"] n'est pas défini, la condition renverra simplement False et ne passera pas. Cette condition est donc correcte car le isset() se trouve avant !
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Cases à cocher et PHP
    Par masseur dans le forum Langage
    Réponses: 5
    Dernier message: 02/07/2007, 14h30
  2. [Tableaux] Utiliser en case à cocher en PHP
    Par innova dans le forum Langage
    Réponses: 18
    Dernier message: 17/01/2007, 15h38
  3. [MySQL] Stocker résultats des cases à cocher dans table Mysql
    Par yadou dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 20/11/2006, 23h26
  4. Problème cases à cocher avec connection Mysql
    Par cams dans le forum SQL Procédural
    Réponses: 8
    Dernier message: 01/12/2005, 14h13
  5. [Tableaux] cases à cocher et PHP
    Par tjoce dans le forum Langage
    Réponses: 5
    Dernier message: 20/10/2005, 10h06

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