Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.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 - Fatal编程技术网

如何在php中有效地从mysql列检索值?

如何在php中有效地从mysql列检索值?,php,mysql,Php,Mysql,我刚开始编程,并尝试制作我的第一个web应用程序。我正在建立一个网站,用户可以登录,查看链接列表,并将此列表中的链接保存/添加到他们的帐户。最后,我还希望能够添加用户可以创建自己链接的功能 到目前为止,我计划将信息存储在如下3个表中: 用户表 用户id |用户名|密码 链接表 链接id |链接名称|链接URL 书签表 书签|用户|链接| id 我想我应该运行一个查询,从bookmarks表中获取属于某个用户id的所有link\u id的列表,如下所示: $connection = mysql_c

我刚开始编程,并尝试制作我的第一个web应用程序。我正在建立一个网站,用户可以登录,查看链接列表,并将此列表中的链接保存/添加到他们的帐户。最后,我还希望能够添加用户可以创建自己链接的功能

到目前为止,我计划将信息存储在如下3个表中:

用户表 用户id |用户名|密码

链接表 链接id |链接名称|链接URL

书签表 书签|用户|链接| id

我想我应该运行一个查询,从bookmarks表中获取属于某个用户id的所有link\u id的列表,如下所示:

$connection = mysql_connect('localhost', 'root', 'password') or die(mysql_error());
mysql_select_db("array-test",$connection) or die(mysql_error());

$query_link_id = "
SELECT link_id FROM bookmarks WHERE user_id =2
";
$query_result = mysql_query($query_link_id,$connection);

$link_id_array = mysql_fetch_array($query_result, MYSQL_BOTH);
如果我回显数组,它只有一个值,即列的第一行。如果我直接在phpadmin中运行相同的查询,我会看到包含多个值的列。我不确定我做错了什么

将值存储在数组中是否是正确的方法?我必须以某种方式将link_id放入一个数组,将它们分别转换为变量,然后运行另一个查询来获取其余的链接信息——我真的不知道该怎么做。我觉得自己被困在这个问题上了,几天来我一直在寻找解决办法。我感谢任何帮助和见解。谢谢

-
返回与获取的行相对应的数组,并将内部数据指针向前移动
-

您需要在数组中循环

while($link_id_array = mysql_fetch_array($query_result, MYSQL_BOTH)){
  $new_array[] = $link_id_array;
}

注意,来自文档

从PHP5.5.0开始,此扩展已被弃用,将来将被删除。相反,应该使用MySQLi或PDO_MySQL扩展。有关更多信息,请参见指南和。

旁注:如果这是新代码,请不要使用
mysql_*()
函数。它们已弃用,将被删除。使用
mysqli_*()
函数代替。太好了,这解决了我的数组问题。然后如何将这些值转换为变量并查询links表以返回URL?