une petite aide svp

4 posts in this topic

Posted · Report post

ci joint la ligne de code complete que j ai mise suivant votre conseil

if (isset($frm['reference_search']) && !empty($frm['reference_search'])) {

$where .= " AND p.reference = '" . nohtml_real_escape_string($frm['reference_search']) . "' OR p.nom_fr LIKE '%" . nohtml_real_escape_string($frm['reference_search']) . "%";

}

ci joint message d erreur dans l admin pour rechercche : carb

Une erreur de connexion à la base s'est produite SELECT p.* FROM peel_produits p, peel_sites s WHERE 1 AND p.reference = 'carb' OR p.nom_fr LIKE '%carb% AND s.id = '1'.

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 '1'' at line 3

Share this post


: post
Share on other sites

Posted · Report post

Bonjour agrimoto,

Il manque un guillemets simple sur le deuxième LIKE. Ci-dessous la requête corrigée :


$where .= " AND p.reference = '" . nohtml_real_escape_string($frm['reference_search']) . "' OR p.nom_fr LIKE '%" . nohtml_real_escape_string($frm['reference_search']) . "%'";
[/CODE]

Share this post


: post
Share on other sites

Posted · Report post

merci pour votre reactivitee

ça marche avec carburateur

comment rajouter un 2eme mot carburateur booster

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

Pour faire une recherche sur chaque mot, vous devez dans un premier temps scinder votre recherche en se servant des espaces comme critères grâce à la fonction explode.

Ensuite, il faut faire une boucle avec le tableau créé par la fonction explode pour générer la requête SQL. :


if (isset($frm['reference_search']) && !empty($frm['reference_search'])) {
// Si aucun espace est présent dans la chaine, explode retourne l'intégralité de $frm['reference_search']
$search_term = explode(' ', $frm['reference_search']);
$sql_condition ='';
foreach ($search_term as $this_term) {
$sql_condition .= "OR p.nom_fr LIKE '%" . nohtml_real_escape_string($this_term) . "%' ";
}
$where .= " AND p.reference = '" . nohtml_real_escape_string($frm['reference_search']) . "' ".$sql_condition;
}
[/CODE]

Share this post


: post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

Twitter Advisto ecommerce

Facebook PEEL Shopping