我的数据库中有一个名为num_ticket
的表,用于保存票证总数,例如20。
现在,我尝试将print
/ echo
这样的数字形式的票证编号(如1, 2, 3, 4 .......
更改为20,放入不同的复选框。例如check box 1
,check box 2
,check box 3
,check box 4
........ checkbox 20
。
我已经尝试过此<?php print implode("\n", range(1, $num)); ?>
。
<?php
if(isset($_GET['url']))
$url = ($_GET['url']);
$check = "SELECT * FROM raffels WHERE rid ='$url' ";
if ($result = mysqli_query($conn,$check))
$totalres = mysqli_num_rows($result);
if ($totalres ==0) {
echo" <center><h1>Page Not Found</h1> May be the link was broken or the post has been deleted</p></center>";
//header("location: 404");
exit();
}
while($row = $result->fetch_assoc()) {
$title = $row['title'];
$price = number_format($row['amount']);
$image = $row['image'];
$num = $row['num_ticket'];
$post.='<li class="seat col-xs-1 col-sm-1">
<input type="checkbox" class="alterbutton" name="sport"
onchange="myFunction()" value="12" id="12" />
<label for="12">'. implode("\n", range(1, $num)) .'</label>
</li> ';
}
?>
如何使每个数字打印在不同的复选框上?
答案 0 :(得分:1)
您将需要使用循环来输出这些复选框/数字。将您的$post .=
代码放入for
循环中(由于您要输出从1开始的数字,因此请确保将循环的初始起始数字偏移为1而不是典型的0 )。
for ($i=1; $i<=$num; $i++)
{
$post.='<li class="seat col-xs-1 col-sm-1">
<input type="checkbox" class="alterbutton" name="sport"
onchange="myFunction()" value="' . $i . '" id="sport_checkbox_' . $i . '" />
<label for="sport_checkbox_' . $i . '">' . $i . '</label>
</li> ';
}
我注意到您在某些属性中写了“ 12”,因此我将其更改为$i
值。我还为id
属性添加了“ sport_checkbox_”,以使其更加清晰。如果您要扩展页面范围,则ID的单个数字可能会引起头痛。
P.s。对于直接输入到查询中的内容(例如$_GET['url']
)要非常小心。您应该通过prepared statement
将任何用户提供的值传递给查询,以防止SQL注入。