PHP';db2#u prepare失败';错误

PHP';db2#u prepare失败';错误,php,db2,Php,Db2,我将PHP与使用db2的IBMi一起使用。我有一个testProcedure.php代码中的存储过程,如下所示: // Prepare Stored Procedure call // $proc = 'CALL WLKLIB.DSH3518SQ(?,?,?)'; $stmt = db2_prepare($conn, $proc) or die("db2_prepare failed

我将PHP与使用db2的IBMi一起使用。我有一个testProcedure.php代码中的存储过程,如下所示:
                // Prepare Stored Procedure call //
                $proc = 'CALL WLKLIB.DSH3518SQ(?,?,?)';
                $stmt = db2_prepare($conn, $proc) or die("db2_prepare failed         " . db2_stmt_error(). " and " .db2_stmt_errormsg());
                db2_bind_param($stmt, 1, 'inCuCode', DB2_PARAM_IN,DB2_CHAR);
                db2_bind_param($stmt, 2, 'inProdCode', DB2_PARAM_IN,DB2_CHAR);
                db2_bind_param($stmt, 3, 'inBuyNum', DB2_PARAM_IN,DB2_CHAR);
                db2_execute($stmt);
                while (db2_fetch_row($stmt)) {
                    $Fld1  = db2_result($stmt, 0);
                    $Fld2 =  db2_result($stmt, 1);
                    $Fld3 =  db2_result($stmt, 2);
                    $Fld4 =  db2_result($stmt, 3);
                    $Fld5 =  db2_result($stmt, 4);
                    $Fld6 =  db2_result($stmt, 5);
                    $Fld7 =  db2_result($stmt, 6);
                    $Fld8 =  db2_result($stmt, 7);
                    $Fld9 =  db2_result($stmt, 8);
                    $Fld10 =  db2_result($stmt, 9);
                    $Fld11 =  db2_result($stmt, 10);
                    $Fld12 =  db2_result($stmt, 11);
                    $Fld13 =  db2_result($stmt, 12);
                    ?>
                            <p><?php echo $Fld1;?> </p>
                            <p><?php echo $Fld2;?> </p>
                            <p><?php echo $Fld3;?> </p>
                            <p><?php echo $Fld4;?> </p>
                            <p><?php echo $Fld5;?> </p>
                            <p><?php echo $Fld6;?> </p>
                            <p><?php echo $Fld7;?> </p>
                            <p><?php echo $Fld8;?> </p>
                            <p><?php echo $Fld9;?> </p>
                            <p><?php echo $Fld10;?> </p>
                            <p><?php echo $Fld11;?> </p>
                            <p><?php echo $Fld12;?> </p>
                            <p><?php echo $Fld13;?> </p>
                      <?php }?> 
//准备存储过程调用//
$proc='调用WLKLIB.DSH3518SQ(?,?)';
$stmt=db2_prepare($conn,$proc)或die(“db2_prepare失败”.db2_stmt_error()“和”.db2_stmt_errormsg());
db2_bind_param($stmt,1,'inCuCode',db2_param_IN,db2_CHAR);
db2_bind_param($stmt,2,'inProdCode',db2_param_IN,db2_CHAR);
db2_bind_param($stmt,3,'inBuyNum',db2_param_IN,db2_CHAR);
db2_execute($stmt);
while(db2_fetch_行($stmt)){
$Fld1=db2_结果($stmt,0);
$Fld2=db2_结果($stmt,1);
$Fld3=db2_结果($stmt,2);
$Fld4=db2_结果($stmt,3);
$Fld5=db2_结果($stmt,4);
$Fld6=db2_结果($stmt,5);
$Fld7=db2_结果($stmt,6);
$Fld8=db2_结果($stmt,7);
$Fld9=db2_结果($stmt,8);
$Fld10=db2_结果($stmt,9);
$Fld11=db2_结果($stmt,10);
$Fld12=db2_结果($stmt,11);
$Fld13=db2_结果($stmt,12);
?>

当这个文件被执行时,它运行良好并显示数据,但是当它与我的其他代码合并时,会出现一个错误,说“db2_prepare failed”,并且它的代码与我在这两个地方使用的代码相同。请您帮我解决这个问题。
p、 “db2_prepare failed”是您的错误消息;发布db2错误代码和消息。这正是它显示的内容:“db2_prepare failed and”我认为它来自以下内容:
$stmt=db2_prepare($conn,$proc)或die(“db2_prepare failed”.db2_stm_error()”和.db2_stm_errormsg())
如果你知道什么失败了-那么问题是什么。我们不知道你的
db2\u prepare()
做了什么。db2\u prepare()创建一个准备好的SQL语句,它可以包含0个或更多的参数标记(?个字符)表示输入、输出或输入/输出的参数。您可以使用db2_bind_param()将参数传递给prepared语句,也可以仅将输入值作为传递给db2_execute()的数组传递给prepared语句。它表示db2_prepare失败,我认为它来自$stmt=db2_prepare($conn,$proc)或die(“db2_prepare failed”。db2_stmt_error()。”和“.db2_stmt_errormsg();我不确定这只是一个假设,但我不知道它为什么会失败。请帮我找到失败的根源。