Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法联接两个外键_Php_Mysql - Fatal编程技术网

Php 无法联接两个外键

Php 无法联接两个外键,php,mysql,Php,Mysql,我有一个以字段“c_number”为主键的表。现在我在两个表中使用了这个主键作为外键:calls和billing。 有人能告诉我为什么这个查询不起作用吗 $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)) {

我有一个以字段“c_number”为主键的表。现在我在两个表中使用了这个主键作为外键:calls和billing。 有人能告诉我为什么这个查询不起作用吗

$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)

像这样改变你的生活

$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已被弃用,来自以下文档:

从PHP5.5.0开始,此扩展已被弃用,并将在中删除 未来。相反,应该使用MySQLi或PDO_MySQL扩展。 有关更多信息,请参见MySQL:选择API指南和相关常见问题解答 信息


这里for PDO给出了错误,因为您没有将结果提供给
mysql\u fetch\u array()
函数

应该是这样的:
mysql\u fetch\u array($r)

还考虑在SQL语句中使用引号。


您将在中找到几个mysql_fetch_array()的示例。

很抱歉,我的错误$r出现在查询中,但它不起作用。
mysql_*
函数不再维护,不应在任何新的代码库中使用。它正逐渐被淘汰,取而代之的是更新的API。相反,您应该与或一起使用。