1

現在、1 つのデータベースを使用していますfor eg: 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);
}

しかし、表示エラー: undefined index name. データベースの変更とクエリが原因だと思います。

これを行う別の方法がわかりませんでした。これを実装する別の方法を教えてください。

ありがとう!

4

2 に答える 2

4

でクエリを定義しますが、別の変数を使用して$q1呼び出すmysqli_query()$q、以前のクエリがその中に格納されていると推測されます。これにより、未定義のインデックス通知が説明されます。

もう 1 つの問題は$link、2 つの異なるデータベースに同じ変数を使用していることです。$link_first1 つ目と2 つ目を分けて保管することをお勧めし$link_secondます。

于 2013-04-11T08:47:58.570 に答える
0

あなたは変わるべきです

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

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

クエリが $q1 に保存されているため

そしてあなたは取ることができます

mysqli_select_db($link, "second");

whileループの外..なぜ反復ごとにデータベースを選択するのですか..? 選択すると、再度変更するまでそこに表示されます...

于 2013-04-11T08:52:11.893 に答える