[ad_1]
こんにちは、設定した価格を下回っているアパートを印刷しようとしていますが、テーブル全体の内容が表示されます。
価格の入力はここから行います。 http://localhost/あなたの名前/users/57,000
コントローラーのコード:
public function actionView($params){ if(is_numeric($params[0])){ $id=$params[0]; } else { $price=$params[0]; } if(isset($price)){ $users=Users::getUsersByPrice($price); require_once (ROOT.'/views/list_all.php'); return true; }
アパートのコード:
public static function getUsersByPrice($price){ $db= Database::getConnection(); $stmt= $db->prepare("SELECT * FROM flat WHERE price=:price < :price"); $stmt->execute([':price'=>$price]); $users= $stmt->fetchAll(PDO::FETCH_ASSOC); return $users; }
私が試したこと:
これは最初のクエリです。ここではテーブル全体を表示します
$stmt= $db->prepare("SELECT * FROM flat WHERE price=:price < :price"); $stmt->execute([':price'=>$price])
私が試す2番目のものはこれです:
$stmt= $db->prepare("SELECT * FROM flat WHERE price=:price = (SELECT MIN (price=:price) FROM flat ) ");
このクエリでは、列 id、Area、Complex、City、Price のみが表示されます
これはテーブルです:
id Area Complex City Price 0 71 Sarafovo Burgas 550.000 1 108 St Vlas St Vlas 47.000 2 105 Izgrev Burgas 121.000 3 58 Slaveykov Burgas 57.000 4 95 Slaveykov Burgas 82.000 5 65 Paradise Nesebar 65.000 6 109 Valley Sofia 78.000 7 45 Aura Sofia 103.000 8 168 Smirnenski Plovdiv 91.000 9 73 Tomov Plaza Plovdiv 47.000
解決策 1
試す:
SELECT * FROM flat WHERE price < :price
[ad_2]
コメント