Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.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 如何加入(内爆)MySQL阵列?_Php_Mysql_Implode - Fatal编程技术网

Php 如何加入(内爆)MySQL阵列?

Php 如何加入(内爆)MySQL阵列?,php,mysql,implode,Php,Mysql,Implode,内爆函数适用于普通数组,但不适用于使用mysql\u fetch\u数组创建的数组。我还尝试了mysql\u fetch\u行 你如何让他们工作 上述定义: $friends = mysql_query("SELECT * FROM friend 其中u1='$userinfo[username]' 或者u2='$userinfo[username]' 再往下看: $friendsrow = mysql_fetch_array($friends); $friendsrow = join(",

内爆函数适用于普通数组,但不适用于使用mysql\u fetch\u数组创建的数组。我还尝试了mysql\u fetch\u行

你如何让他们工作

上述定义:

$friends = mysql_query("SELECT * FROM friend 
其中u1='$userinfo[username]' 或者u2='$userinfo[username]'

再往下看:

$friendsrow = mysql_fetch_array($friends);
$friendsrow = join(",",$friendsrow);

$friendnotes = mysql_query("SELECT nid,user,subject,message FROM friendnote WHERE user IN ($friendsrow) ORDER BY timestamp ASC LIMIT 0,5");

如果您想知道,那就是对于社区站点,您可以始终使用sub-select并将其传递给In-operator。

您可以始终使用sub-select并将其传递给In-operator。

mysql\u fetch\u数组返回普通数组,它们没有什么特别之处。可能您的查询没有返回任何内容,在这种情况下,mysql\u fetch\u数组返回false。在尝试对结果进行内爆之前,请检查是否存在这种情况。

mysql\u fetch\u数组返回普通数组,它们没有什么特别之处。可能您的查询没有返回任何内容,在这种情况下,mysql\u fetch\u数组返回false。在尝试内爆结果之前检查一下。我认为你加入了错误的东西。你加入了整个朋友行列,结果是“1,约翰尼,23年,等等”。我假设你想要一个朋友ID“1,2,3,4,5”的列表。正如Eimantas所说,最好使用子查询

SELECT nid,user,subject,message 
FROM friendnote 
WHERE user IN ((SELECT u2 FROM friends WHERE u1 = $userinfo[username])
               UNION
               (SELECT u1 FROM friends WHERE u2 = $userinfo[username]))
ORDER BY timestamp ASC LIMIT 0,5

我认为你加入了一个错误的组织。你加入了整个朋友行列,结果是“1,约翰尼,23年,等等”。我假设你想要一个朋友ID“1,2,3,4,5”的列表。正如Eimantas所说,最好使用子查询

SELECT nid,user,subject,message 
FROM friendnote 
WHERE user IN ((SELECT u2 FROM friends WHERE u1 = $userinfo[username])
               UNION
               (SELECT u1 FROM friends WHERE u2 = $userinfo[username]))
ORDER BY timestamp ASC LIMIT 0,5

你不想去上班吗


你不想去上班吗


谢谢,错误消失了,但实际的脚本似乎没有做任何事情=我使用:$friendnotes=mysql\u querySELECT nid,user,subject,来自friendnote的消息,其中user在'SELECT u1,u2 FROM friends WHERE u1=$userinfo[username]或u2=$userinfo[username]”中按时间戳排序ASC LIMIT 0,5;当我尝试使用MySQL函数(如MySQL_fetch_array)时,它不会返回错误,但也不会返回任何结果。是的,我知道数据库中有与where匹配的条目。谢谢,错误消失了,但实际脚本似乎什么都没做=我使用:$friendnotes=MySQL_querySELECT nid,user,subject,来自friendnote的消息,其中用户在“从朋友中选择u1,u2,其中u1=$userinfo[username]或u2=$userinfo[username]”中按时间戳ASC限制0,5排序;当我尝试使用MySQL函数(如MySQL_fetch_array)时,它不会返回错误,但也不会返回任何结果。是的,我知道数据库中有与WHERE匹配的条目