Php 如何将整数传递给ORACLE数据库?
我必须将参数作为数字从php传递到ORACLE。有办法吗?因为我需要删除给定ID的行。但如果我尝试使用oci_的名字,我会得到: “数字或值错误:字符到数字转换错误ORA-06512” 这是我的密码Php 如何将整数传递给ORACLE数据库?,php,oracle,Php,Oracle,我必须将参数作为数字从php传递到ORACLE。有办法吗?因为我需要删除给定ID的行。但如果我尝试使用oci_的名字,我会得到: “数字或值错误:字符到数字转换错误ORA-06512” 这是我的密码 <?php $conn = oci_connect('DBadmin', 'dbadmin', 'PETLOVERSDB'); if (!$conn) { $e = oci_error(); trigger_error(htmlentities($e['message']
<?php
$conn = oci_connect('DBadmin', 'dbadmin', 'PETLOVERSDB');
if (!$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
$deleteOption = $_GET['selectedId'];
$CategorySelected = $_GET['selectedOption'];
if($CategorySelected == "Pet Type"){
$stid = ociparse($conn, "BEGIN setting_package.DELETE_Type(:p1); END;");
}
oci_bind_by_name($stid, ':p1', $deleteOption);
oci_execute($stid);
oci_close($conn);
?>
如有任何建议,将不胜感激 取决于设置程序包的内容。删除程序类型。如果这是一个
VARCHAR2
,那么您可以在PL/SQL
例程中处理它,但否则我会预先签入PHP
并只传递一个数字,否则PL/SQL
调用将崩溃,我认为是ORA-01722:不是一个有效的数字
左右。intval($\u GET['selectedId']
?您根本无法信任用户输入$\u GET['selectedOption']
可以保存任意字符串,如Moo代码>。你的箱子里有什么?