【发布时间】:2013-11-18 12:05:42
【问题描述】:
我正在尝试使用 php 调用 shell 脚本。
这里我有一个 ajax 代码,它获取下拉值并将值发送到另一个 php 页面(deleteslide.php)。
deleteslide.php 从此页面获取值,并使用从主页获取的值的参数调用delete-slide.sh 脚本。
但是当我运行代码时它并没有调用脚本...
如何解决这个问题
这是我所做的:
主页(index.php)
AJAX 代码:
$("#deleteslide").click(function()
{
var prjid=document.getElementById("project-list").value;
var unitid=document.getElementById("unit-list").value;
var slidid=document.getElementById("slide-list").value;
var d ='deleteslide.php?projectId='+prjid+'&unitNo='+unitid+'&slideNo='+slidid;
$.ajax({
url:d,
success:function(output)
{
alert(output);
}
});
});
deleteslide.php 代码:
<?php
$prtId =$_GET["projectId"];
$utNo=$_GET["unitNo"];
$sdeNo=$_GET["slideNo"];
$c='/var/www/createslides/gen-json-data/delete-slide.sh '.$prtId.' '.$utNo.' '.$sdeNo;
//print("$c");
$output=shell_exec($c );
print("$output");
?>
这里deleteslide.php正在调用delete-slide.sh脚本,但是脚本没有运行......
可能是什么问题??
我该如何解决这个问题??
【问题讨论】:
-
权限设置是否正确?如果您手动运行脚本,它会起作用吗? Apache(或您正在使用的任何东西)用户是否有权运行脚本?
-
@Spokey 是的,如果我使用参数手动运行脚本,它运行正常。
标签: javascript php jquery ajax shell