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 :

[SQL] Requete SELECT un peu confuse


Sujet :

PHP & Base de données

  1. #21
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Tu initialises ta requête avec $req = "SELECT * FROM table WHERE 1=1" (le 1=1 c'est juste une astuce pour simplifier la suite spéciale dédicace à Gérard )

    Et après dans ta page de traitement tu récupères les données de ton formulaire de façon classique (nom et valeurs des champs), et pour chaque donnée tu ajoutes la condition à ta requête ($req .= " AND condition=valeur").

    Comme ça à la fin tu te retrouves avec une requête qui contient juste les restrictions données par l'utilisateur.

    D'ailleurs si les utilisateurs ne saisissent pas les conditons en entier, il faut plutôt mettre $req .= " AND condition='%valeur%'" dans ce cas.

  2. #22
    Membre Expert
    Avatar de guitou12
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 077
    Par défaut
    Regarde le post que je t'ai lié c'est à peu de choses ce que tu vas devoir faire...
    Ex développeur Php / J2EE.
    Actuellement reconverti à SharePoint 2013

    Mon blog SP 2013

  3. #23
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 78
    Par défaut
    ok merci, je vais essayer de mettre ceci en application.

    je vous tiens au courant.

  4. #24
    Membre émérite
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Par défaut
    Spirit : gérald!!!!!!!!!!!!! pas gerard

  5. #25
    Membre Expert
    Avatar de guitou12
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 077
    Par défaut
    Citation Envoyé par gerald2545
    Spirit : gérald!!!!!!!!!!!!! pas gerard

    JWHITE
    Ex développeur Php / J2EE.
    Actuellement reconverti à SharePoint 2013

    Mon blog SP 2013

  6. #26
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Citation Envoyé par gerald2545
    Spirit : gérald!!!!!!!!!!!!! pas gerard
    OLALA la boulette.

    Toutes mes excuses Gérald, vraiment pas fait exprès sur le coup , vraiment désolé.


  7. #27
    Membre émérite
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Par défaut
    non ne dis pas ça , je n'irai pas jusque là........
    excuses acceptées

  8. #28
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Citation Envoyé par gerald2545
    non ne dis pas ça , je n'irai pas jusque là........
    excuses acceptées
    Merci.

    En fait j'aurais dû mettre Gégé comme ça j'aurais été tranquille

  9. #29
    Membre émérite
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Par défaut
    lol, j'accepte djé aussi

  10. #30
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 78
    Par défaut
    j'aurais aimé avoir une petite précision,

    quand tu dit je cite:
    et pour chaque donnée tu ajoutes la condition à ta requête ($req .= " AND condition=valeur").
    si je dispose d'un menu déroulant, il y aura donc plusieurs valeurs possibles. Est ce que je dois écrire plusieurs fois ($req .= " AND condition=valeur")

    Mon code doit donner quelque chose du genre?
    $req="SELECT Titre,Corps FROM classification WHERE 1=1"
    $req .= " AND $autresSupport='%Com&média%'"
    $req .= " AND $autresSupport='%Ouest France%'"
    $req .= " AND $autresSupport='%....%'"
    Le truc aussi c'est que pour un champ texte ou l'utilisater peut écrire ce qu'il veut quand il effectue un enregistrement, quel valeur je dois mettre dans condition=valeur?

  11. #31
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Ah oki il peut y avoir une sélection multiple donc il va quand même falloir du OR, c'est un peu plus compliqué mais ça va se faire.

    En fait donne le code de ton formulaire ça va être plus simple parce que pour expliquer c'est chaud.

  12. #32
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 78
    Par défaut
    D'avance désolé pour la longueur:

    En ce qui concerne le code de la page résultat.php, ca donne ça:
    <?php require_once('../Connections/conn_bt_articles.php'); ?>
    <?php
    $support_rsdonneesBdd = "0";
    $autresSupport_rsdonneesBdd = "0";
    $typeDeSupport_rsdonneesBdd = "0";
    $localisationSupport_rsdonneesBdd = "0";
    $annee_rsdonneesBdd = "0";
    $mois_rsdonneesBdd = "0";
    $secteur_rsdonneesBdd = "0";
    $regionDeptConcerne_rsdonneesBdd = "0";
    $autresRegion__rsdonneesBdd = "0";
    $Titre_rsdonneesBdd = "0";
    $Corps_rsdonneesBdd = "0";

    if(isset($_POST['support'])){
    $support_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['support'] : addslashes($_POST['support']);
    }

    if (isset($_POST['autresSupport'])) {
    $autresSupport_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['autresSupport'] : addslashes($_POST['autresSupport']);
    }

    if(isset($_POST['typeDeSupport'])){
    $typeDeSupport_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['typeDeSupport'] : addslashes($_POST['typeDeSupport']);
    }

    if(isset($_POST['localisationSupport'])){
    $localisationSupport_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['localisationSupport'] : addslashes($_POST['localisationSupport']);
    }

    if(isset($_POST['annee'])){
    $annee_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['annee'] : addslashes($_POST['annee']);
    }

    if(isset($_POST['mois'])){
    $mois_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['mois'] : addslashes($_POST['mois']);
    }

    if(isset($_POST['secteur'])){
    $secteur_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['secteur'] : addslashes($_POST['secteur']);
    }

    if(isset($_POST['regionDeptConcerne'])){
    $regionDeptConcerne_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['regionDeptConcerne'] : addslashes($_POST['regionDeptConcerne']);
    }

    if(isset($_POST['autresRegion'])){
    $autresRegion_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['autresRegion'] : addslashes($_POST['autresRegion']);
    }

    if(isset($_POST['motcle_titre'])){
    $motcle_titre_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['motcle_titre'] : addslashes($_POST['motcle_titre']);
    }

    if(isset($_POST['motcle_texte'])){
    $motcle_texte_rsdonneesBdd = (get_magic_quotes_gpc()) ? $_POST['motcle_texte'] : addslashes($_POST['motcle_texte']);
    }


    mysql_select_db($database_conn_bt_articles, $conn_bt_articles);


    $query_rsdonneesBdd ="SELECT Titre,Corps FROM classification WHERE CL_autresSupport = '$autresSupport_rsdonneesBdd' AND CL_support = '$support_rsdonneesBdd' OR CL_typeDeSupport = '$typeDeSupport_rsdonneesBdd'
    OR CL_localisationSupport = '$localisationSupport_rsdonneesBdd' OR CL_année = '$annee_rsdonneesBdd' OR CL_mois = '$mois_rsdonneesBdd' OR CL_secteur = '$secteur_rsdonneesBdd' OR CL_regionDeptConcerne = '$regionDeptConcerne_rsdonneesBdd'
    OR CL_autresRegion = '$autresRegion_rsdonneesBdd' OR Titre = '$motcle_titre_rsdonneesBdd' OR Corps = '$motcle_texte_rsdonneesBdd' ";

    $rsdonneesBdd = mysql_query($query_rsdonneesBdd, $conn_bt_articles) or die(mysql_error());
    $row_rsdonneesBdd = mysql_fetch_assoc($rsdonneesBdd);
    $totalRows_rsdonneesBdd = mysql_num_rows($rsdonneesBdd);
    ?>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

    <html><!-- InstanceBegin template="/Templates/Mod_gestion.dwt.php" codeOutsideHTMLIsLocked="false" -->
    <head>
    <!-- InstanceBeginEditable name="doctitle" -->
    <title>Document sans titre</title>
    <!-- InstanceEndEditable --><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <style type="text/css">
    <!--
    .Style5 {font-family: Geneva, Arial, Helvetica, sans-serif; color: #FFFFFF; }
    -->
    </style>
    <!-- InstanceBeginEditable name="head" --><!-- InstanceEndEditable -->
    </head>

    <body>
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr bgcolor="#F6A01A">
    <th width="38%" rowspan="2" scope="col"><a href="../index.php"><img src="../Image/logoOrange.gif" alt="" width="211" height="51"></a></th>
    <th width="30%" height="33" scope="col"><span class="Style5"><a href="InsererLettre.php">Ins&eacute;rer lettre d'information</a> </span></th>
    <th width="32%" scope="col"><span class="Style5"><a href="SupprimerLettre.php">Supprimer lettre d'information </a></span></th>
    </tr>
    <tr>
    <td colspan="2" bgcolor="#F6A01A"><div align="center" class="Style5"><strong></strong></div>
    <div align="center" class="Style5"><strong><a href="RechercherLettre.php">Rechercher lettre d'information</a></strong></div></td>
    </tr>
    </table>
    <!-- InstanceBeginEditable name="RégionModif3" -->
    <?php
    //TEV Search Result rsdonneesBdd
    $balise = '<strong>';
    $fin_balise = '</strong>';
    $autresSupport_rsdonneesBdd = $_POST['autresSupport'];
    $support_rsdonneesBdd = $_POST['support'];
    $typeDeSupport_rsdonneesBdd = $_POST['typeDeSupport'];
    $localisationSupport_rsdonneesBdd = $_POST['localisationSupport'];
    $annee_rsdonneesBdd = $_POST['annee'];
    $mois_rsdonneesBdd = $_POST['mois'];
    $regionDeptConcerne_rsdonneesBdd = $_POST['regionDeptConcerne'];
    $autresRegion_rsdonneesBdd = $_POST['autresRegion'];
    $motcle_titre_rsdonneesBdd = $_POST['motcle_titre'];
    $motcle_texte_rsdonneesBdd = $_POST['motcle_texte'];

    if(empty($_POST['autresSupport']) && empty($_POST['support']) && empty($_POST['typeDeSupport'])&& empty($_POST['localisationSupport']) && empty($_POST['annee']) && empty($_POST['mois']) && empty($_POST['secteur']) && empty($_POST['regionDeptConcerne']) && empty($_POST['autresRegion']) && empty($_POST['motcle_titre']) && empty($_POST['motcle_texte']) )
    {
    echo htmlentities("Erreur ! Les champs de recherche sont vides.");
    exit();
    }
    elseif ($totalRows_rsdonneesBdd == 1)
    { echo ''.$totalRows_rsdonneesBdd.' '.htmlentities("enregistrement trouvé pour votre requête :").'
    '.$balise.'
    '.$_POST['support'].'
    '.$_POST['autresSupport'].'
    '.$_POST['typeDeSupport'].'
    '.$fin_balise.'';
    }
    elseif ($totalRows_rsdonneesBdd >1)
    { echo ''.$totalRows_rsdonneesBdd.' '.htmlentities("enregistrements trouvés pour votre requête :").'
    '.$balise.'
    '.$_POST['support'].'
    '.$_POST['autresSupport'].'
    '.$_POST['typeDeSupport'].'
    '.$fin_balise.'';
    }
    else
    { echo ''.htmlentities("aucun enregistrement trouvé pour votre requête :").' '.$balise.''.$_POST['support'].''.@$_POST['autresSupport'].''.$_POST['typeDeSupport'].''.$fin_balise.'';
    }
    ?>
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <th scope="col">
    <?php if ($totalRows_rsdonneesBdd > 0) { // Show if recordset not empty ?>
    <?php do { ?>
    <table width="100%" height="100" border="0" cellpadding="0" cellspacing="0" bordercolor="#000000" bgcolor="#FFFF99">

    <tr bordercolor="#0000FF" bgcolor="#99FFFF">
    <td width="32%"><div align="center">Titre</div></td>
    <td width="68%"><div align="left"><?php echo $row_rsdonneesBdd['Titre']; ?></div></td>
    </tr>
    <tr bordercolor="#0000FF" bgcolor="#FFFF99">
    <td><div align="center">Corps</div></td>
    <td><div align="left"><?php echo $row_rsdonneesBdd['Corps']; ?></div></td>
    </tr>
    <tr>
    <td><div align="left"></div></td>
    <td><div align="left"></div></td>
    </tr>
    </table>
    <?php } while ($row_rsdonneesBdd = mysql_fetch_assoc($rsdonneesBdd)); ?>
    <?php } // Show if recordset not empty ?>
    <p>&nbsp;</p>
    <form name="form1" method="post" action="index.php">
    <input type="submit" name="Submit2" value="Retour accueil">
    </form>
    <form name="form2" method="post" action="RechercherLettre.php">
    <input type="submit" name="Submit" value="Continuer les recherches">
    </form> <p>&nbsp;</p></th></tr>
    </table>
    <!-- InstanceEndEditable -->
    </body>
    <!-- InstanceEnd --></html>
    <?php
    mysql_free_result($rsdonneesBdd);
    ?>

    et pour la page de recherche avec sélection dans des menu déroulant ça donne ça:
    <?php require_once('../Connections/conn_bt_articles.php'); ?>
    <?php
    $search_rsmotcle = "0";
    if (isset($search)) {
    $search_rsmotcle = (get_magic_quotes_gpc()) ? $search : addslashes($search);
    }
    mysql_select_db($database_conn_bt_articles, $conn_bt_articles);
    $query_rsmotcle = sprintf("SELECT * FROM classification WHERE Corps = '$%s'", $search_rsmotcle);
    $rsmotcle = mysql_query($query_rsmotcle, $conn_bt_articles) or die(mysql_error());
    $row_rsmotcle = mysql_fetch_assoc($rsmotcle);
    $totalRows_rsmotcle = mysql_num_rows($rsmotcle);
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html><!-- InstanceBegin template="/Templates/Mod_gestion.dwt.php" codeOutsideHTMLIsLocked="false" -->
    <head>
    <!-- InstanceBeginEditable name="doctitle" -->
    <title>Document sans titre</title>
    <!-- InstanceEndEditable --><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <style type="text/css">
    <!--
    .Style5 {font-family: Geneva, Arial, Helvetica, sans-serif; color: #FFFFFF; }
    -->
    </style>
    <!-- InstanceBeginEditable name="head" --><!-- InstanceEndEditable -->
    </head>

    <body>
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr bgcolor="#F6A01A">
    <th width="38%" rowspan="2" scope="col"><a href="../index.php"><img src="../Image/logoOrange.gif" alt="" width="211" height="51"></a></th>
    <th width="30%" height="33" scope="col"><span class="Style5"><a href="InsererLettre.php">Ins&eacute;rer lettre d'information</a> </span></th>
    <th width="32%" scope="col"><span class="Style5"><a href="SupprimerLettre.php">Supprimer lettre d'information </a></span></th>
    </tr>
    <tr>
    <td colspan="2" bgcolor="#F6A01A"><div align="center" class="Style5"><strong></strong></div>
    <div align="center" class="Style5"><strong><a href="RechercherLettre.php">Rechercher lettre d'information</a></strong></div></td>
    </tr>
    </table>
    <!-- InstanceBeginEditable name="RégionModif3" -->
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <th bgcolor="#FFFF99" scope="col"><p class="Style6">Rechercher lettre d'information</p>
    <form action="Resultats.php" method="POST" name="recherche" class="Style6" id="recherche">
    <div align="center">
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <th width="28%" class="Style7" scope="col"><div align="center">Support:</div></th>
    <th width="54%" class="Style7" scope="col">
    <div align="left">
    <select name="support" id="support">
    <option value="Com&amp;m&eacute;dia">Com&amp;m&eacute;dia</option>
    <option value="Strat&eacute;gie">Strat&eacute;gie</option>
    <option value="Cbnews">Cbnews</option>
    <option value="Journal des entreprises">Journal des entreprises</option>
    <option value="Lettre API">Lettre API</option>
    <option value="Cl&eacute;s de la presse">Cl&eacute;s de la presse</option>
    <option value="Presse Oc&eacute;an">Presse Oc&eacute;an</option>
    <option value="Ouest France">Ouest France</option>
    <option value=" "></option>
    </select>
    </div></th>
    <th width="18%" class="Style7" scope="col">&nbsp;</th>
    </tr>
    <tr>
    <td height="27" class="Style7"><div align="center">Autres support : </div></td>
    <td class="Style7"><div align="left">
    <input name="autresSupport" type="text" id="autresSupport" value="" maxlength="255">
    </div></td>
    <td class="Style7">&nbsp;</td>
    </tr>
    <tr>
    <td class="Style7"><div align="center">Type de support : </div></td>
    <td class="Style7"><div align="left">
    <select name="typeDeSupport" id="typeDeSupport">
    <option value=" "></option>
    <option value="NL1">NL1</option>
    <option value="NL2">NL2</option>
    <option value="Flash">Flash</option>
    <option value="Magazine">Magazine</option>
    </select>
    </div></td>
    <td class="Style7">&nbsp;</td>
    </tr>
    <tr>
    <td height="72" class="Style7"><div align="center">Localisation du support : </div></td>
    <td class="Style7"><div align="left">
    <select name="localisationSupport" id="localisationSupport">
    <option value="1">PDL</option>
    <option value="2">BZH</option>
    <option value="3">Autres</option>
    <option value="4"></option>
    </select>
    </div></td>
    <td class="Style7">&nbsp;</td>
    </tr>
    <tr>
    <td height="35" class="Style7"><div align="center">Date:</div></td>
    <td class="Style7"><div align="left">Ann&eacute;e:
    <select name="annee" id="select2">
    <option value="2004">2004</option>
    <option value="2005">2005</option>
    <option value="2006">2006</option>
    <option value="2007">2007</option>
    <option value="2008">2008</option>
    <option value="2009">2009</option>
    <option value="2010">2010</option>
    <option value="2011">2011</option>
    <option value="2012">2012</option>
    </select>
    Mois:
    <select name="mois" id="select">
    <option value="1">Janvier</option>
    <option value="2">F&eacute;vrier</option>
    <option value="3">Mars</option>
    <option value="4">Avril</option>
    <option value="5">Mai</option>
    <option value="6">Juin</option>
    <option value="7">Juillet</option>
    <option value="8">Ao&ucirc;t</option>
    <option value="9">Septembre</option>
    <option value="10">Octobre</option>
    <option value="11">Novembre</option>
    <option value="12">D&eacute;cembre</option>
    </select>
    </div></td>
    <td class="Style7"><div align="left"></div></td>
    </tr>
    <tr>
    <td height="32" class="Style7"><div align="center">Secteur:</div></td>
    <td class="Style7"><p align="left">
    <select name="secteur" id="secteur">
    <option value="1">M&eacute;dia TV</option>
    <option value="2">M&eacute;dia Presse</option>
    <option value="3">M&eacute;dia Radio</option>
    <option value="4">M&eacute;dia Affichage</option>
    <option value="5">M&eacute;dia Cin&eacute;ma</option>
    <option value="6">Agence Conseil</option>
    <option value="7">Agence Ev&egrave;nementielle</option>
    <option value="8">Agence Web</option>
    <option value="9">Agence Audio</option>
    <option value="10">Collectivit&eacute;s</option>
    <option value="11">Annonceurs</option>
    <option value="12">R&eacute;gie pub</option>
    <option value="13">Appel d'offre</option>
    </select>
    </p></td>
    <td class="Style7"><p align="left">&nbsp; </p></td>
    </tr>
    <tr>
    <td class="Style7">D&eacute;partement concern&eacute;: </td>
    <td class="Style7"><div align="center">
    <p align="left">
    <select name="regionDeptConcerne" id="regionDeptConcerne">
    <option value="1">22</option>
    <option value="2">29</option>
    <option value="3">35</option>
    <option value="4">56</option>
    <option value="5">R&eacute;gionBZH</option>
    <option value="6">44</option>
    <option value="7">49</option>
    <option value="8">53</option>
    <option value="9">72</option>
    <option value="10">85</option>
    <option value="11">R&eacute;gionPDL</option>
    <option value="12">Autres</option>
    </select>
    </p>
    </div></td>
    <td class="Style7"><p>&nbsp; </p></td>
    </tr>
    <tr>
    <td class="Style7">&nbsp;</td>
    <td class="Style7">
    <div align="left"> </div></td>
    <td class="Style7">&nbsp;</td>
    </tr>
    <tr>
    <td class="Style7"><div align="center">Autres r&eacute;gion : </div></td>
    <td class="Style7"><input name="autresRegion" type="text" id="autresRegion"></td>
    <td class="Style7">&nbsp;</td>
    </tr>
    <tr>
    <td class="Style7">&nbsp;</td>
    <td class="Style7">&nbsp;</td>
    <td class="Style7">&nbsp;</td>
    </tr>
    <tr>
    <td class="Style7"><div align="center">Mot cl&eacute; du titre: </div></td>
    <td class="Style7"><input name="motcle_titre" type="text" id="titre3" size="40"></td>
    <td class="Style7">&nbsp;</td>
    </tr>
    <tr>
    <td class="Style7"><div align="center"></div></td>
    <td class="Style7">&nbsp;</td>
    <td class="Style7"><div align="center"> </div></td>
    </tr>
    <tr>
    <td class="Style7"><div align="center">Mot cl&eacute; du texte: </div></td>
    <td class="Style7"><input name="motcle_texte" type="text" id="motcle_texte" size="40"></td>
    <td class="Style7">&nbsp;</td>
    </tr>
    <tr>
    <td class="Style7">&nbsp;</td>
    <td class="Style7">&nbsp;</td>
    <td class="Style7">&nbsp;</td>
    </tr>
    <tr>
    <td class="Style7">&nbsp;</td>
    <td class="Style7"><div align="center">
    <input name="rechercher" type="submit" id="rechercher" value="Rechercher">
    </div></td>
    <td class="Style7">&nbsp;</td>
    </tr>
    </table>
    </div>
    <input type="hidden" name="MM_insert" value="form1">
    </form>
    <p class="Style7">&nbsp;</p></th>
    </tr>
    <tr>
    <th scope="col"><p>Rechercher lettre d'information </p>
    <p>&nbsp;</p></th>
    </tr>
    </table>
    <!-- InstanceEndEditable -->
    </body>
    <!-- InstanceEnd --></html>
    <?php
    mysql_free_result($rsmotcle);
    ?>

  13. #33
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Ah oui quand même
    J'avais oublié que tu bossais sous DW quelle horreur.

    Mais je croyais que tu voulais sélectionner plusieurs journaux en même temps par exemple, toutes tes listes déroulantes semblent être à sélection unique, je me trompe (parce que ça simplifie le problème sinon)

  14. #34
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 78
    Par défaut
    oui, dans chaque menu déroulant on ne peut choisir qu'une seule info mais j'ai plusieur menu déroulant et j'ai des champs à completer genre un champs mot clé qui recherche dans le corps du texte.

  15. #35
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Par exemple pour le select qui a pour NAME typeDeSupport ça donne ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if($_POST['typeDeSupport'] != "")
      $req .= " AND typeDeSupport='" . $_POST['typeDeSupport'] . "'";
    En supposant que dans ta BDD ton champ s'appelle typeDeSupport.

    Autre exemple avec ton champ motcle_titre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if($_POST['motcle_titre'] != "")
      $req .= " AND titre LIKE '%" . $_POST['motcle_titre'] . "%'";
    Après il suffit de prendre tous tes champs un par un et de faire la même chose en adaptant si besoin.

  16. #36
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 78
    Par défaut
    A quel endroit dans mon code je dois placer ce que tu ma filer:
    if($_POST['typeDeSupport'] != "")
    $req .= " AND typeDeSupport='" . $_POST['typeDeSupport'] . "'";
    dois-je garder tous le reste?

  17. #37
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Citation Envoyé par benoitinfrance
    A quel endroit dans mon code je dois placer ce que tu ma filer:

    dois-je garder tous le reste?
    Bah dans ta page de traitement, là où tu fais la recherche, au moment où tu construis ta requête de recherche.
    J'avoue que tu me fais peur là

  18. #38
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 78
    Par défaut
    n'est pas peur jesavais que c'était dans ma pages ou j'effectuais ma requete mais je ne savais pas si jedevais le placer juste devant ma requete ou pas.

    Et sinon je ne touche pas au reste?

  19. #39
    Membre émérite
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Par défaut
    si tu poses cette question, il a raison d'avoir peur.....
    ce qu'il te donne comme tuyau, c'est pour construire ta requête..
    tu as un lien vers ton formulaire sur le web STP?
    quand tu dis
    si je dispose d'un menu déroulant, il y aura donc plusieurs valeurs possibles. Est ce que je dois écrire plusieurs fois ($req .= " AND condition=valeur")
    puis après
    oui, dans chaque menu déroulant on ne peut choisir qu'une seule info mais j'ai plusieur menu déroulant
    là aussi, on peut avoir peur

    qu'entends-tu par
    Et sinon je ne touche pas au reste?
    ?

  20. #40
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    C'est ça qu'il faut virer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $query_rsdonneesBdd ="SELECT Titre,Corps FROM classification WHERE CL_autresSupport = '$autresSupport_rsdonneesBdd' AND CL_support = '$support_rsdonneesBdd' OR CL_typeDeSupport = '$typeDeSupport_rsdonneesBdd'
    OR CL_localisationSupport = '$localisationSupport_rsdonneesBdd' OR CL_année = '$annee_rsdonneesBdd' OR CL_mois = '$mois_rsdonneesBdd' OR CL_secteur = '$secteur_rsdonneesBdd' OR CL_regionDeptConcerne = '$regionDeptConcerne_rsdonneesBdd' 
    OR CL_autresRegion = '$autresRegion_rsdonneesBdd' OR Titre = '$motcle_titre_rsdonneesBdd' OR Corps = '$motcle_texte_rsdonneesBdd' ";
    A la place tu initialises ta requête comme je te l'ai montré précedemment (avec WHERE 1=1) et après pour chaque champ tu adaptes ce que je viens de te donner (les deux exemples).

    Un conseil vas-y petit ) petit, commence par faire la requête sans conditions, et ajoutes ensuite tes conditions une par une pour vérifier.


    Edit : merci djé tu résumes parfaitement ma pensée
    Mais on va y arriver no souci.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. [SQL] Un select un peu chaud
    Par KamiRaiden dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 14/03/2008, 14h53
  2. Pb SQL Requete selection
    Par flagfight dans le forum Requêtes et SQL.
    Réponses: 15
    Dernier message: 18/05/2006, 16h40
  3. [SQL] requete select max
    Par kabikou dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 19/10/2005, 16h18
  4. [SQL] requetes inbriquées un peu plus complexe.
    Par Devil666 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 23/05/2005, 11h06
  5. SQL server 7.0 requete select
    Par sangokus dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 10/03/2004, 11h09

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