我的逻辑是否正确?使用Mysql的Ajax和/或PHP

时间:2011-12-13 20:56:11

标签: php mysql ajax

我有一个显示项目列表的页面。页面用html,css,php和使用mysql db编码。

在该页面上,用户可以请求将其中一个项目添加到其特殊列表中。

我想在页面中执行此操作,而无需进行完整的页面刷新。因此,用户单击按钮进行添加,项目将添加到其列表中,并且按钮已更改,因此无法再次添加。

我是否使用ajax调用在页面后面运行代码然后刷新div?

或者是否有更好的方法来实现它。

如果用户已关闭js,我更喜欢可能的php选项,但不知道是否可以使用js来完成。

任何帮助表示感谢。

3 个答案:

答案 0 :(得分:2)

如果您想要动态内容(更改页面而不刷新),您将不得不使用Javascript。要做你想要的,你可以通过Ajax调用PHP脚本,用新项目输出div的内容,然后根据该响应更改div。

答案 1 :(得分:0)

大巴是完全正确的。创建一个处理请求的表单,并将表单的操作设置为您要处理请求的PHP脚本。请注意,虽然这可能与您用来处理ajax请求的php脚本相同,但它不一定非必须。

很多时候,当我实现这样的功能时,我会设置PHP将变量作为POST发送(如果JS禁用)并将我的ajax请求作为GET,这样我就可以使用单个PHP页面来处理'相同的'请求。使用AJAX时,我会让脚本回显一个特定的代码然后返回一个ajax响应句柄。

if(val == 'OK') {
 //in event of success, perhaps you want to hide the original form and show a success message
} else {
  //do something like unhide a hidden div to display an error
}

答案 2 :(得分:0)

如果关闭JavaScript,则必须重新加载页面。在你的情况下,jQuery可能非常方便,只需重写你需要重写的元素。服务器发送一个简单的json。使用PHP框架也可能是一个好主意,因为你问的方式似乎(尊重,并且不想冒犯),你没有使用任何框架,并且可能会遇到崩溃使你的脚本容易受到攻击(例如sql注入) )

如果您的访问者未启用JavaScript并且您仍想提供服务,那么您必须重新加载页面。首先检查是否值得做,谁是您的客户/访客,他们使用什么浏览器,...这样的问题可以帮助您设计您的页面/应用程序。