环境为在linux下
javascript中的代码$('#send').click(function() {
   $.get('send.php', {
   });
});send 是我一个button的ID,需要点击这个button调用send.php。
send.php中的代码
<?php
$send = $_GET['send'];
if (isset($send)) {
        $r = exec("./copy");
        echo $r;
} copy是一个简单的C文件,已经在linux下gcc -o出来测试过了,肯定没问题的
但是我点击button无法触发copy,求原因。

解决方案 »

  1.   

     $_GET['send']; 你并没有设置send参数
      

  2.   

    这样子可以么?
    $('#send').click(function() {
    send = $('#mes').val();
    $.get('send22.php', {
      send : send
    }, function(data) {
           });});
      

  3.   

    $('#send').click(function() {
    send = $('#mes').val();
    $.get('send22.php', {
    send : 'send'
    }, function(data) {
    });});
      

  4.   

    一是copy的路径,最好用绝对路径
    二是权限, chmod a+x ./copy  给所有人可执行权限
      

  5.   

    没注意到send = $('#mes').val();,你那样可以。
      

  6.   


    那个copy其实只是名字叫copy罢了,实际是print一句话,没涉及到路径,按照你说的权限也设置好了,但是就是没执行。
      

  7.   

    用firebug来测试下,我这边没问题send.php中的代码 
    <?php
    $send = $_GET['send'];
    if (isset($send)) {
       echo 3333;exit;   //测试下,有没3333输出,有,说明到这里了,再注释掉运行,要是有问题就是后面的问题
      $r = exec("./copy");
      echo $r;
    }  
      

  8.   

    print一句话? 好吧,你怎么能知道有没有触发?
    http://www.php.net/manual/zh/function.exec.php
    <?php
    // 直接在浏览器下访问send.php
    $r = exec('./copy', $output, $status);
    var_dump($r);
    var_dump($status);
    echo "output:\n";
    var_dump($output);
    ?>
      

  9.   

    执行文件的完整绝对路径。并赋予www-data用户应用的权限