如何在php中一页使用2个数据库连接
如何在php中一页使用2个数据库连接 这是我的代码:如何在php中一页使用2个数据库连接,php,html,mysql,Php,Html,Mysql,如何在php中一页使用2个数据库连接 这是我的代码: $conn = mysql_connect("","",""); mysql_select_db("",$conn); $db = mysql_connect("","",""); mysql_select_db("",$db); $sql = mysql_query("SELECT * FROM Client_table WHERE Client_Id ='" . $_POST["clients"] . "'"); $id = mysq
$conn = mysql_connect("","","");
mysql_select_db("",$conn);
$db = mysql_connect("","","");
mysql_select_db("",$db);
$sql = mysql_query("SELECT * FROM Client_table WHERE Client_Id ='" . $_POST["clients"] . "'");
$id = mysql_fetch_array($sql);
$result = mysql_query("SELECT Client_table.Name, Client_table.Client_Id FROM Client_table, user WHERE user.username = '" . $_SESSION['username'] . "' AND Client_table.Branch = user.area Order by Name ASC");
我的当务之急是$result必须从两个不同的数据库获取数据强>
我的意思是:
谢谢大家! 您可以创建一个视图,从用户选项卡所在的数据库、客户表所在的数据库访问数据。您可以创建一个视图,从用户选项卡所在的数据库、客户表所在的数据库访问数据。如果两个数据库都在同一台服务器上,则有可能(虽然这样做实际上不是一个好的做法)。在查询中,必须在表名前面加上数据库名 例如,假设“Client_table”在“Client_database”中,“user”表在“user_database”中,则FROM子句将是
FROM Client_database.Client_table作为Client_table,user_database.user作为user
您还可以通过两个查询完成此操作,两个连接(例如$conn_client和$conn_user)。从$conn_client获取所需的所有“client_table.Branch”值,然后使用“WHERE user.area in(…)”在$conn_用户上进行选择。如果两个数据库位于同一台服务器上,则有可能(虽然这样做实际上不是一个好的做法)。在查询中,必须在表名前面加上数据库名 例如,假设“Client_table”在“Client_database”中,“user”表在“user_database”中,则FROM子句将是
FROM Client_database.Client_table作为Client_table,user_database.user作为user
您还可以在两个查询中完成此操作,两个连接(例如$conn_client和$conn_user)。从$conn_client获取您需要的所有“client_table.Branch”值,然后使用“WHERE user.area in(…)”在$conn_用户上进行选择。将true添加到第二个mysql_connect方法中
如果提供给mysql\u connect的参数相同,请确保连接未被重复使用,这是必需的
然后,您需要通过将连接作为参数添加到方法中来指定查询时使用的连接:
mysql_query("SELECT Client_table.Name, Client_table.Client_Id FROM Client_table, user WHERE user.username = '" . $_SESSION['username'] . "' AND Client_table.Branch = user.area Order by Name ASC", $db2);
注意您不应该首先使用mysql\uu*
,因为它已被弃用。将true添加到第二个mysql\u connect方法中
如果提供给mysql\u connect的参数相同,请确保连接未被重复使用,这是必需的
然后,您需要通过将连接作为参数添加到方法中来指定查询时使用的连接:
mysql_query("SELECT Client_table.Name, Client_table.Client_Id FROM Client_table, user WHERE user.username = '" . $_SESSION['username'] . "' AND Client_table.Branch = user.area Order by Name ASC", $db2);
请注意您首先不应该使用
mysql\u*
,因为它已被弃用。只需在查询示例中使用数据库名称即可:
从database1.Client_表中选择*其中somthing=thing
联合所有
从database2.Client_表中选择*,其中somthing12=otherthing
只需在查询中使用数据库名称即可:
从database1.Client_表中选择*其中somthing=thing
联合所有
从database2.Client\u表中选择*,其中somthing12=otherthing
有两种方法:
One:
在你靠近的时候
mysql_select_db("", $conn);
$sql = mysql_query("SELECT * FROM Client_table WHERE Client_Id ='" . $_POST["clients"] . "'");
$id = mysql_fetch_array($sql);
$col1=$id['Col1'];
$col2= $id['Col2'];
$col3= $id['Col3'];
mysql_close($conn);
$db = mysql_connect("","","");
mysql_select_db("",$db);
$sql2 = mysql_query("OTHER QUERY FOR DATABASE2.TABLE2");
$id2 = mysql_fetch_array($sql);
$col2_1=$id['Col2_1'];
//and so on...
或与
mysql_query("SELECT database1.dbo.table1.Col1_1, database2.dbo.table2.col2_1 where xx =xx");
有两种方法: One: 在你靠近的时候
mysql_select_db("", $conn);
$sql = mysql_query("SELECT * FROM Client_table WHERE Client_Id ='" . $_POST["clients"] . "'");
$id = mysql_fetch_array($sql);
$col1=$id['Col1'];
$col2= $id['Col2'];
$col3= $id['Col3'];
mysql_close($conn);
$db = mysql_connect("","","");
mysql_select_db("",$db);
$sql2 = mysql_query("OTHER QUERY FOR DATABASE2.TABLE2");
$id2 = mysql_fetch_array($sql);
$col2_1=$id['Col2_1'];
//and so on...
或与
mysql_query("SELECT database1.dbo.table1.Col1_1, database2.dbo.table2.col2_1 where xx =xx");
警告:您的代码极易受到sql注入攻击。它肯定必须是一个查询吗?为什么您不能在一个查询上运行查询,存储结果,然后在另一个查询上运行查询?不,GIb它不必在一个查询中,而是在一页和一列表中。希望您understand@ElieMbuyamba是的,我回答了我们的代码极易受到sql注入攻击。它肯定必须是一个查询吗?为什么不能在一个查询上运行查询,存储结果,然后在另一个查询上运行查询?不,GIb它不必在一个查询中,而是在一个页面和表的单列中运行。希望您understand@ElieMbuyamba是的,我回答了。有办法吗用php脚本表达你所说的话?谢谢你有没有办法用php脚本表达你所说的话?谢谢你太棒了,谢谢你,乔纳斯,这正是我需要的。它正在工作。你为我节省了很多时间。我真的很感激。太棒了,谢谢你,乔纳斯,这正是我需要的。它正在工作。你为我节省了很多时间。我真的很感激。嗨,莫斯塔法,我想你对2的说法是对的。所以,我需要的是这样的:“选择sites.site\u name,sites.site\u id FROM sites,user WHERE user.username=”“$\u SESSION['username']”和sites.srep\u id=user.area Order by sites.site\u name ASC”;我试着和大多数人一起运行,但仍然没有得到任何东西。请帮助。@Elimbuyamba-Hmm,我可以如何帮助你。。我需要数据库结构来实现这两个目标,以及你试图实现的目标和它不起作用的原因。是@Mostafa Mohsen我有2个数据库。请检查t