单击按钮后从网站执行php文件(apache)

单击按钮后从网站执行php文件(apache),php,apache,button,execute,Php,Apache,Button,Execute,php文件位于web站点目录(/var/www)中,我想从同一目录中的index.html执行它 php文件: <?php exec("sudo -u pi /home/pi/camcv/camcv .. "); ?> 可以通过在命令行中键入php/var/www/script.php从系统中的任何位置运行,它可以正确执行(相机闪烁,打开带有图片的窗口,没有错误)。我需要它是可执行的www数据用户从网站 我知道有很多选择,我尝试了submitforms,

php文件位于web站点目录(
/var/www
)中,我想从同一目录中的
index.html
执行它

php文件:

    <?php
    exec("sudo -u pi /home/pi/camcv/camcv .. ");
    ?>

可以通过在命令行中键入
php/var/www/script.php
从系统中的任何位置运行,它可以正确执行(相机闪烁,打开带有图片的窗口,没有错误)。我需要它是可执行的
www数据
用户从网站

我知道有很多选择,我尝试了
submit
forms,
onClick
操作,发送一个参数(
$\u POST['xy']
),然后在php文件中使用“if”结构,以
XMLHttpRequest
$.AJAX
的形式观看,我尝试加入javascript
jquery.min.js
,并尝试在
sudoers
中添加权限,或通过允许读取/写入/执行更改文件夹/文件的所有权。。。所有这些都没有达到目标

因此,我的问题是:

-有没有人能用防弹的方法来做这件事

-你能告诉我我到底需要在sudoers中添加什么吗

谢谢你的建议

PS:很少有尝试将我重定向到页面
http://(ip)/script.php
,因此按钮至少有一些响应。此外,XMLHttpRequest还负责更改网页上的文本(读取和发布txt文件)


PSS:该功能不需要任何返回信息,我需要使用按钮将页面停留在站点上,可能不需要重新加载。

尝试使用jQuery解决此问题:

<!doctype html><head><meta charset="utf-8"></head><body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
$(function(){
$("#clickme").bind('click', function(){
        $.get( "script.php", function( data ) {
        $( ".result" ).append( data );
        });
    });
});
</script>
<input type="submit" id="clickme" value="TEST">
<div class="result">Result...</div>
</body>
</html>

$(函数(){
$(“#clickme”).bind('click',function(){
$.get(“script.php”,函数(数据){
$(“.result”).append(数据);
});
});
});
后果

如果您的“script.php”有任何响应,您将在div容器中得到它

www-data-ALL=NOPASSWD:ALL??是的,但这将完全公开页面。。但是因为学习的原因,我按你写的那样打开了。。还是什么也没发生。。我刚刚发现,只有当用户是“pi”时,它才会做出反应,但命令“-u pi”部分应该会处理这个问题。感谢快速响应,我尝试了代码,但它似乎不起作用。可能是因为只有用户“pi”才能打开相机窗口。。我将尝试创建错误日志,查看它写了什么。。你知道如果成功的话有什么基本的功能是可以看到的吗?类似mkdir的东西,但对系统的干扰较小。先生,您应该得到一枚奖章:)它工作正常,一切正常。而且一个建议:如果您正在调用一个硬程序(人脸识别),建议您仔细查看该程序和chceck,了解完整的文件路径以及使用外部显示时出现的问题。