[英]Why am I getting a blank object, even if it exists in the database pdo?
尽管search
element
存在于database
,但我却得到一个空白obj
。
这是我正在尝试的
$userInput = 'john';
$db = getDB();
$sql = "SELECT user_id, email, token FROM users WHERE name LIKE name=:input";
$stmt = $db->prepare($sql);
$stmt->bindParam("input", $userInput,PDO::PARAM_STR);
$stmt->execute();
$usernameDetails = $stmt->fetch(PDO::FETCH_OBJ);
print_r($usernameDetails );
我没有任何error
。
请帮我。
在查询中,您使用一种奇怪的方法:
WHERE name LIKE name=:input
name
什么?
你要么用
SELECT user_id, email, token FROM users WHERE name=:input
要么
SELECT user_id, email, token FROM users WHERE name LIKE :input
如果是LIKE
我想您需要添加%
,否则LIKE
变成=
:
// previous code here
$stmt = $db->prepare($sql);
$stmt->bindParam("input", '%' . $userInput . '%' ,PDO::PARAM_STR);
// more code here
您对LIKE
运算子的语法有误
name LIKE name=:input";
您需要将其更改为
$query = $db->prepare('SELECT user_id, email, token FROM users WHERE name LIKE :input');
$query->bindParam("input", "%$userInput%", PDO::PARAM_STR);
注意: %
表示任何字符。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.