[英]PHP bind param to SQL query and loop through and print results
我目前在尝试打印SQL查询结果的html表时遇到问题。
我目前有一个sql查询,它需要一个“ sid”作为本地变量存储。
我正在尝试创建一个准备好的语句,该语句将$ sid var绑定到查询,并创建一个while循环以遍历数据并将结果打印到表中。
在下面,我试图创建代码,但是它似乎还没有工作。 任何帮助,将不胜感激,谢谢
$sid = '166410';
$query = "SELECT enrl.ayr, enrl.status, prog.ptitle, enrl.lvl
FROM enrl, prog
WHERE enrl.sid =?
AND enrl.pid = prog.pid
ORDER BY lvl DESC";
$scap = '';
if ($st = mysqli_prepare($link, $query)) {
mysqli_stmt_execute($st);
mysqli_stmt_bind_param($st, "s", $sid);
mysqli_stmt_bind_result($st, $ayr, $status, $ptitle, $lvl);
while (mysqli_stmt_fetch($st)) {
$scap .= "
<table id=\"test\" style=\"width:100%\">
<tr>
<td> " . $ayr . " </td>
<td> " . $status . "</td>
<td> " . $ptitle . "</td>
<td> " . $lvl . "</td>
</tr>
</table>
";
} $st->free();
mysqli_stmt_close($st);
}
mysqli_close($link);
print($scap);
<?php
$sid = '166410';
$query = "SELECT enrl.ayr, enrl.status, prog.ptitle, enrl.lvl
FROM enrl, prog
WHERE enrl.sid =?
AND enrl.pid = prog.pid
ORDER BY lvl DESC";
$scap = '';
$st = mysqli_prepare($link,$query);
mysqli_stmt_bind_param($st, "s", $sid);
mysqli_stmt_execute($st);
mysqli_stmt_bind_result($st, $ayr, $status, $ptitle, $lvl);
while (mysqli_stmt_fetch($st)) {
$scap .= "
<table id=\"test\" style=\"width:100%\">
<tr>
<td> " . $ayr . " </td>
<td> " . $status . "</td>
<td> " . $ptitle . "</td>
<td> " . $lvl . "</td>
</tr>
</table>
";
}
echo $scap;
mysqli_stmt_close($st);
mysqli_close($link);
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.