当前位置:  编程技术>php
本页文章导读:
    ▪解析:php调用MsSQL存储过程使用内置RETVAL获取过程中的return值       【PHP代码】 代码如下: $stmt = mssql_init('P__Global_Test', $conn) or die("initialize stored procedure failure"); mssql_bind($stmt, "RETVAL", $returnValue, SQLINT4, true); mssql_execute($stmt, false);        if( $returnValue == 0 ){.........
    ▪php调用MySQL存储过程的方法集合(推荐)       类型一:调用带输入、输出类型参数的方法 代码如下:$returnValue = '';try { mysql_query ( "set @Return" ); $spname = 'P__Test_GetInfo1'; mysql_query ( "call $spname(@Return, '{$userId}', '{$pwd}')" ) or die ( "[$spname]Query fai.........
    ▪解决php使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)       【详细错误】:由于出现错误 c00ce56e 而导致此项操作无法完成 【造成原因】:未指定输出编码格式。 【解决办法】:句首加入header("content-type:text/html; charset=UTF-8"); ......

[1]解析:php调用MsSQL存储过程使用内置RETVAL获取过程中的return值
    来源: 互联网  发布时间: 2013-11-30
【PHP代码】
代码如下:

 $stmt = mssql_init('P__Global_Test', $conn) or die("initialize stored procedure failure");
 mssql_bind($stmt, "RETVAL", $returnValue, SQLINT4, true);
 mssql_execute($stmt, false);
        if( $returnValue == 0 ){
           echo 'ABCD';
        }
        else{ <PRE code">           echo 'EFGH';</PRE> } 

【存储过程】
代码如下:

CREATE PROCEDURE dbo.P__User_JudgeResume(
)
set nocount on
 set @Message = ''

 if not exists( select * from _Test )
 begin
  return 0
 end
 else
 begin
  return 1
 end
set nocount off
GO


    
[2]php调用MySQL存储过程的方法集合(推荐)
    来源: 互联网  发布时间: 2013-11-30
类型一:调用带输入、输出类型参数的方法
代码如下:

$returnValue = '';
try {
 mysql_query ( "set @Return" );
 $spname = 'P__Test_GetInfo1';
 mysql_query ( "call $spname(@Return, '{$userId}', '{$pwd}')" ) or die ( "[$spname]Query failed:" . mysql_error () );
 $result_return = mysql_query ( "select @Return" );
 $row_return = mysql_fetch_row ( $result_return );
 $returnValue = $row_return [0];
} catch ( Exception $e ) {
 echo $e;
}
echo $returnValue; //输出来自存储过程中输出的变量

类型二:调用带多个输出类型和多个输入类型参数的方法
代码如下:

$userId = 0;
try{
    mysql_query("set @Message");
    mysql_query("set @Id");
    mysql_query("call P__Test_Login(@Message, @Id, '{$userId}', '{$pwd}')", $conn) or die("Query failed:".mysql_error());
    $result_mess = mysql_query("select @Message");
    $result_uid = mysql_query("select @Id");
    $row_mess = mysql_fetch_row($result_mess);
    $row_uid = mysql_fetch_row($result_uid);
    $Proc_Error = $row_mess[0];
    $uId = $row_uid[0];
}
catch( Exception $e )
{
   echo $e;
}
echo 'proc return message:'$Proc_Error.'<br/>'; //输出来自存储过程中输出的变量
echo 'User id:'.$uId; //获取用户id

类型三:调用带返回结果集的方法
代码如下:

try {
 $spname = 'P__Test_GetData';
 $query = mysql_query ( "call $spname()", $conn ) or die ( "[$spname]Query failed:".mysql_error() );
 while ( $row = mysql_fetch_array ( $query ) ) {
  echo $row ['ProvinceID'].'::'.$row ['ProvinceName']; //输出数据集
 }

} catch ( Exception $e ) {
 echo $e;
}

类型四:调用带返回多个结果集的方法(目前只能通过mysqli来实现~~)
代码如下:

//PHP
$rows = array (); 
$db = new mysqli($server,$user,$psd,$dbname); 
if (mysqli_connect_errno()){ 
    $this->message('Can not connect to MySQL server'); 

$db->query("SET NAMES UTF8"); 
$db->query("SET @Message");
if($db->real_query("call P__Test_GetData2(@Message)")){ 
    do{ 
        if($result = $db->store_result()){ 
            while ($row = $result->fetch_assoc()){ 
                array_push($rows, $row); 
            } 
            $result->close(); 
        } 
    }while($db->next_result()); 

$db->close();
print_r($rows);
//Procedure
……
select * from T1 where ……
select * from T2 where ……
……

    
[3]解决php使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)
    来源: 互联网  发布时间: 2013-11-30

【详细错误】:由于出现错误 c00ce56e 而导致此项操作无法完成

【造成原因】:未指定输出编码格式。

【解决办法】:句首加入header("content-type:text/html; charset=UTF-8");


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
linux iis7站长之家
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3