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 :

Changer requete SQL avec liste déroulante


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 11
    Par défaut Changer requete SQL avec liste déroulante
    Bonjour, je m'appel Kevin et je débute en php, je suis sur un projet de site de réservation pour le monde de la nuit.

    J'aimerais savoir comment faire pour changer la requête sql grâce à deux liste déroulante afin de pouvoir filtrer le résultat de ma requête
    Actuellement je vois les réservations de tout le monde, et j'aimerais les trier par membre et par date (membre et date inséré dans une BDD)

    le but étant de changer $Username par une valeure choisis dans la liste
    FROM {$tablename} WHERE user='$username'


    Voici mon code actuel qui n'est que brouillon ...

    Merci

    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
     
    <?php
    $sql = " SELECT nom FROM users order by nom"; 
    $result = mysql_query($sql) or die("Requete pas comprise"); 
    ?>
     
    <?php
    echo "<form action='ta_page.php' method='POST'> 
    <table><tr><td>
    <select name='prenom'>
    <option>RP</option>";  
    while ($row=mysql_fetch_array($result)) 
    { 
    echo"<option>$row[0]</option>"; 
    } 
    echo"</select></td></tr> 
    </table> 
    </form>"; 
     
    ?>
     
    <?php
    $sql = " SELECT dateresa FROM reservation"; 
    $result = mysql_query($sql) or die("Requete pas comprise"); 
    ?>
     
    <?php
    echo "<form action='ta_page.php' method='POST'> 
    <table><tr><td>
    <select name='dateresa'>
    <option>DateResa</option>";  
    while ($row=mysql_fetch_array($result)) 
    { 
    echo"<option>$row[0]</option>"; 
    }
    echo"</select></td></tr> 
    </table> 
    </form>"; 
     
    ?>
    Et voici la requête que j'aimerai modifier grâce a la liste déroulante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    // Préparation de la requête
    				$sql = "
    			    SELECT *
    			    FROM {$tablename} WHERE user='$username'
     
    			    ORDER BY {$order_by} {$order_dir}
    				";
    				$result = mysql_query($sql);
    Nom : filtre.png
Affichages : 944
Taille : 248,9 Ko

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Tu as seulement à ajouter les conditions :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $sql = "SELECT * FROM {$tablename} WHERE user='$username'";
     
    if (isset($_POST['dateresa'])) {
       $sql .= 'AND dateresa = "' . mysql_real_escape_string($_POST['dateresa']) .'"';
    }
     
    if (isset($_POST['prenom'])) {
       $sql .= 'AND nom = "' . mysql_real_escape_string($_POST['prenom']) .'"';
    }
     
    $sql .= " ORDER BY {$order_by} {$order_dir}";
    Détail : n'appelle pas "prenom" une liste qui fourni une colonne "nom"
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 11
    Par défaut
    Cela ne marche pas, je crois que le code de mes liste déroulante est incomplet et qu'elle ne retourne aucune information

  4. #4
    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 : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Effectivement, il manque les attributs value des options de tes listes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    echo "<select name='prenom'>
    <option>RP</option>";  
    while ($row=mysql_fetch_array($result)) 
    { 
    echo '<option value="'.$row[0].'">'.$row[0].'</option>'; 
    } 
    echo"</select>";
    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]

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 11
    Par défaut
    la requete sql ne fonctionne pas
    J'aimerais juste modifier la mienne que je viens de rectifier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $sql = "
        SELECT *
        FROM {$tablename} WHERE nom= 'CHOIX PAR LISTE DEROULANTE'
     
        ORDER BY {$order_by} {$order_dir}
    ";
    $result = mysql_query($sql);
    Ca ne fonctionne pas quand j'insert
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     "' . mysql_real_escape_string($_POST['dateresa']) .'"'

  6. #6
    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 : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    "ça ne marche pas", ça ne nous aide pas beaucoup à t'aider... Que se passe-t-il ? un message d'erreur ? aucun résultat ? trop de résultats ? ton écran explose ?
    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. [Smarty] requete SQL pour liste déroulante
    Par mickniclln dans le forum Bibliothèques et frameworks
    Réponses: 11
    Dernier message: 25/07/2015, 20h27
  2. [MySQL] Requête Sql avec liste déroulante
    Par SnOt02 dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 13/06/2014, 09h45
  3. requete d'insertion avec liste déroulantes avec deux colonnes
    Par maxeur dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 25/01/2007, 14h56
  4. [SQL] Problème avec liste déroulante et select
    Par cari dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 28/07/2006, 20h52
  5. [MySQL] probleme avec liste déroulante et requete
    Par Ludo75 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/01/2006, 13h55

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