Autor | Zpráva | ||
---|---|---|---|
exon Profil * |
#1 · Zasláno: 14. 10. 2016, 17:49:12
Ahoj,
snažím se v nette poskládat dotaz na výběr z databáze. Problém je v tom, že nevím které parametry bude potřeba použít do podmínky WHERE. Mám metodu getProduct, která má tři nepovinné parametry (color, size, pattern). public function getProduct($color = null, $size = null, $pattern = null){ $products = $this->database->table('products')->where('id_product_type = 1 AND id_color = ? AND id_pattern = ? AND id_size = ?', $color, $pattern, $size)->fetchAll(); //tady potrebuji podmínku WHERE upravit tak, aby pracovala i když bude zadaný jeden parametr (a ostatní null) nebo budou zadány dva (a zbylý null) atd... } Předem moc děkuji. |
||
CZechBoY Profil |
#2 · Zasláno: 14. 10. 2016, 17:54:41
Proč se ti nelíbí podmínka a co jinýho bys chtěl použít?
$productsSelection = $this->database->table('products')->where('id_product_type', 1); if ($color) { $productsSelection->where('id_color', $color); // bere pole i integer } return $products = $productsSelection->fetchAll(); |
||
exon Profil * |
#3 · Zasláno: 14. 10. 2016, 20:26:18
A jo takhle ... super! Diky moc.
Takto by to slo, ja jsem zacal vymyslet kombinovane podminky typu if($color and $size and $pattern) ... elseif(!$color and $size and $pattern) atd... |
||
Časová prodleva: 6 let
|
0