Salut a tous...! Je souhaiterais faire un moteur de recherche qui chercherait des news dans ma base de donnée.
J'ai rechercher dans le forum et la solution est assez minime et c'est pas vraiment le top...
Dans mon forumulaire j'ai :
un champ pour les mot clé, la variable est $mot
un champ pour l'auteur, la variable est $auteur
un bouton pour le type de la news, la variable est $console_salon
un bouton pour le type de la news, la variable est $console_portable
un bouton pour le type de la news, la variable est $console_concurence
un bouton pour le type de la news, la variable est $cat_economie
(il y a 4 type de news, mais 3 sont secondaires)
$requete = 'SELECT * FROM news WHERE validation=1';
if (!empty($mot)) {
$requete .= " AND titre LIKE CONVERT( _utf8 '%".$mot."%' USING latin1) COLLATE latin1_german1_ci OR texte LIKE CONVERT( _utf8 '%".$mot."%' USING latin1) COLLATE latin1_german1_ci";
}
if (!empty($auteur)) {
$requete .= " AND auteur LIKE CONVERT( _utf8 '%".$auteur."%' USING latin1) COLLATE latin1_german1_ci";
}
if (!empty($console_salon)) {
$requete .= " AND categorie_salon = '".$console_salon."'";
}
if (!empty($console_portable)) {
$requete .= " AND categorie_portable = '".$console_portable."'";
}
if (!empty($console_concurence)) {
$requete .= " AND categorie_concurence = '".$console_concurence."'";
}
if (!empty($cat_economie)) {
$requete .= " AND categorie_economie = '".$cat_economie."'";
}
$requete .= " ORDER BY date_news DESC limit ".$limite.",".$nombre;
// on envoie la requête
$req = mysql_query($requete) or die('Erreur SQL !<br>'.$requette.'<br>'.mysql_error());
Premièrement ce que j'aimerais corrigé, c'est que si on mets plusieurs mot clés le script va pas rechercher la chaine directe dans la news, mais séparément. Vous voyez ce que je veux dire ?
Deuxièmement, c'est assez dur a expliquer...J'aimerais que si l'on choisis un type de news par exemple $console_salon et un autre par exemple $console_portable, la recherche se fait soit si la news est de type $console_salon ou alors de type $console_portable ou alors les deux.
Parce qu'avec le script ci-dessu, il va rechercher toutes les news qui sont de type $console_salon ET $console_portable. SI je mets un OR d'après ce que j'imagine ça va pas m'afficher ce que jaimerais.
J'espère que vous avez compris ce que jaimerais faire...
Merci d'avance...!
Salut a tous...! Je souhaiterais faire un moteur de recherche qui chercherait des news dans ma base de donnée.
J'ai rechercher dans le forum et la solution est assez minime et c'est pas vraiment le top...
Dans mon forumulaire j'ai :
un champ pour les mot clé, la variable est $mot
un champ pour l'auteur, la variable est $auteur
un bouton pour le type de la news, la variable est $console_salon
un bouton pour le type de la news, la variable est $console_portable
un bouton pour le type de la news, la variable est $console_concurence
un bouton pour le type de la news, la variable est $cat_economie
(il y a 4 type de news, mais 3 sont secondaires)
[php]$requete = 'SELECT * FROM news WHERE validation=1';
if (!empty($mot)) {
$requete .= " AND titre LIKE CONVERT( _utf8 '%".$mot."%' USING latin1) COLLATE latin1_german1_ci OR texte LIKE CONVERT( _utf8 '%".$mot."%' USING latin1) COLLATE latin1_german1_ci";
}
if (!empty($auteur)) {
$requete .= " AND auteur LIKE CONVERT( _utf8 '%".$auteur."%' USING latin1) COLLATE latin1_german1_ci";
}
if (!empty($console_salon)) {
$requete .= " AND categorie_salon = '".$console_salon."'";
}
if (!empty($console_portable)) {
$requete .= " AND categorie_portable = '".$console_portable."'";
}
if (!empty($console_concurence)) {
$requete .= " AND categorie_concurence = '".$console_concurence."'";
}
if (!empty($cat_economie)) {
$requete .= " AND categorie_economie = '".$cat_economie."'";
}
$requete .= " ORDER BY date_news DESC limit ".$limite.",".$nombre;
// on envoie la requête
$req = mysql_query($requete) or die('Erreur SQL !<br>'.$requette.'<br>'.mysql_error());[/php]
Premièrement ce que j'aimerais corrigé, c'est que si on mets plusieurs mot clés le script va pas rechercher la chaine directe dans la news, mais séparément. Vous voyez ce que je veux dire ?
Deuxièmement, c'est assez dur a expliquer...J'aimerais que si l'on choisis un type de news par exemple $console_salon et un autre par exemple $console_portable, la recherche se fait soit si la news est de type $console_salon ou alors de type $console_portable ou alors les deux.
Parce qu'avec le script ci-dessu, il va rechercher toutes les news qui sont de type $console_salon ET $console_portable. SI je mets un OR d'après ce que j'imagine ça va pas m'afficher ce que jaimerais.
J'espère que vous avez compris ce que jaimerais faire... :D
Merci d'avance...!