如何向oracle存储过程传递date类型的参数 call prossce('iStartDate ','iEndDate'); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <?phptry { $Oracle_conn=oci_connect("icd","icd","IPCC"); $cur=oci_new_cursor($Oracle_conn); $query="call curspkg.sp_test(:iStartDate,:iEndDate,:iAgentID,:iAgentWorkGroup,:iType,:iVDNUserName,:rcursor );"; $statement=oci_parse($Oracle_conn,$query);// $iStartDate=date("Y-m-d H:i:s",strtotime("2008-11-20 00:00:00"));// $iEndDate=date("Y-m-d H:i:s",strtotime("2008-11-21 00:00:00"));// $iStartDate=date_parse("2008-11-20 00:00:00");// $iEndDate=date_parse("2008-11-21 00:00:00"); $iStartDate="2008-11-20 00:00:00"; $iEndDate="2008-11-21 00:00:00"; $iAgentID=iconv("utf-8","gb2312","0|所有|0|0"); $iAgentWorkGroup = iconv("utf-8","gb2312","0|所有|0|0"); $iType=1; $iVDNUserName="102"; oci_bind_by_name($statement,":iStartDate",$iStartDate); oci_bind_by_name($statement,":iEndDate",$iEndDate); oci_bind_by_name($statement,":iAgentID",$iAgentID,40); oci_bind_by_name($statement,":iAgentWorkGroup",$iAgentWorkGroup,40); oci_bind_by_name($statement,":iType",$iType,2); oci_bind_by_name($statement,":iVDNUserName",$iVDNUserName,20); oci_bind_by_name($statement,":rcursor",$cur,-1,OCI_B_CURSOR); oci_execute($statement); oci_execute($cur); oci_fetch_all($cur, $data, 0, -1, OCI_ASSOC+OCI_FETCHSTATEMENT_BY_ROW); $result = json_encode($data); oci_free_statement($statement); oci_close($Oracle_conn);}catch(Exception $e){ echo $e->getMessage();}?>这是php代码,可还是不行啊 CREATE OR REPLACE PACKAGE CURSPKG AS TYPE T_CURSOR IS REF CURSOR; PROCEDURE sp_test (iStartDate date,iEndDate date,iAgentID varchar,iAgentWorkGroup varchar,iType int,iVDNUserName varchar,rCursor IN OUT T_CURSOR);END CURSPKG;这是存储过程的包头定义 php连接本地mssql失败问题 SQL的安装及与PHP的链接 问个在php中调用外部文本的问题 请问这是怎么回事 php服务器配置 php中上传图片的问题 做一个电子商务网站,安全方面有哪些要注意的,具体如何实现网络安全? 请问用什么工具调试php比较好 哪里有DW快速入门的电子书和资料? Apache+PHP的一个问题~~ 一维数组如何存入二维数组 迷茫倒不迷茫。只是觉得很苦闷!突然不想碰程序了
<?phptry {
$Oracle_conn=oci_connect("icd","icd","IPCC"); $cur=oci_new_cursor($Oracle_conn); $query="call curspkg.sp_test(:iStartDate,:iEndDate,:iAgentID,:iAgentWorkGroup,:iType,:iVDNUserName,:rcursor );";
$statement=oci_parse($Oracle_conn,$query);// $iStartDate=date("Y-m-d H:i:s",strtotime("2008-11-20 00:00:00"));
// $iEndDate=date("Y-m-d H:i:s",strtotime("2008-11-21 00:00:00"));
// $iStartDate=date_parse("2008-11-20 00:00:00");
// $iEndDate=date_parse("2008-11-21 00:00:00"); $iStartDate="2008-11-20 00:00:00";
$iEndDate="2008-11-21 00:00:00";
$iAgentID=iconv("utf-8","gb2312","0|所有|0|0");
$iAgentWorkGroup = iconv("utf-8","gb2312","0|所有|0|0");
$iType=1;
$iVDNUserName="102"; oci_bind_by_name($statement,":iStartDate",$iStartDate);
oci_bind_by_name($statement,":iEndDate",$iEndDate);
oci_bind_by_name($statement,":iAgentID",$iAgentID,40);
oci_bind_by_name($statement,":iAgentWorkGroup",$iAgentWorkGroup,40);
oci_bind_by_name($statement,":iType",$iType,2);
oci_bind_by_name($statement,":iVDNUserName",$iVDNUserName,20); oci_bind_by_name($statement,":rcursor",$cur,-1,OCI_B_CURSOR);
oci_execute($statement); oci_execute($cur); oci_fetch_all($cur, $data, 0, -1, OCI_ASSOC+OCI_FETCHSTATEMENT_BY_ROW);
$result = json_encode($data); oci_free_statement($statement);
oci_close($Oracle_conn);
}catch(Exception $e){
echo $e->getMessage();
}
?>这是php代码,可还是不行啊
CREATE OR REPLACE PACKAGE CURSPKG AS
TYPE T_CURSOR IS REF CURSOR;
PROCEDURE sp_test (iStartDate date,iEndDate date,iAgentID varchar,iAgentWorkGroup varchar,iType int,iVDNUserName varchar,rCursor IN OUT T_CURSOR);
END CURSPKG;这是存储过程的包头定义