我想问问。
是否可以添加exit();* * 在每个语句的末尾或者除了exit()之外还有什么好的方法;* *?
原因是停止显示数据循环,*因为如果我删除/禁用exit(); *,数据将循环显示数据库表中所有可用的行。如果exit(),else语句也将执行;从代码中删除。
代码如下:
<?php
$connect = mysqli_connect("localhost", "root", "", "database");
global $connect;
if(isset($_POST['Submit'])){
$input = $_POST['input'];
$sql = "SELECT * FROM table";
$get = mysqli_query($connect,$sql);
if($get && mysqli_num_rows($get) > 0 ){
while($row = mysqli_fetch_assoc($get)){
$input_db = $row['input'];
$output_db = $row['output'];
if (($input >= $input_db) && ($output <= $output_db))
{
echo "Input and output is in between";
exit();
}
else
{
echo "Data added ! <br/>";
exit();
}
}
mysqli_free_result($get);
}
else
{
echo "data is outside range";
}
}
?>
<form action="testdate.php" method="post">
<table>
<tr>
<td><i class="fa fa-unlock-alt"></i> </td>
<td>Input : </td>
<td><input type ="text" name="input" size="30"></td>
</tr>
</table>
<p><input class="btnSuccess" type ="submit" name="Submit" value="Submit"> </p>
</form>
谢谢。
2条答案
按热度按时间qyyhg6bp1#
从您的表格中选择 * 限制1;
bvjveswy2#
要直接回答这个问题,可以简单地将
exit();
与break;
进行交换,这会停止循环而不退出:在您的特定情况下,更好的方法是 * 只选择您需要的数据 *,否则MySQL将忙碌发送整个表,而PHP将丢弃它接收的大部分数据。
(int)
是一个简单的安全措施--它阻止了一些人执行SQL注入。你也需要对$output
做同样的事情。如果可能的话,使用预准备查询。