我对这个问题越来越感到沮丧。我试图做一个简单的查询,但它不起作用。这非常简单。我通过邮寄发送输入,我已经测试过了。 post变量即将到来。唯一的问题是当我回显“$ row ['id']”时,我每次都会将一个空白变量传回我的html函数。当我得到时,我创建了一个警报 数据回到我的html文件中,每次都会闪烁一个空白警报。在得到这段代码之前,如果$ row为空,我将文件echo“not found”,并且当我预期它为空时它是空的。当它不是空的时候,我不能使用存储在关联数组中的变量。是的,“id”绝对存在。我检查了数据库,只有一个“类”行进行测试。
<?php
$tempClass = $_POST["class"];
$tempClassArray = explode("=",$tempClass);
$class = $tempClassArray[1];
$con=mysqli_connect("localhost","root","*****","*******");
// Check connection
if (mysqli_connect_errno($con))
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM classes WHERE className LIKE '%$class%' OR
classNumber LIKE '%$class%' OR section LIKE '%$class%'");
while ($row = mysql_fetch_array($result))
{
echo $row['id'];
}
&GT;
答案 0 :(得分:0)
尝试先打印$ row变量
print_r($row);
如果它只打印“array()”,那么查询可能已经失败,您可以尝试回显它以查看是否有任何错误。
回答标题mysql_fetch_array返回一个与获取的行对应的数组,并向前移动内部数据指针。
参考:http://php.net/manual/en/function.mysql-fetch-array.php
ps:我认为这应该去评论部分,但由于我没有足够的声誉,抱歉:(
答案 1 :(得分:0)
试试这个,虽然它和以前一样,但可以尝试一下
while ($row = mysql_fetch_assoc($result))
{
echo $row['id'];
}
答案 2 :(得分:0)
您正在使用mysqli
查询 -
$result = mysqli_query($con, ....);
但是尝试使用mysql
(不是mysqli
)抓取
while ($row = mysql_fetch_array($result))
尝试将其更改为mysqli_fetch_array
while ($row = mysqli_fetch_array($result))
{
echo $row['id'];
}
通常会意外混淆mysql
和mysqli
函数