【发布时间】:2015-02-10 18:28:27
【问题描述】:
我想将 $variable 参数传递给 php 函数并根据此参数从表中获取数据。该参数可以为null,表示db请求应该从表中获取所有数据,也可以是int值。这是我尝试的代码:
$stmt = $this->_db->prepare("SELECT * FROM ki_cities
WHERE id IS NULL OR id = :user");
$stmt->bindValue(':user',$variable,PDO::PARAM_INT);
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
此查询不返回任何行。
对于那些对我的问题感到困惑的人来说,这是一个隐含的问题。 我要sql查询:
SELECT * FROM ki_cities WHERE id = *
此查询应与以下内容相同:
SELECT * FROM ki_cities
我想我的问题很清楚。
========================================
如果有人感兴趣,这是我扭曲的“解决方案”:
$que = "SELECT * FROM ";
$que = $que . " ki_students where season=4";
if($type!=null) { $que = $que . " and type =".$type; }
if($city!=null) { $que = $que . " and city =".$city; }
$stmt = $this->_db->prepare($que);
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
return $result;
【问题讨论】:
-
你说“我想我的问题很清楚”。但你没有问任何问题
-
好吧,你说...'我想将 $variable 参数传递给 php 函数'。那么为什么不创建一个并给它一个参数呢?