$userfetch = "select usr_cns_id from user_canvas where email_id='".$dat['loginID']."' ";
function cnct($sname,$dbusername,$dbpassword,$databasename)
{
mysql_connect($sname,$dbusername,$dbpassword,$databasename) or die("COULD NOT CONNECT");
mysql_select_db($databasename) or die("COULD NOT SELECT DB");
global $userfetch;
//echo $sname."".$dbusername."".$dbusername."".$databasename;
$userfetch_exec = mysql_query($userfetch);
//$userdetails = array();
while($udata = mysql_fetch_assoc($userfetch_exec))
{
$userdetails = $udata ;
}
foreach($userdetails as $ude)
{
$udetail = $ude['usr_cns_id'];
}
return $udetail;
}
/ *我第一次调用此函数并且工作正常* /
$uscanid = cnct($server_name,$Db_user,$Db_pass,$Db_name_ac);
/ *第二次我使用不同的参数值调用此函数,它返回1而不是实际值* /
$uscanid = cnct($server_name,$Db_user,$Db_pass,$Db_name_comp);
/ *我无法理解哪里出错了,感谢任何帮助* /
答案 0 :(得分:1)
如果使用相同的参数对mysql_connect()进行第二次调用, 不会建立新链接,而是建立链接标识符 已经打开的链接将被退回。
因此,您需要在$newlink
mysql_connect()
参数设置为TRUE
喜欢这个..(将现有代码更改为此)
mysql_connect($sname,$dbusername,$dbpassword,TRUE);
警告:自mysql_*
起,此{(1}})扩展程序已弃用,将来也会被删除。相反,应使用MySQLi
或PDO_MySQL
扩展名的准备好的语句来抵御SQL注入攻击!
答案 1 :(得分:0)
你需要将$ userfetch传递给函数
function cnct($sname,$dbusername,$dbpassword,$databasename, $userfetch)