嗯,我面臨的問題是,我希望更新一個mysql記錄,只要有人點擊一個贊成按鈕,但我相當新的JavaScript,所以如果有人可以指出我在正確的方向是很好的。如何用javascript onclick觸發mysql語句?
我的網站是使用PHP構建的,如果有幫助的話。
非常感謝
嗯,我面臨的問題是,我希望更新一個mysql記錄,只要有人點擊一個贊成按鈕,但我相當新的JavaScript,所以如果有人可以指出我在正確的方向是很好的。如何用javascript onclick觸發mysql語句?
我的網站是使用PHP構建的,如果有幫助的話。
非常感謝
當您單擊時,您必須發送AJAX請求。在服務器端,應該有一個URL來監聽這個請求,&將相應地執行查詢。
我不想舉w3schools的例子,但仍然有look at this。
編輯:對於OP,您可以從示例中瞭解一下這個想法,但強烈建議您不要使用GET請求。見Crowdner的評論。
是的,它有助於你使用PHP。 Javascript無法訪問MySQL數據庫,因爲JS是客戶端,而MySQL是服務器端,您將不得不使用AJAX調用一個PHP腳本,他將完成剩下的工作,您可以使用jQuery.post函數。
function updateSQL() {
window.location.href = "update.php?id=1";
}
當點擊該按鈕,你可以redirecto相同的頁面,並使用$ _GET可以驗證的發送參數。然後你可以觸發SQL查詢。
你有兩個選擇,兩者都包括一個客戶端部分和服務器端部分:
發表形式隱藏iframe
,用「豎起大拇指」按鈕是一個提交控制權。不需要JavaScript,只需在頁面上放置隱藏的iframe
,其中name
,並且窗體的target
指向該名稱。表單的action
將是記錄點擊的服務器頁面。
讓「豎起大拇指」觸發一個JavaScript單擊處理程序,該處理程序會將發送到服務器頁面的ajax消息記錄下來,並記錄點擊。
附註:如果你打算做大量的客戶端JavaScript編程,我強烈建議在學習JavaScript和DOM投資一些時間。隨着時間的推移,不花費一點時間就可以正確地學習東西,從長遠來看,這會讓你付出代價。我還推薦使用一個好的庫,如jQuery,Prototype,YUI,Closure或any of several others。當然,您可以使用自己的代碼完成所有任務,但使用廣泛使用的庫可以利用其他人的工作,平滑瀏覽器差異並提供一些非常有用的實用程序功能。
+1爲偷偷摸摸的沒有JavaScript的方法。 – alex 2012-02-01 12:21:27
這樣做的主要方式是通過AJAX。您可以使用AJAX調用異步調用服務器上的方法。所以在你的情況下PHP。
創建一個跨瀏覽器工作的AJAX調用可能是一項繁瑣的任務。這就是爲什麼我建議一個庫,而不是像jQuery(那是我熟悉的)。有有s everal其他類似原型,mootools的等
jQuery的一個簡單的例子是:
// Your jQuery method
S('myLink').click(function() {
$.ajax({
url: 'ajax/test.html',
success: function(data) {
alert('The server replied: '+data);
}
});
}
<!-- In your html (no need for an onclick event, jQuery handles that for you) -->
<a href="#" id="myLink">Get data</a>
那好吧很大,可以收聽文件是PHP和傳遞變量呢? – user827570 2012-02-01 12:18:00
Ajax是**不是**必需的。在啓用了JavaScript的瀏覽器上(98%左右),這很方便,但這不是唯一的方法。 – 2012-02-01 12:20:36
是的,你可以做一個GET/POST的URL。我給出的例子使用GET請求。因此,在進行GET/POST時,您可以發送所需的數據。看看http://www.tizag.com/phpT/postget.php – 2012-02-01 12:22:30