用Javascript中的button执行PHP脚本

这里是分解:我的问题是两个折叠,我想用一个button来调用我的PHP脚本,这反过来又调用我的小内部testing服务器上运行我的nodejs脚本(这是所有完成本地现在)。

这是我的HTML +脚本拉:

<input type="submit" value="Save Sketch" id= "run_system"> </body> <script> $('#run_system').on('click', function(){ $.ajax({ url : 'exec.php', type : "GET" }).done(function(data){ console.log(data); }); }); </script> 

这里是我的PHP脚本:

  <?php exec('node screenshot.js //place holder url that gets dumped into js file// "); ?> 

所以我的问题是,以前调用这个PHP是不是执行这个。 我所search的所有东西都说这个exec(“”)应该运行我的nodejs脚本。 我错过了什么?

我猜的types:GET是不正确的,尝试没有这一行,把POST在那里,似乎没有任何工作

哦另外一个,所以当我运行上述所有它所做的是打印什么是在PHP文件中的控制台,并没有实际运行脚本

其中一个问题是exec正在执行命令,但是你没有捕获/返回该命令的输出。 您可以在exec之前添加echoprint ,以将输出返回到AJAX请求。

您可能还想绑定到submit事件来处理表单提交以及submitbutton点击,但这将绑定到表单本身。

最后,我build议你考虑通过在你的screenshots.js节点脚本(或者包装它的东西)中添加一个简单的HTTP服务器来处理这个exec ,并处理这个AJAX请求。 可能需要添加Access-Control-Allow-Origin豁免。