我們可以在jQuery中執行mySQL查詢嗎Calllback函數&其他問題功能我們可以在jQuery中執行SQL查詢嗎
喜歡簡單的查詢
UPDATE EMPLOYEE SET PAY = PAY + 500 WHERE E_ID = '32'
我們可以在jQuery中執行mySQL查詢嗎Calllback函數&其他問題功能我們可以在jQuery中執行SQL查詢嗎
喜歡簡單的查詢
UPDATE EMPLOYEE SET PAY = PAY + 500 WHERE E_ID = '32'
你能做的最好的事情是發出一個AJAX請求到服務器,然後使用服務器端代碼執行這個查詢。
在這種情況下,您可以使用jQuery.post()。
編輯
爲了讓AJAX讀this
讀this的概述,以獲得和jQuery的AJAX方法概述。
在頁面中編寫服務器端邏輯以執行SQL命令。然後使用AJAX向該頁面發出請求。
示例代碼
$(function(){
// Bind a click event to your anchor with id `updateSal`
$("#updateSal").click(function(){
// get your employeeID
var empID = "32";
// issue an AJAX request with HTTP post to your server side page.
//Here I used an aspx page in which the update login is written
$.post("test.aspx", { EmpID: empID},
function(data){
// callack function gets executed
alert("Return data" + data);
});
// to prevent the default action
return false;
});
});
你不能直接從JavaScript/jQuery的訪問一個數據庫,但是你可以發佈到可以訪問數據庫服務器上的Web服務。
雖然你可以通過回調服務器端腳本來執行你對MySQL的查詢,但它可能是一種快速安全漏洞的方法。
從終端用戶設備上運行的任何事情生成SQL查詢是一個非常糟糕的主意。
永遠不要相信用戶發給你的任何東西。
試試這個:
https://github.com/vinval/MyJSQL
如何:
$.jsql({
tbName:"EMPLOYEE",
set:["PAY=PAY+500"],
where:"E_ID=32"
}, function(){
//this is the callback
})
查看之前的評論。該庫允許客戶端在服務器上執行任何SQL語句。非常危險。我在庫中看不到任何東西,以防止客戶端上的任何人使用此庫向服務器發出SQL語句。 – Jeff 2017-08-26 21:41:19
這是一個非常開放的問題,你問如何做到這一點的$ 500提高了選擇的僱員的工資的AJAX更新, 對?然後我們需要一些其他信息,比如你在做什麼語言/平臺這個......如果你使用PHP vs ASP.Net vs ruby ......答案是不同的...... – 2010-11-20 17:41:14
實際上,答案很簡單。 JQuery無法連接到MySQL服務器 - 您需要一個服務器端腳本。 – Konerak 2010-11-20 17:44:14