我正在尝试使用此查询的返回字符串创建一个 cookie:
$id = $database -> query("SELECT id FROM accounts WHERE username = '$username' AND password = '$password'");
但是,它返回的是对象而不是字符串。我正在尝试返回行的“id”。我该怎么做?
最佳答案
您得到一个对象是因为您只执行
查询
。
为此,您必须从中获取数据, 喜欢
$result = $database -> query("SELECT id FROM accounts WHERE username = '$username' AND password = '$password'");
那么如果你正在使用 sqlite
那么,
$data = sqlite_fetch_array($result, SQLITE_ASSOC);
$id=$data['id'];
引用http://www.php.net/manual/en/function.sqlite-fetch-array.php
然后 setcookie
就像:
setcookie("session", "$id", time()+3600);
引用http://php.net/manual/en/function.setcookie.php
如果你正在使用 PDO
那么
试一试:
$result=$database->query("SELECT id FROM accounts WHERE username = '$username' AND password = '$password'");
if ($result) {
$row = $result->fetch(PDO::FETCH_ASSOC);
echo "<pre>";
print_r($row);
echo "</pre>";
}
关于php - 从 PHP/SQLite 中的查询返回字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15215872/