Php 从另一个数据库获取数据

Php 从另一个数据库获取数据,php,mysql,mysqli,Php,Mysql,Mysqli,我目前在一个数据库中,用于例如:user。我正在从数据库中检索数据。但我需要从另一个数据库获取数据,如: mysqli_select_db($link, "first"); $q1="select * from user"; $s1=mysqli_query($link,$q); while($row=mysqli_fetch_assoc($s1)) { mysqli_select_db($link, "second"); $q2="select * from ".$row['name'];

我目前在一个数据库中,
用于例如:user
。我正在从数据库中检索数据。但我需要从另一个数据库获取数据,如:

mysqli_select_db($link, "first");
$q1="select * from user";
$s1=mysqli_query($link,$q);
while($row=mysqli_fetch_assoc($s1))
{
 mysqli_select_db($link, "second");
 $q2="select * from ".$row['name'];
 $s2=mysqli_query($link,$q2);
 echo mysql_num_rows($s2);
}
但显示错误:
未定义的索引名
。我认为这是因为数据库的变化和查询

我想不出另一种方法来做这件事。你能说另一种方法来实现这一点吗


谢谢

您在
$q1
中定义查询,然后使用
$q
调用
mysqli_query()
,这是一个不同的变量,我猜您在其中存储了以前的查询,这将解释未定义索引通知


另一个问题是对两个不同的数据库使用相同的
$link
变量。我建议将第一个存储在
$link\u first
中,第二个存储在
$link\u second
中,以将它们分开。

您在
$q1
中定义查询,然后使用
$q
调用
mysqli\u query()
,这是一个不同的变量,我猜您以前的查询存储在该变量中,这可以解释未定义的索引通知

另一个问题是对两个不同的数据库使用相同的
$link
变量。我建议将第一个存储在
$link\u first
中,第二个存储在
$link\u second
中,以将它们分开。

您应该更改

$s1=mysqli_query($link,$q);

因为您的查询存储在$q1中

你可以

mysqli_select_db($link, "second");
超出时间循环。。为什么每次都要选择数据库?一旦选定,它将一直存在,直到您再次更改它…

您应该更改

$s1=mysqli_query($link,$q);

因为您的查询存储在$q1中

你可以

mysqli_select_db($link, "second");

超出时间循环。。为什么每次都要选择数据库?一旦选中,它将一直存在,直到您再次更改它…

该错误意味着
user
表中没有名为
name
的列。@Barmar它确实存在于
first
数据库的
user
表中。
var\u转储($row)是什么
show?你到底想实现什么…第一个数据库中的表用户有一个字段“name”存在?该错误意味着
user
表中没有名为
name
的列。@Barmar它确实存在于
first
数据库中的表
user
中。
var\u转储($row)是什么
show?你到底想实现什么…第一个数据库中的表用户有一个字段“name”存在?我希望
$row[name]
包含
second
数据库中存在的表名我希望
$row[name]
包含
second
数据库中存在的表名