如何使用 Ajax 从 JQuery 在服务器上执行守护进程(带有 PHP5 的 Linux 服务器)

如何使用 Ajax 从 JQuery 在服务器上执行守护进程(带有 PHP5 的 Linux 服务器)

我正在尝试使用以下 JQuery 代码让 Ajax 在服务器上启动守护进程。警报弹出,但守护进程未启动。如何正确格式化 $.ajax({data: {},; 部分以使此代码正常工作。我花了几个小时寻找与此直接相关的示例,但只找到了范围广泛且错综复杂的一堆通常很臭的东西:) 谢谢。

更新

我仍然无法启动守护进程。我按照建议在服务器上添加了一个名为“executedp.php”的 php 文件。它包含一个我希望可以完成任务的脚本。但是,它并没有完成。

有谁看到我遗漏了什么吗?

以下是 executedp.php 的 php 代码:

<?php $startDaemon = exec('sh ~/.devilspie/ruleset.sh $x; done'); ?>

以下是更新后的 JQuery 代码:

        if(found) {
        var xhr = $.ajax({ 
        url: 'executedg.php',
        success: alert("It has begun!")  
        }); 

        switch($.tableCount) {

        case ($.tableCount = 1):
        window.open('table1.html');
        xhr;
        break;          

        case ($.tableCount = 2):
        window.open('table1.html');
        window.open('table2.html');
        xhr;
        break;

        case ($.tableCount = 3):
        window.open('table1.html');
        window.open('table2.html');
        window.open('table3.html');
        xhr;
        break;

        case ($.tableCount = 4):
        window.open('table1.html');
        window.open('table2.html');
        window.open('table3.html');
        window.open('table4.html');
        xhr;
        break;
        }
        }

答案1

当您调用 XmlHttpRequest (xhr) 时,您必须指定要在远程服务器上执行的 URL/URI。您必须在此 URI 中包含的脚本中启动守护程序。

除了客户端编码(Jquery)之外,您还需要一些服务器端脚本。

已编辑:我认为你搞乱了旧式的 XmlHttpRequest 和 $.ajax。你的代码只在第一次调用时发出 ajax 请求,当你定义时间轴。当您引用时间轴再次对象,在里面转变命令,ajax 调用未被触发。

相关内容