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 :

Formulaire avec liste deroulante


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Juillet 2020
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2020
    Messages : 38
    Points : 34
    Points
    34
    Par défaut Formulaire avec liste deroulante
    Bonjour,

    Je viens de crée un formulaire pour ajouter des entrées dans ma BDD.

    Il fonctionne parfaitement, mais j'ai 2 problèmes.

    J'aimerais que le premier dans ma liste déroulante (qui est alimenté depuis ma bdd) soit sélectionné dés que ma page est rafraichie.

    Après a moi de le changer si besoin.
    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
     
    <form method="post" action="">
    <p>
         <select name="list" id="list">
    <?php
    $reponse = $bdd->query('SELECT * FROM noms WHERE ligne = "ligne1"');
     
    while ($donnees = $reponse->fetch())
    {
    ?>
     
        <option value="<?php echo $donnees['nombase']; ?>"<?php if(isset($_POST['list']) && $_POST['list'] == $donnees['nombase']) echo"selected" ?>><?php echo $donnees['vrainom']; ?></option>
    <?php
    }
    ?>
    </select>
    <input type="submit" name="choixgares" value="OK"/>
    2eme problème : J'aimerais (une fois le nom dans la liste déroulante choisis et appuyer sur OK) qu'il me donne une phrase m'indiquant que le nom a bien était sélectionné.

    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Vous avez bien sélectionné : <?php echo $donnees['vrainom']; ?>
    Mais impossible, je veux absolument la variable 'vrainom' dans ma phrase.

    Merci d'avance

  2. #2
    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
    Pour ton problème 1, le code a l'air ok si le but est de re-sélectionner la valeur soumise par le formulaire. qu'est-ce qui ne fonctionne pas ?

    Pour ton problème 2, basiquement tu veux afficher le libellé correspondant à la valeur sélectionnée dans le formulaire ? Ben, il n'y a pas 36 façons de faire ça : il faut retourner chercher le libellé dans la base de donnée à partir de la valeur de la la liste.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?
    $stmt = $bdd->prepare('SELECT * FROM noms WHERE nombase = ?');
    $stmt->execute([$_POST['list']]);
     
    $donnees = $stmt->fetch(); // on suppose qu'il n'y a qu'une seule ligne correspondante en base
    ?>
    Vous avez bien sélectionné : <?php echo $donnees['vrainom']; ?>
    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]

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Juillet 2020
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2020
    Messages : 38
    Points : 34
    Points
    34
    Par défaut
    Bonjour et Merci de ta réponse.
    Pour le problème 2, il est résolu. Merci

    Pour le problème 1, j'aimerais qu'il me "valide" le premier de la liste comme ci j'avais déjà clique sur valider.
    Lors de la validation, il me donne accès a un autre formulaire, qui me permet de modifier ma BDD.

    Tant que je n'est pas fait l'action de validation, il me donne des messages d'erreur, j'ai mis des "@" pour les cacher en attendant l'action de valider mais un message reste et je n'arrive pas à l'enlever.

    Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 1 in C:\xampp2\htdocs\TEST\TEST.php:51 Stack trace: #0 C:\xampp2\htdocs\TEST\TEST.php(51): PDO->query('SELECT * FROM ') #1 {main} thrown in C:\xampp2\htdocs\TEST\TEST.php on line 51
    Il y a bien le faite de mettre "display_errors=Off" sur le fichier php.ini, qui fonctionne, mais j'aurais aimé une solution plus ciblé.

    Si tu as une solution pour le cacher je suis preneur.

    Merci d'avance

Discussions similaires

  1. demande de formulaire avec liste deroulante
    Par ygebici dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 02/06/2017, 18h14
  2. [MySQL] champ de formulaire en input avec liste deroulante en mysqli
    Par maub85 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 10/04/2017, 08h07
  3. [AC-2003] probleme formulaire avec liste deroulante
    Par makila64 dans le forum IHM
    Réponses: 4
    Dernier message: 27/03/2012, 13h45
  4. prob formulaire mail avec liste deroulante
    Par oukok dans le forum Langage
    Réponses: 3
    Dernier message: 15/06/2007, 13h20
  5. Formulaire avec liste basée sur une autre table
    Par sabotage dans le forum Langage SQL
    Réponses: 6
    Dernier message: 10/08/2005, 13h43

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