Ich übergebe PHP-Variablen an eine Oracle SQL-Abfrage. Aber es behandelt es nicht richtig und gibt mir ORA-Fehler wie „ungültiges Zeichen“. Ich habe versucht, die Variable in „$sid“ zu maskieren, wodurch der Fehler verschwindet, aber die Abfrage gibt nichts zurück. Gibt es eine Möglichkeit, PHP-Variablen an Oracle Query zu übergeben?
if(isset($_POST['action'])) { $sid = $_POST['action']; $stid = oci_parse($conn, 'SELECT emp from table emp='$sid''); oci_execute($stid); }Der Kürze halber habe ich den Datenbankverbindungsteil entfernt.
'SELECT emp from table emp=\'$sid\''
是一个字符串,您完全按照原样传递给 Oracle,这就是它不起作用的原因。您需要使用
oci_bind_by_name
将占位符绑定到 PHP 变量。示例: