0

我有一个以字段“c_number”作为主键的表。现在我在两个表中使用了这个主键作为外键:通话和计费。谁能帮助我为什么这个查询不起作用

$q="select c_number, type, billing.days from calls, billing where calls.c_number=billing.c_number group by c_number";
$r=mysql_query($q);
while($row=mysql_fetch_array($r))
{
echo $row['days'];
}

查询不起作用,并给我错误:

Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\wamp\www\vas1\b.php on line 61

第 61 行:

 while($row=mysql_fetch_array)
4

2 回答 2

1

像这样改变你

$q="select c_number, type, billing.days from calls, billing where calls.c_number=billing.c_number group by c_number";
    $r=mysql_query($q);
    while($row=mysql_fetch_array($r))
    {
    echo $row['days'];
    }

此外,作为建议,请注意原始 MySQL API 已弃用,来自文档:

此扩展自 PHP 5.5.0 起已弃用,并将在未来删除。相反,应该使用 MySQLi 或 PDO_MySQL 扩展。另请参阅 MySQL:选择 API 指南和相关的常见问题解答以获取更多信息。

这里是PDO的文档

于 2013-06-15T21:03:04.913 回答
0

它给出了错误,因为您没有将结果提供给mysql_fetch_array()函数。

它应该是这样的:mysql_fetch_array($r)

还可以考虑在 sql 语句的值中使用引号。

你会在这个链接中找到几个 mysql_fetch_array() 的例子。

于 2013-06-15T21:11:17.843 回答