php - 显示 jquery ajax 执行状态

标签 php cakephp jquery

假设我正在对一些 cakePHP Controller 操作进行 ajax 调用,以从数据库中删除一些数据。但在我删除数据之前(这当然发生在我的 cakePHP Controller 操作中),我想检查请求删除数据的用户是否具有这样做的权限。我想做的是向用户显示执行步骤,例如我有这样的东西:

$.ajax({
    type: 'POST',
    url: '.../some_cakePHP_controller_action',
    beforeSend: function(){
        $("my_loading_div").html("Checking permissions...");
    }
    success: function(){
        // do stuff on success
    }
});

1- 当用户点击删除时,我想向他展示一个正在加载的 div,其中包含一条消息,如 Checking permissions...

2- 如果用户有权删除数据,消息会更改为 Removing data...

现在,正如您在上面看到的,问题是当用户单击“删除”时,他将收到消息Checking permissions....,但我的数据可能已被删除,因为我'我已经在我的 cakePHP 函数中了。因此,用户将收到错误消息。请问我该如何实现这种行为?

在此先感谢您的帮助

最佳答案

为此您需要多次 ajax 调用。步骤大概是这样的,

  1. ajax 调用以检查权限。
  2. 在 php 端检查你是否有删除权限 is_writable功能。
  3. 返回上一步的状态并将其显示为 ajax 响应
  4. 根据步骤3的状态,通过ajax向php发送删除请求
  5. 调用unlink在 php 端。然后通过 file_exists 再次检查文件是否存在
  6. 返回上一步的状态并相应地向用户显示消息

关于php - 显示 jquery ajax 执行状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9743664/

相关文章:

php - 缓存相关数据的模式

javascript - 无法向元素添加类或属性

javascript - 如何滑动切换伪元素?

php - mysql_connect 第二次不起作用

PHP set_include_path 配置

php - CakePHP 中的 JavaScript

php - CakePhp单页获取多表数据

javascript - 来自 InAppBrowser 的返回变量

php - 使用 PHP 检测日历事件重叠冲突

php - php/javascript/html 中哪些区分大小写?