2013-08-20 102 views
-1

我不確定這是否是正確的方式,我用jquery構建了這個CRUD類似的東西,jquery主要用於前端效果。將操縱元素保存到mysql中

例如我appended東西,想要保存它,怎麼樣?

http://jsfiddle.net/qdYeY/6/

如果可能,我希望用戶,這些操縱元素保存到數據庫中,從而使用戶的每一個都有自己的「個人資料」(我會做一個寄存器,後來登陸)

剛不知道如何保存這些操縱的元素..是我必須用PHP來做到這一點嗎?即使如此我如何在這些js之間運行PHP?

+1

ajax是您正在尋找的術語!祝你好運 –

+0

總是把所有相關的代碼和標記**放在問題本身**中,不要只是鏈接(甚至不要jsFiddle)。小提琴是一個很好的*補充*,而不是替代品。 –

+0

我們如何從用戶獲取輸入並將其保存在db中?一個簡單的表單發佈或Ajax! – Sudipta

回答

1

是我必須用PHP來做嗎?

你必須用能夠訪問MySQL服務器的東西來做,是的。所以,既然你提到PHP,如果這就是你在服務器上使用的,是的,你會這樣做。

即使是這樣我怎麼運行這些JS之間PHP?

記住,事情正在發生:在JavaScript是在用戶的機器上運行,和你的數據庫是服務器上。因此,要從客戶端獲取信息到數據庫中,您必須將其從客戶端發送到服務器。

有幾種方法可以做到這一點。兩個最常見的提交form(老式的東西),並使用AJAX,它允許您發送請求到您的服務器沒有刷新頁面顯示給用戶。

jQuery提供了許多有用的工具來完成ajax,這些工具在文檔中討論並且是大約一百萬個示例的主題。 :-)要查看的位是$.ajax函數(及其包裝$.get,$.post等)。

這裏是一個非常簡單的例子:假設我們有一個變量,addr,其中包含電子郵件地址(或其他),我們要發送到服務器:

$.ajax({ 
    // The path to the page that will save the data 
    url: "/path/to/a/server/page/to/handle/it.php", 

    // Since we're saving data, POST is the appropriate HTTP verb (n GET) 
    type: "POST", 

    // The data. PHP code in the page above will see the email address 
    // as $_POST['email'] 
    data: {email: addr}, 

    // jQuery will call this function if the ajax call succeeded 
    success: function() { 
     // ... 
    }, 

    // jQuery will call this function if the ajax call fails 
    error: function() { 
     // ... 
    } 
}); 

注意,在阿賈克斯代表異步。上面的電話$.ajax開始發送到服務器,但是然後您的JavaScript代碼繼續而不等待結果。這就是爲什麼我們有回調函數的原因。

如果您只是在您自己的應用程序中完成此操作,則不會對您造成影響,但只是爲了完整:還請注意,您只能在same origin內使用AJAX。因此,您無法使用AJAX將數據從http://example.com的頁面發佈到http://someotherdomain.com的頁面。 (除非您使用CORS並且接收服務器允許。)

0

Javascript和因此jQuery在用戶的機器上執行並且通常用作客戶端語言而不是服務器端語言。

你需要使用服務器端語言,如php的保存在數據庫中的那些值。

你可以實現它利用了AJAX technique的和更具體的利用$.post功能的理想。 (或$.ajax如果您願意)

+0

@ T.J.Crowder編輯。 – Alvaro