$mysql_obj = new Mysql(); //建立数据库连接对象
$sql = "call proc_operator_select('$code')";
$operator_sub_array = $mysql_obj->fetch_array($sql);$sql_company = "CALL proc_baseinfo_search(3)";
$company_array = $mysql_obj->fetch_array($sql_company);$sql_role = "CALL proc_role_search_all";
$role_array = $mysql_obj->fetch_array($sql_role);
上面这样写,后面两个存储过程就执行不了。得写成这样:
$mysql_obj = new Mysql(); //建立数据库连接对象
$sql = "call proc_operator_select('$code')";
$operator_sub_array = $mysql_obj->fetch_array($sql);$mysql_obj1 = new Mysql(); //建立数据库连接对象
$sql_company = "CALL proc_baseinfo_search(3)";
$company_array = $mysql_obj1->fetch_array($sql_company);$mysql_obj2 = new Mysql(); //建立数据库连接对象
$sql_role = "CALL proc_role_search_all";
$role_array = $mysql_obj2->fetch_array($sql_role);
有没有什么办法可以解决,我不想实例化这么多个,有没有什么办法可以只实例化一次
$result = mysql_query($query) or die('Query failed: ' . mysql_error());// Printing results in HTML
echo "<table>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo "\t<tr>\n";
foreach ($line as $col_value) {
echo "\t\t<td>$col_value</td>\n";
}
echo "\t</tr>\n";
}
echo "</table>\n";// Free resultset
mysql_free_result($result);
$host="localhost";
$user="root";
$password="11212";
$db="samp_db";
$dblink=mysql_connect($host,$user,$password)
or die("can't connect to mysql");
mysql_select_db($db,$dblink)
or die("can't select samp_db");
$res=mysql_query("set @a=$password",$dblink);
$res=mysql_query("call aa(@a)",$dblink);
$res=mysql_query("select @a",$dblink);
$row=mysql_fetch_row($res);
echo $row[0];
//筛选数据
function fetch_array($sql) { //$sql必须为查询语句,返回select后的所有记录
$rowarray=array();
$query=$this->query($sql);
$i=0;
$row=@mysql_fetch_array($query);
while ($row) {
$rowarray[$i]=$row;
$i++;
$row=mysql_fetch_array($query);
}
return $rowarray;
mysql_free_result($query); //可以不释放,页面跳转时自动释放
}
我上面的代码会调用fetch_array这个函数,我就是在这个函数最后加上mysql_free_result($query); //可以不释放,页面跳转时自动释放
放到前面提示:Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in D:\xampp\htdocs\sm\trunk\class\system.class.php on line 116
好像从第二个存储过程开始都返回不了结果了
我发现个问题,换一个开发套件就好了,我用的是XAMPP FOR WIN,这是为什么?是不是PHP.ini里或my.ini里的设置问题?不过我都看了,改了,没有效果,请问一下大家