我正在将 PHP 变量传递到 Oracle SQL 查询中。但它没有正确地对待它,给了我 ORA 错误,比如 - 无效字符。我尝试将变量转义为“$sid”,这会使错误消失,但查询不会返回任何内容。 有没有办法将 PHP 变量传递给 oracle 查询
if(isset($_POST['action'])) { $sid = $_POST['action']; $stid = oci_parse($conn, 'SELECT emp from table emp='$sid''); oci_execute($stid); }
为了简洁起见,我删除了数据库连接部分。
'SELECT emp from table emp=\'$sid\''
是一个字符串,您完全按照原样传递给 Oracle,这就是它不起作用的原因。您需要使用
oci_bind_by_name
将占位符绑定到 PHP 变量。示例: