2010-11-28 40 views
1

我想在javascript中編寫MySQL select語句。可能嗎?最讓我發現了用於.asp的,被嵌入到以.phpJavaScript中的MySQL語句

感謝 讓

+1

是的,這是可能的,但對T-A-L-L-Y無用 – 2010-11-28 20:40:13

+0

@col如果它工作,然後我會用 – X10nD 2010-11-28 20:42:37

回答

5

隨着PHP服務器的JavaScript運行在客戶端和MySQL在服務器上運行。這個工作的唯一方法是讓JavaScript將查詢發送到PHP服務器來運行,並將結果返回給瀏覽器。這是極端不安全,因爲破壞性查詢可以由惡意客戶端製作,並且建議您不要這樣做。而是傳遞您想要查找的條件,並讓PHP處理生成查詢。

1

SQL應由PHP代碼在服務器上生成。只有參數應該從Javascript發送。

可能理論上在Web客戶端的JavaScript中生成SQL,然後將其發送到服務器執行,但這很可能在您的應用程序中創建一個巨大的安全漏洞。

0

與JavaScript在客戶端寫入sql查詢的另一個問題是,你仍然必須將它們發送到服務器,以實際執行它們對MySQL服務器。沒有辦法從瀏覽器直接查詢mysql服務器,沒有使用activeX或者Java或者類似的方法和/或將你的mysql服務器暴露給互聯網。

正如其他人所說,這是一個非常糟糕的下降道路。

我會挑戰爲什麼你想在JavaScript中做到這一點呢?爲什麼Javascript是您的首選?什麼問題的JavaScript解決你的服務器端腳本(PHP或其他)不?

0

這裏是一個MySQL客戶端JavaScript編寫的,但它如何使用Node.js運行服務器端:

https://github.com/felixge/node-mysql

不完全是你問的,但可能是有用的。 node.js是一個有趣的技術。

您也可以將MySQL查詢發送到服務器,然後讓PHP(例如)腳本在那裏運行它們並返回結果。如果你這樣做,一定要確保你的數據庫安全,並以權限有限的用戶身份運行它們,這樣你的數據庫不會被破壞或者你的應用程序被黑掉。