如何使用javascript連接和訪問數據庫的值? 我想註冊一個用戶,所以當我要創建用戶時,我想檢查用戶名是否可用(意味着要對數據庫執行搜索操作)? 我們可以用javascript做到這一點嗎?因爲它是用於客戶端,所以我很困惑?使用javascript訪問數據庫?
回答
我們可以用javascript做到這一點嗎?因爲它是用於客戶端,所以我很困惑?
JavaScript是一種通用編程語言,而不是客戶端語言。人們總是在服務器端使用它。
但是,如果你的意思是,你可以使用JavaScript 在Web瀏覽器到你的服務器上訪問數據庫,得到的答案是:不是直接的,沒有(當然,除非你是在Intranet和跳過籃球,你真的不想跳過);你需要一箇中間層。您可以讓客戶端上的JavaScript將消息發送到服務器(例如,通過ajax);服務器端代碼需要處理這些消息,確保它們是有效的而不是惡意的,然後非常謹慎地更新數據庫並將結果發送回客戶端瀏覽器。
服務器端語言可以是JavaScript或您希望在服務器上使用的任何其他語言。我注意到你標記了你的問題jsp
,所以你可能想用Java編寫服務器端的東西(而不是JavaScript)。如果是這樣,如果你想要讓你擁有一個現代化的,非頁面刷新體驗使用AJAX,它看起來是這樣的:
用戶執行與行動,提高瀏覽器的事件。
JavaScript代碼通過向服務器發送ajax消息來處理事件;在登錄的情況下,你可能想要做一個
POST
。甲JSP(或更好的是,一個servlet)
接收
POST
消息驗證的內容,檢查惡意內容和其它類似的攻擊
查詢和/或使用準備好的語句和類似語句更新數據庫,以避免SQL注入攻擊
發送響應,與信息有關的操作
的JavaScript代碼接收到
POST
AJAX調用的響應,並看着它,看看發生了什麼事
如果您使用ajax通過REST API查詢數據庫,該怎麼辦? –
@FranciscoSalvador:上面沒有改變。 JSP很可能使用RESTful URL。 –
感謝上帝使用JavaScript無法實現。您需要一個服務器端腳本語言來驗證某個用戶對數據庫的輸入。
JavaScript經常用作服務器端腳本語言。 –
是的,但據我瞭解他的問題,他想在客戶端使用JavaScript! – Amberlamps
是的,但要說「JavaScript不可能」是錯誤的說法。 :-) –
您shouldn't使用客戶端的JavaScript有幾個原因Access數據庫(不好的做法,安全問題等),但如果你真的想這樣做,這裏有一個例子:
var connection = new ActiveXObject("ADODB.Connection") ;
var connectionstring="Data Source=<server>;Initial Catalog=<catalog>;User ID=<user>;Password=<password>;Provider=SQLOLEDB";
connection.Open(connectionstring);
var rs = new ActiveXObject("ADODB.Recordset");
rs.Open("SELECT * FROM table", connection);
rs.MoveFirst
while(!rs.eof)
{
document.write(rs.fields(1));
rs.movenext;
}
rs.close;
connection.close;
更好的辦法連接到SQL服務器將使用一些服務器端語言,如PHP,Java,.NET等。客戶端JavaScript應該只用於接口。
還有一個關於服務器javascript存在的古老傳說的流言,但這是另一回事。 ;)
直接的結果,不。 JavaScript通常運行在不可信的機器上。 由於JavaScript是一種腳本語言。所以,你應該考慮使用Ajax調用(如後)來訪問你的服務器數據庫...
類似thread討論這個問題
- 1. 如何使用javascript訪問數據庫
- 2. 使用訪問數據庫
- 3. PHP的Javascript來訪問數據庫
- 4. 連接javascript訪問數據庫
- 5. 使用客戶端訪問數據庫或服務器來訪問數據庫
- 6. PHP MySQL數據庫 - 訪問使用phpMyAdmin訪問我的數據庫否認
- 7. 使用javascript訪問本地json數據
- 8. Javascript - 數據訪問
- 9. 使用Blackberry訪問Oracle數據庫?
- 10. 使用Weka API訪問MySql數據庫
- 11. Codeigniter使用ms訪問數據庫
- 12. 使用Navicat訪問n層數據庫
- 13. 使用Windows服務訪問數據庫
- 14. 如何使用數據庫訪問
- 15. 使用PHP訪問SQLite數據庫
- 16. Django - 使用jQuery/AJAX訪問數據庫
- 17. 使用mapreduce訪問非JDBC數據庫
- 18. 使用EventMachine異步數據庫訪問
- 19. 使用Java訪問MS Access數據庫
- 20. 使用MySQL訪問Wordpress數據庫?
- 21. 使用Clojure訪問數據庫
- 22. 如何使用Future訪問數據庫
- 23. 使用java訪問sqlite數據庫
- 24. 使用VB6訪問遠程數據庫
- 25. 使用apache訪問外部數據庫
- 26. 訪問控制不使用數據庫
- 27. 使用php訪問Prestashop數據庫
- 28. 使用Silverlight訪問數據庫
- 29. 使用Vbscript訪問TFS數據庫
- 30. 跟蹤使用訪問數據庫
mysql數據庫? – gopi1410