Recherche multicritères

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Recherche multicritères

par Invité » 15 juin 2005, 16:15

Non, pas à ce que je sache.



Pierre

par Cyrano » 11 juin 2005, 17:48

ta variable $critere est un tableau ?

par Invité » 11 juin 2005, 17:41

Marche pô :?
Il ne tiens pas compte du mot clé. Seules les cases cochées sont prises en compte dans les résultats de la recherche.

Et si j'écris juste un mot clé et que je coche aucune case, j'obtien un message d'erreur du genre :
Warning: implode(): Bad arguments. in c:\.... on line 3
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ') OR mot_cle LIKE '%VARCle%'' at line 1
voici la ligne 3 : $criteres=implode(",",$_POST["VARCase"]);

Pierre

par Cyrano » 11 juin 2005, 17:26

Code : Tout sélectionner

select * from educa where id_fiche_doc in ($criteres) OR mot_cle LIKE '%VARCle%';
Essaye avec ça :)

par Invité » 11 juin 2005, 16:45

Il s'agit d'une bibliothèque où j'ai un module de recherche avec un champ pour faire une recherche par mot clé et des cases à cocher pour restreindre la recherche sur un certain type de document (ex.: livres, brochures, rapport,...).

Je parviens soit à faire une recherche par mot clé soit une recherche sur les cases cochées.

Si j'utilese :
"select * from educa where id_fiche_doc in ($criteres)";
ou
"select * from educa mot_cle LIKE '%VARCle%'";

c'est ok, cependant si j'associe les deux comme dans mon 1er message, ça foire!

Y a-t-il une possibilité de compiler les deux?
Merci de votre patience

par Cyrano » 11 juin 2005, 15:14

Si tu as un nombre variable de critères de recherche, il faut construire dynamiquement ta requête pour ajuster le nombre de clauses WHERE au nombre de cases cochées.

par DocType » 11 juin 2005, 15:09

:?
Pas tout pigé sur ce coup là :roll:

Recherche multicritères

par pixfacto » 11 juin 2005, 11:52

Bonjour,

Je souhaiterais récupérer le résultat d'une recherche multicritères.
Cumulé une recherche par mots clés à une sélection de case à cocher.
Je parviens à obtenir l'un où l'autre résultat, mais pas le cumul des 2 critères de recherche.
Voici le code de ma page "résultat".

<?php
$criteres=implode(",",$_POST["VARCase"]);
mysql_select_db($database_InFolio, $InFolio);
$request="select * from educa where id_fiche_doc in ($criteres) AND mot_cle LIKE '%VARCle%'";
$request = mysql_query($request, $InFolio) or die(mysql_error());
$row_request = mysql_fetch_assoc($request);
$totalRows_request = mysql_num_rows($request);
?>


Quelqu'un peut-il m'aider?

Merci