2017-05-01 36 views
0

我正在嘗試在模式上創建窗體。我有一個2個按鈕的表單:接受和拒絕。 如果用戶點擊accept,那麼該數據庫中會有更新,如果用戶點擊拒絕,則會有另一個更新。 我需要從數據庫中保留一定的值,所以我正在做一個選擇。 問題是,我不知道如何使用JavaScript在數據庫中插入(我知道它可以與jquery/ajax,但如何在按鈕中調用 ?)。用2提交按鈕並保存在數據庫中的Boostrap模式窗體

這裏是我的代碼: the modal

這裏是JavaScript函數在數據庫中插入不工作

<script type="text/javascript"> 
    function clicked1() { 
    //update candidate_jobs SET is_hired='1' WHERE candidate_id=$userId and applied_to=$row["job_id"]; 

    var connection = new ActiveXObject("ADODB.Connection"), 
    recordSet = new ActiveXObject("ADODB.Recordset"), 
    connectionString = ''; 

    connection.Open(connectionString); 
    recordSet.Open(
    "update candidate_jobs SET is_hired='1' WHERE candidate_id=".$userId." and applied_to=".$row["job_id"]."";, 
    connection); 

    recordSet.close; 
    connection.close; 

    alert('You accepted the offer'); 
} 

    function clicked2() { 
    //idem clicked1 but change the is_hired value to be inserted in the database 
    alert('You rejected the offer'); 
    } 
</script> 

它可以使用jQuery和Ajax做些什麼呢?怎麼樣? 代碼有什麼問題?

非常感謝!

回答

0

連接的sql字符串很容易出現sql注入攻擊(雖然顯然任何查看頁面源代碼的人都可以對數據庫執行任何操作) - 參數化是這裏的解決方案,我們需要使用IDENTITY或GUID。

以下是可能出現的問題的列表:

1)代碼會在IE永遠只能運行瀏覽器 2)您可能需要下載並安裝COM組件 - ADO 3)您可能需要運行IE作爲管理員 4)您可能需要打開IE中的各種安全漏洞(ActiveX控件,對於腳本安全等)

如果您在瀏覽器上啓用腳本調試,您將獲得有關實際問題的更多信息。 希望它可以幫助你。

相關問題