我在连接我的SQL SERVER存储过程到我的PHP表单的问题…它告诉我一个错误
致命错误:在非对象上调用成员函数execute()…
请帮助我在SQL SERVER存储过程新
MY PHP CODE:
<?php
$serverName = " BONGBONG-PC ";
$connection = array( "Database"=>"benefit_insurance");
$conn = sqlsrv_connect( $serverName, $connection);
$btn=$_POST['button'];
$fname = $_POST['fname'];
$lname=$_POST['lname'];
TRY{
if($btn=='LOGIN'){
$stmt = sqlsrv_prepare ($conn,'CALL insert_record(@fname, @lname)');
if( !$stmt ) {
die( print_r( sqlsrv_errors(), true));
}
$stmt->execute(array(
'@fname' => $fname,
'@lname' => $lname,
));
echo "<script language=javascript>alert('ACCOUNT SAVED')</script>";
}
}
catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
?>
问题不在存储过程中。您使用资源作为对象。这是不正确的
没有理由只对一个查询使用prepare语句。
你需要下一个代码:
$stmt = sqlsrv_query ($conn,'EXECUTE insert_record @fname = ?, @lname = ?', array($fname, $lname));
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true));
}