我正在使用php中的过程。有两个过程。第一个过程正在调用,但第二个过程不工作。当我注释第一个过程时,第二个过程是有效的。我不知道是否同时调用这两个过程。请告诉我怎么走。我是新手。请帮帮我。
if(isset($_REQUEST['customer'])){
$customer_name = $_POST['customer_name'];
$lang = 'en';
$qry = mysql_query("call customer (NULL,'$customer_name','$lang')")
or mysql_error();//first procedure
$data = mysql_num_rows($qry);
if($data > 0){
$msg ="Customer already exists.";
}
else{
mysql_query("call insertCustomer(NULL,'$customer_name','','','',1,'','','','',@ret,@err_code)")
or mysql_error();//second procedure
$rs = mysql_query('SELECT @p_ret,@p_err_code')or mysql_error();
$data = mysql_fetch_array($rs);
echo $data['@p_err_code'];
echo $data['@p_ret'];
}
}发布于 2014-03-27 19:23:45
首先,您不应该使用mysql,但是mysqli或PDO - mysql已被弃用,对此的支持将被撤回。
其次,您的问题并不具体:第二个过程可能根本不会被调用,因为if ($data > 0)返回true,在本例中这是可以的。
试着改进您的代码以进行调试-您对mysql_error()的调用毫无意义,因为函数将error作为字符串返回,如果没有错误,则返回空字符串,但您没有将其回显出来,也没有将其赋给任何变量。将mysql_query (更确切地说是mysqli_query)的结果保存到一个变量中,然后测试它是否工作也是很好的。
https://stackoverflow.com/questions/22685765
复制相似问题