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 :

Comment enregistrer le choix d'une balise select dans une table en Php*?


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2017
    Messages : 38
    Points : 41
    Points
    41
    Par défaut Comment enregistrer le choix d'une balise select dans une table en Php*?
    Comment enregistrer le chois d'une balise select dans une table en Php ?

    Bonjour, je souhaiterai pour ma culture, apprendre à enregistrer le choix d'un utilisateur dans une table.
    Je n'ai pas la possibilité de télécharger un serveur sur mon pc



    Par exemple:

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <select name="maliste">
      <option value="option1"></option>
      <option value="option2"></option>
    </select>
    Si on a choisi la deuxième option, avec les données de formulaire sera envoyé ceci:
    maliste=option2
    Je pense alors que nous devons enregistrer ma liste dans une variable


    $modele= maliste ;
    PUIs l'inserer dans ma base de donnée en faisant par exemple un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $insert=( Insert into ******(             ) ;
    Bon il s'agit d'un exemple assez rapide. Je n'ai même pas créer de base de donnée, de table mais est ce que c'est de cette manière ?
    Merci d'avance pour vos réponses.

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

    "formulaire PHP"


  3. #3
    Membre averti Avatar de solo190
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2007
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 412
    Points : 321
    Points
    321
    Par défaut
    bonjour ,
    insipre toi de ce sujet resolu pour debuter , ensuite reviens ici avec ton code si tu rencontre des soucis .
    https://www.developpez.net/forums/d1...te-deroulante/
    Des que tu aura la solution a ton besoin , passe à mysqli ou pdo car mysql est dépassé .
    A+
    www.etech-keys.com
    https://sms.etech-keys.com

    le boiteux qui suit le chemin devance le coureur qui s'en écarte .

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2017
    Messages : 38
    Points : 41
    Points
    41
    Par défaut
    Bonjour

    Nous avons un code ou une personne cherche justement à enregistrer une liste deroulante dans une base de donnee


    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
    <?php include("connect.inc") ?> /j'apelle le fichier connect.inc
    <form name="x" action="ajouY.php" method="post">
    <?php
    echo" <select name='modele'>
    <option><Sélectionnez un modèle de véhicule></option>
    <option>Peugeot1</option>
    <option>Peugeot2.</option>
    <option>Peugeot 3</option>
    <option>Peugeot 4</option>
    select>";
    ?>
     
    dans le fichier connect.inc il y a sa
    <?
    $connect = mysql_connect("localhost","root","")
    or die("Echec de la connection");
    $base= mysql_select_db("test", $connect) or die("Erreur de selection de la base");
     
    if($base == 0)
            die("Base innaccessible");
     
    ?>
    Ensuite une fois sélectionné cela renvoie une requête dans ajou.Y.php ou il y a sa:
    <?php include("connect.inc") ?>
    <html>
    <head>
    <link rel="stylesheet" href="style2.css" type="text/css">
    </head>
    <body>
     
    <h2>Ajout d'une réservation</h2>
    <?
     
     
    if(isset($_POST[modele]))
    {
          $req_insert = "INSERT INTO `personne` ( `modele` ) values('$_POST[modele ]')";
    ...
    }
     
     
    $resultat = mysql_query($req_insert) or die("Echec de l'insertion");
     
    if($resultat)
            echo "personne $_POST[modele] ajouté";
     
     
     
    ?>
    </body>
    </html>
    Cela est bon?
    Cordialement

  5. #5
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour

    C'est pas bon, l'utilisation des fonctions mysql_* qui sont obsolètes depuis la version 5.5 de PHP et retirées depuis la version 7, utilise PDO. Après, l'exécution de la requête doit être dans le bloc if(isset($_POST[modele])). Ensuite, si l'utilisateur laisse la valeur par défaut, tu auras la valeur "<Sélectionnez un modèle de véhicule>" insérée en base, utilise l'attribut "value" dans les options en mettant vide pour la première pour que tu puisses tester si oui ou non l'utilisateur a choisi un modèle.

    A+.

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2017
    Messages : 38
    Points : 41
    Points
    41
    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
    <form name="x" action="ajouY.php" method="post">
    <?php
    echo" <select name='modele'>
    <option value=*»*»><Sélectionnez un modèle de véhicule></option>
    <option value='option 1' >Peugeot1</option>
    <option value='option 2'>Peugeot2.</option>
    <option value='option 3'>Peugeot 3</option>
    <option value='option 4'>Peugeot 4</option>
    select>";
    ?>
    *
     
    <?
    $bdd= new pdo ( mysql*: host= localhost*; dbname= test*; charsert= utf 8, root;root)
     
     ?>
    <html>
    <head>
    <link rel="stylesheet" href="style2.css" type="text/css">
    </head>
    <body>
    *
    <h2>Ajout d'une réservation</h2>
    <?
    *
    *
    if(isset($_POST[modele]))
    {
          $req_insert = $bdd->( "INSERT INTO `personne` ( `modele` ) values('$_POST[modele ]')";
     
     
          $reg_insert->execute(array(modele))*;
    echo "personne $_POST[modele] ajouté";
    }
    *
    *
     
     
    *
    *
    *
    ?>
    </body>
    </html>
    C'est bon?

  7. #7
    Membre averti Avatar de solo190
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2007
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 412
    Points : 321
    Points
    321
    Par défaut
    bonjour a tous ,
    n3ptvn7 effectivement tu as evolué mais je ne pense pas que ce code soit fonctionnel , tu as encore des efforts à faire .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $bdd= new pdo ( mysql*: host= localhost*; dbname= test*; charsert= utf 8, root;root)
    pourquoi c'est * et pas de ; à la fin de la ligne ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req_insert = $bdd->( "INSERT INTO `personne` ( `modele` ) values('$_POST[modele ]')";
    pourquoi tes parentheses ne donne pas un nombre paire ? tu as 05 au lieu de 6 .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $reg_insert->execute(array(modele))*;
    pourquoi cet * ?
    tu dois penser à preparer tes requettes avant de les executer .
    inspire toi de l'exemple PDO de ce tuto
    https://www.w3schools.com/php/php_mysql_insert.asp
    A+
    www.etech-keys.com
    https://sms.etech-keys.com

    le boiteux qui suit le chemin devance le coureur qui s'en écarte .

  8. #8
    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
    @solo190 : je pense que les "*" qui se trouvent un peu partout dans le code viennent du forum. Il s'agit probablement d'espace ou de tabulations dans le code d'origine, mais le copier-coller sur le forum les "traduit" en étoiles.
    @n3ptvn7 : vérifie quand même ton code là où se trouve les "*" dans le code posté, tu as peut-être des caractères invisibles qui trainent dans ton code (par exemple des espaces insécables)
    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]

Discussions similaires

  1. Comment faire des itérations sur une table html? (PHP/MYSQL)
    Par mohsenuss91 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/05/2017, 12h02
  2. Réponses: 4
    Dernier message: 11/03/2012, 20h23
  3. [DOM] Selected ! Comment définir un choix pour une liste déroulante
    Par tavarlindar dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 29/05/2008, 12h07
  4. Comment enregistrer les images d'une page web ?
    Par Chris33 dans le forum Réseau/Web
    Réponses: 1
    Dernier message: 11/07/2006, 22h09

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