我正在尝试编写一个选择,连接和访问数据库但不起作用的代码:X
$mysql_storage = true;
if($mysql_storage){
$databases = array(
array("localhost","glibet_login","#####","glibet_site")
);
foreach($databases as $database){
$makeconnection = $database[1];
${$makeconnection} = mysql_connect($database[0],$database[1],$database[2]);
mysql_select_db($database[3], $database[1]);
}
}
$query = "SELECT * FROM users WHERE email='marsalcorreialima@gmail.com'";
$littlequery = mysql_query($query, $glibet_login);
$littlefetch = mysql_num_rows($littlequery);
print $littlefetch;
请告诉我这段代码是否至少有意义
警告:mysql_select_db()期望参数2是资源,第16行/home/glibet/public_html/api/api_storage.php中给出的字符串
编辑[求助]!
mysql_select_db($database[3], ${$makeconnection});
答案 0 :(得分:2)
应该是
$makeconnection = $database[1];
${$makeconnection} = mysql_connect($database[0],$database[1],$database[2]);
mysql_select_db($database[3], ${$makeconnection});
并停止使用已弃用的mysql_*
。使用mysqli
或PDO
。
答案 1 :(得分:0)
我认为你使连接过程有点复杂。它可以通过以下方式更简单
$mysql_storage = true;
$makeconnection;
if($mysql_storage){
$makeconnection = mysql_connect("localhost","glibet_login","#####");
mysql_select_db("glibet_site", $makeconnection);
}
$query = "SELECT * FROM users WHERE email='marsalcorreialima@gmail.com'";
$littlequery = mysql_query($query, $makeconnection);
$littlefetch = mysql_num_rows($littlequery);
print $littlefetch;