我在数据库中的表包含3列,所有列都有qwe作为用户名,并且各自的日期分别为1月,2月和3月,但是当我尝试回显它们时,它只显示1月。我试图将它们全部放入下拉列表但我无法通过这个,所以我必须确保在将它们放到其他地方之前得到所有这些日期。
{
$con=mysqli_connect('localhost','root','') or die(mysqli_error());
mysqli_select_db($con, 'useddates') or die("cannot select DB");
$request="SELECT date FROM mytable WHERE username='qwe'";
$result=mysqli_query($con, $request);
$fetch=mysqli_fetch_assoc($result);
echo $fetch['date']; echo "<br>";
print_r($fetch);
}
答案 0 :(得分:1)
你缺少循环,数据出现了。您可以使用 print_r($ fetch)查看何时打印数据,使用循环逐个显示。 并且在检查 mysql注入之前,还尝试不直接在查询中使用用户输入。就像你已经推出 username ='qwe'如果用户名是用户输入,那么在查询中直接使用它查询建议
$request = "SELECT date FROM mytable WHERE username=".mysql_real_escape_string('qwe');
和你的循环尝试这个,
$con = mysqli_connect('localhost', 'root', '') or die(mysqli_error());
mysqli_select_db($con, 'useddates') or die("cannot select DB");
$request = "SELECT date FROM mytable WHERE username='qwe'";
$result = mysqli_query($con, $request);
print_r($fetch);
while ($fetch = mysqli_fetch_assoc($result)) {
echo $fetch['date'];
echo "<br>";
}
?>