什么样的变量是来自mysql fetch的$ row?

时间:2013-08-22 04:54:09

标签: php mysql row fetch

我对这个问题越来越感到沮丧。我试图做一个简单的查询,但它不起作用。这非常简单。我通过邮寄发送输入,我已经测试过了。 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;

3 个答案:

答案 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'];
}

通常会意外混淆mysqlmysqli函数