Rumah > Soal Jawab > teks badan
Saya menghantar pembolehubah PHP ke dalam pertanyaan Oracle SQL. Tetapi ia tidak merawatnya dengan betul dan memberi saya ralat ORA seperti - watak tidak sah. Saya cuba melepaskan pembolehubah kepada "$sid" yang membuat ralat hilang, tetapi pertanyaan tidak mengembalikan apa-apa. Adakah terdapat cara untuk menghantar pembolehubah PHP kepada pertanyaan oracle
if(isset($_POST['action'])) { $sid = $_POST['action']; $stid = oci_parse($conn, 'SELECT emp from table emp='$sid''); oci_execute($stid); }
Demi ringkasnya, saya mengeluarkan bahagian sambungan pangkalan data.
P粉2629261952023-11-05 11:26:35
'SELECT emp from table emp='$sid''
ialah rentetan yang anda hantar ke Oracle dengan tepat, itulah sebabnya ia tidak berfungsi.
Anda perlu menggunakan oci_bind_by_name
untuk mengikat pemegang tempat kepada pembolehubah PHP.
Contoh:
$variable = 42; $stid = oci_parse($conn, 'SELECT col_name FROM tbl_name WHERE col_name > :num;'); oci_bind_by_name($stid, ":num", $variable); oci_execute($stid);