我试图寻找解决方案,但找不到一个解决方案。在我的PHP页面上,我试图在两个条件下搜索记录,如果用户在搜索框中输入内容然后根据该内容显示,并且如果他不搜索任何内容,则从表中显示记录。试图在php下运行两个sql查询,如果其他条件?
我得到的所有记录,但无法获取记录时,我用他们的名字搜索他们。
<?php
if(isset($_POST['search']))
{
$name=$_POST['src'];
$qry1=mysqli_query($connection,"select * from test_history where
username='$name'");
}
else
{
$qry1=mysqli_query($connection,"select * from test_history");
$counter=0;
while($ftc=mysqli_fetch_array($qry1))
echo
'<tr>
<td align="center"> '.++$counter.' </td>
<td> '.$ftc['username'].' </td>
<td> '.$ftc['enrollment'].' </td>
<td> '.$ftc['test_cat'].' </td>
<td> '.$ftc['test_name'].' </td>
<td> '.$ftc['score'].'% </td>
<td> '.$ftc['test_date'].' </td> </tr>';
}
if(isset($_POST['submit']))
{
$dlt=mysqli_query($connection,"delete from test_history");
}
?>
*发生了什么?这个失败具体如何?注意:你的代码对SQL注入非常开放(所以我们不知道你实际运行的是什么SQL查询)并且你没有用'mysqli_error($ connection)'检查错误(所以你不知道是否/查询失败的方式)。 – David
它没有输出任何结果只是空表。错误代码被写入另一个文件,未列出。对不起,我是PHP的新手,每天都在学习。你能告诉我什么是防止SQL注入的最佳方法!顺便说一句,我的问题已解决。 –
不确定您的意思是“错误代码是否写入另一个文件”。你应该看看'mysqli_error'函数来检查代码中的错误。至于SQL注入,这是一个很好的开始:https://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php – David