我腳本它如下,爲什麼結果集不能付諸會議在PHP
session_start();
$employees = null;
if (isset($_SESSION['employees'])) {
$employees= $_SESSION['employees'];
} else {
$con = new mysqli("localhost", "root", "test", "emp_db");
$employees = $con->query("SELECT * from employee");
$_SESSION['employees'] = $employees;
}
echo "<table>";
foreach ($employees as $row) {
echo '<tr>';
echo "<td>" . $row['emp_id'] . " </td>";
echo "<td>" . $row['emp_name'] . " </td>";
echo "<td>" . $row['emp_address'] . "</td>";
echo "</tr>";
}
第一頁的訪問順利,即從DB訪問。 但是,當我嘗試從$ _SESSION在第二個頁面請求獲取,它說...
"Warning: main(): Couldn't fetch mysqli_result in C:\xampp\htdocs\test\dbtemp.php on line 22". My line 22 is: foreach($employees as $row) {
任何想法?
如果php返回的結果集連接資源(如Java),爲什麼我們仍然可以在關閉與DB的連接後迭代它?
當我打電話給get_resource_type($employees)
......它說,它是一個對象,而不是資源。那麼爲什麼一個對象沒有被存儲在會話中?
哦,我喜歡你現在編輯的文章。刪除了downvote – 2013-04-22 09:22:05
** @ STT LCU **,我只是聲稱空間。 :)修正。 – BlitZ 2013-04-22 09:23:16
通過在fetch_all()中傳遞MYSQLI_ASSOC很好地工作,defualt是MYSQLI_NUM – 2013-04-22 09:33:36