Javascript修改mySQL数据/表

标签 javascript mysql security

我有几个涉及 JavaScript 和 MySQL 交互的问题。

我想要实现的基本想法是使用 JavaScript 来允许管理员更改某些元素的内容。这些元素包含文本,通过使用 JavaScript 单击该元素,会出现一个包含旧文本的“弹出”文本区域,并允许管理员修改文本。管理员修改文本后,他可以将其发布到 MySQL 表中修改数据。

据我了解,此操作的基本流程是: javascript -> AJAX 请求 -> 在服务器上运行的脚本(PHP、Perl、ASP.NET 等)-> 数据库

  1. 有人可以给我一个非常基本的演示,告诉我如何执行这样的操作吗?
  2. 这不安全吗?
  3. 这是实现我想要实现的目标的最佳方法吗?

最佳答案

这是为用户提供快速编辑内容的常见方法。 你走在正确的轨道上。使用弹出窗口显示表单,当用户提交表单时发送 AJAX 请求来调用服务器脚本。

例如,如果您使用 jqueryUI,这将变得非常简单:

  • 引用http://jqueryui.com/demos/dialog/#modal-form了解如何使用 jqueryUI 创建弹出表单
  • 用户提交表单后,您需要将其 POST 到接收数据并更新数据库的服务器脚本(就像您通常所做的那样)。让它发送一个SUCCESS/FAIL值,以便客户端知道操作是否成功。
  • 如果更新成功,则关闭弹出窗口;如果更新失败,则显示错误。

Is this unsafe?

这并非不安全。唯一要记住的是,您需要在通过 ajax 调用的服务器脚本(更新记录)中检查用户是否经过身份验证(即在 session 中)。忘记这一点会让任何人调用您的服务器脚本来编辑记录。这是非常明显的,但我发现很多人在涉及 AJAX 请求时都忽略了这一点。如果您正在执行的操作不需要身份验证,那么显然这不是问题。

关于Javascript修改mySQL数据/表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9185898/

相关文章:

mysql - 如何在mysql中将varchar转换为datetime格式

mysql - SQL 多个 NOT LIKE 可能包含 NULL 值

security - 如何防止外部用户查看文档文件

javascript - 在 Raphael.js 中拖动和旋转一组路径

javascript - 将字符串转换为标题大小写,但文章除外(a、an、the..etc)

javascript - Jquery ajax Post 不起作用?

javascript - 调用同一个 JavaScript 函数 timepicker 两次

mysql - `?` 运算符只能在返回 `Result` 或 `Option` (或实现 `std::ops::Try` 的其他类型)的函数中使用

java - 如何在 api url 中传递用户名和密码

asp.net - 阻止下载特定文件