Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将变量传递给存储过程_Php_Mysql_Stored Procedures - Fatal编程技术网

Php 将变量传递给存储过程

Php 将变量传递给存储过程,php,mysql,stored-procedures,Php,Mysql,Stored Procedures,使用php,我试图将变量传递给MySQL中的存储过程。当我点击删除按钮时,我会看到一个“死亡的白色屏幕”。下面是我的代码: if (isset($_POST['delete'])) { $stmt = mssql_init('update_new_sn', $conn); mssql_bind($stmt, '@selectedID', $fileID, SQLINT1); mssql_bind($stmt, '@selectedRMAID', $rmaID, SQLI

使用php,我试图将变量传递给MySQL中的存储过程。当我点击删除按钮时,我会看到一个“死亡的白色屏幕”。下面是我的代码:

if (isset($_POST['delete'])) {
    $stmt = mssql_init('update_new_sn', $conn);

    mssql_bind($stmt, '@selectedID', $fileID, SQLINT1);
    mssql_bind($stmt, '@selectedRMAID', $rmaID, SQLINT1);

    $deleteRecord = mssql_execute($stmt);

}
以下是我的存储过程:

DROP PROCEDURE `update_new_sn`//
CREATE DEFINER=`admin`@`localhost` PROCEDURE `update_new_sn`(in selectedID int, in selectedRMAID int)
begin

delete from dropbox where id = selectedID;
update rma set ref_status_id = 0 where id = selectedRMAID;

end
当我在phpmyadmin中测试它时,这个过程工作了,它成功地删除了“dropbox”表中所选的记录,并更新了rma表。因此,我的php代码块似乎有问题


提前感谢您的建议。

以下是如何使用MySQL和mysqli API完成此操作:

$stmt = mysqli_prepare($con, 'CALL update_new_sn(?, ?)');
mysqli_bind_param('ii', $fileID, $rmaID);
$deleteRecord = mysqli_execute($stmt);

你的PHP代码使用MSSQL,但你的问题被标记为MYSQL。这是什么?如果他使用phpmyadminSo,那么安全的假设第一个问题是你试图使用MSSQL API,但你有一个MYSQL数据库。这不可能工作。感谢你指导我正确的方向。你能解释一下(?,,,)和“ii”吗“正在做什么?问号是用绑定参数填充的占位符。而
ii
意味着参数是整数,就像您最初尝试的
SQLINT1
一样。