Results 1 to 3 of 3
  1. #1
    Join Date
    Mar 2008
    Posts
    55

    Unanswered: exec() a php file

    I'm trying to call a PHP page to run when called from another page. To do this it seems i have to use the exec() function. The code would go something like
    Code:
    // set pathing
    $file = 'TEXT_small.m4v';
    $localfile = '/user/dac420/incoming/'.$file;
    $remotefolder = '/user/dac420/outgoing/';
    
    // exec the file and pass vars. transfer.php for this example just echo's Hi to the motherboard.
    exec('php transfer.php '.$localfile.' '.$remotefolder.' > '.$file.' &', $output, $result);
    print_r($output);
    print_r($result);
    Running this code and few variations of it give me either empty $result and $output vars or this
    Code:
        [0] => Status: 404
        [1] => Content-type: text/html
        [2] => X-Powered-By: PHP/4.3.9
        [3] => 
        [4] => No input file specified.
    I have Googled "php exec" (and others) but I have come up with few reference. If someone can shed some light on this function or tell me where im wrong in my code i would appreciate it. Thanks.

  2. #2
    Join Date
    Mar 2008
    Posts
    55
    Include/Require will not work. I should have explained better. The page im calling via exec() is transferring 1G file between two servers. If this file is include()'d, the page will hang white until the transfer is complete. Therefor i need to create a separate php process to run in the background. This way once the transfer is started, the user can continue with their browsing without waiting.

    The way to do this is with exec(). I just need to know how i went wrong. I think its pathing. Fu*^ing pathing every time! But maybe someone can help. Thanks.

  3. #3
    Join Date
    Jun 2007
    Location
    London
    Posts
    2,527
    But maybe someone can help.
    Bit of a guess but could you just kick off a Unix process in the background to do whatever it is you're doing? I'm unsure whether you'd need the "nohup" command on the front. You'll want some method of seeing if the job ran fine as well.
    Code:
    system( "long_running_job &" );

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •