我是mysqli的新手,我寫了一個函數如下。mysqli和提取數據
1 -我不能爲SELECT *
查詢找到一種方式,並具有bind_result
每一列的值同名變量分配。 (#row存儲到$name
例如name
列值)
我認爲bind_result()
有一個SELECT *
查詢中沒有功能?
2 -所以我嘗試了另一個選項,獲取所有行並通過循環手動將它們分配給適當的變量。我想我應該用$query->fetch_all()
或$query->fetch_assoc()
的循環,但我有這種遭遇:
Fatal error: Call to undefined method mysqli_result::fetch_all()
或
Fatal error: Call to undefined method mysqli_result::fetch_assoc()
但是我做了phpinfo()
只見啓用mysqlnd和PHP的版本是5.4 .7(運行XAMPP v1.8.1)
and 3-最後我確實也是不起作用的想法。
function the_names($name)
{
global $db;
if($query = $db->prepare("SELECT * FROM users where name=?"))
{
$query->bind_param('s', $name);
if($query->execute())
{
$query->store_result();
if($query->num_rows > 1)
{
while($row = $query->fetch())
{
echo $row['name']; // Here is the problem
}
}
else
echo "not valid";
$query->close();
}
}
}
我需要一種方法來存儲所有獲取的數據作爲什麼bind_result()
呢,還是讓他們爲以後使用數組,這是更好的瞭解兩者。 TNX
那麼創建了什麼mysqli! – revo 2013-04-11 15:34:31
哦,是的,意圖都很好。但實施變成了一場噩夢。所以你可以從你面臨的問題中看出來。 – 2013-04-11 15:44:31
很好的回答,我正在開關! @revo如果它回答了您的問題,那麼接受一個答案(帶有該複選標記)是一種很好的做法 – michaellindahl 2013-08-20 03:01:02