如何在JavaScript中连接数据库

时间:2013-05-10 12:02:18

标签: javascript sql

如何从JS功能连接到mysql DB?

我发现了这个问题:

How to connect to SQL server database from javascript?

但它不适用于Chrome,因为他们使用的是ActiveXObject

谢谢。

6 个答案:

答案 0 :(得分:4)

Web浏览器方面没有好的解决方案,可以让您使用所有浏览器。在浏览器站点上使用数据库有许多缺点。

首先,您展示了数据库结构,这非常危险。想象一下,在了解表和字段的同时进行SQL注入会更容易吗?

您必须使用密码以某种方式建立连接,密码将显示给第三方用户。或者你必须设置无密码连接,这也是危险的。

当你与数据库建立连接时,有人可以轻松地执行自己的查询,因为你正在显示你的结构。

我强烈建议您不要在浏览器端执行此操作。

答案 1 :(得分:2)

  

但我有跨域问题,所以我只需要从db

中进行简单的选择

直接的浏览器到数据库通信肯定是不是正确的解决方案。

如果要从db中获取值列表,只需使用您喜欢(或需要)使用的任何服务器端语言编写方法,使客户端JavaScript代码通过其公共URI调用该方法并将响应主体解析为某种数据结构。

这种问题的更通用的解决方案是XMLRPC(为了记录,我在Code Igniter / Flash ActionScript 3.0下使用它),尽管使用起来并不是那么简单。

如果您需要从两个不同的域获取数据,那么在两个域上实现上述内容并使JavaScript代码调用两个不同的URI并组合数据(如果需要)。

答案 2 :(得分:1)

您必须使用AJAX,因为JavaScript本身无法连接到服务器。您可以使用AJAX调用一些PHP脚本,并在JavaScript中处理来自它的响应。请参阅jQuery.ajax()

答案 3 :(得分:1)

从你的javascript调用Ajax到php,它将你连接到数据库

答案 4 :(得分:1)

如果没有某种插件,或者将请求发送到将为您访问数据库的服务器端应用程序,则不能。所以请专注于那些,特别是服务器端应用程序。

答案 5 :(得分:1)

此问题下的评论

How to make a database connection

建议只有使用专门设计用于使用Web浏览器部署类似桌面软件的Microsoft技术的特定组合才能实现。这里提到的位是:

  • HTA - HTML应用程序
  • JScript - Microsoft的JavaScript风格
  • ActiveX对象

还提供了一个链接:Introduction to HTML Applications (HTAs)