[英]mysqli prepared statement bind result and loop
我有此代碼旨在在數據庫中進行搜索:
$key = '%'.$_GET['key'].'%';
$result= $db->prepare("SELECT * FROM information WHERE stuId LIKE ?
OR stuName LIKE ? LIMIT ?,10");
$result->bind_param('ssi',$key,$key,$startpage);
$result->execute();
$result->bind_result($stuId,$stuName,$date,$stuSex,$stuAdd);
while($result->fetch()) {
$stuDoB= $date->format('d/m/Y');
echo "<tr>
<td class='col1'>
<div>$stuId</div>
</td>
<td>
<div><a href='editStudent.php?stuId=$stuId'>" . htmlspecialchars($stuName) . "</a></div>
</td>
<td class='col3'>
<div>$stuDoB</div>
</td>
<td class='col4'>
<div>$stuSex</div>
</td>
<td class='col5'>
<div>" . htmlspecialchars($stuAdd) . "</div>
</td>
</tr>";
}
我正在嘗試學習准備好的語句,因此我從正常方式更改為上述代碼,您能告訴我:
$result->fetch()
result- $result->fetch()
內bind_result()
還是在循環外僅bind_result()
一次bind_result()
? Fatal error: Call to a member function format() on a non-object in D:\\xampp\\htdocs\\baiTapLon\\showPage.php on line 30
第30行是$stuDoB= $date->format('d/m/Y');
請幫幫我。
您必須在循環外使用一次手段bind_result
您不能將格式用於任何變量 ,像這樣使用它
$date1 = new DateTime($date);
$stuDoB= $date1->format('d/m/Y');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.