2012-05-25 49 views
0

以下代碼不會將記錄更新到Oracle數據庫中。任何人都可以幫助確定背後的原因。如果任何其他原因可能造成問題,請提出建議。在此先感謝爲什麼PHP腳本無法更新oracle數據庫中的數據?

<?php 
if(isset($_GET['submit'])) { 
echo $sl_no = $_GET['sl_no']; 
echo $subject = $_GET['subject']; 


// update Subject 
$str2 = "update application_form af set af.subject_code=:subject where af.application_form_sl_no=:sl_no"; 
$stid_update2 = oci_parse($conn, $str2); 
oci_bind_by_name($stid_update2, ":subject", $subject); 
oci_bind_by_name($stid_update2, ":sl_no", $sl_no); 
oci_execute($stid_update2); 
$success2 = oci_commit($conn); 

// send successful message 

    if($success2) 
    { 
    echo "Form saved Successfully!!!"; 
    } 
} 
?> 
+0

你得到一個錯誤?結帳['oci_error'](http://www.php.net/manual/en/function.oci-error.php) –

回答

1

你沒有申報$ conn變量,並連接到數據庫

$conn = oci_connect('hr', 'welcome', 'localhost/XE'); 

資源:http://php.net/manual/en/function.oci-connect.php

+0

確實。 OP,檢查您的錯誤報告已啓用,並且所有警告都寫入您開發機器的屏幕上。 – halfer

+0

非常感謝,並且很抱歉地說我已經在不同的文件中提供了連接代碼,並且在上面提到的代碼(我沒有在這裏輸入)之上的選擇查詢的代碼工作正常。只是更新部分不起作用。用戶特權或連接協議或COMMIT問題有任何問題嗎?我很好的裝備了Mysql,但是在oracle db中,儘管我已經完成了select查詢,但是爲了更新記錄,我是新的。希望我的話可以幫助你解決我的問題。 – Samcoder