Nefunguje podmienka s LIKE
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- archlin
- Člen | 4
Zdravím , prepisujem stary projekt do nette a mám problem s podmienkou
WHERE .
Potrebujem aby uzivatel mohol vyhladavat produkt ktory ma v nazve medzeru
napr :
produkt: ABC 123
uzivatel zada : ABC123 alebo ABC 123
ak to zadam do admineru spolu so $search tak to funguje
public function getSearchItems($search, $length, $offset, $basketId = null)
{
$search = str_replace(' ', '', $search);
$search = "%".$search."%";
if ($basketId > 0) {
return $this->db->query("SELECT `s`.`product_code`,`s`.`product_name`,`s`.`pack`,`s`.`kmj`,
`s`.`mnakt`,`s`.`mnrez`,`s`.`mno`,`s`.`mno1`,`s`.`mno2`,`s`.`mno3`,`b`.`quantity`
FROM `stock` AS `s` LEFT JOIN `basket_items` as `b` ON `s`.`pack`=`b`.`pack` AND
`s`.`product_code`=`b`.`product_code` AND `b`.`basket_id`= ?
WHERE REPLACE(`s`.`product_name`, ' ', '') LIKE ? LIMIT ? , ?",
$basketId, $search, $offset, $length);
} else {
return $this->db->table("stock")
->select("product_code,product_name,pack,kmj,mnakt,mnrez,mno,mno1,mno2,mno3")
->where("REPLACE(`product_name`, ' ', '') LIKE ?", $search)->limit($length, $offset);
}
}
Editoval archlin (6. 7. 2014 10:20)
- Pavel Macháň
- Člen | 282
archlin napsal(a):
Jan Endel napsal(a):
A co ti to dělá když ti to nefunguje?
nedostanem žiadne výsledky
Vygenerovaná SQL co se pošle do DB je OK?