Brad Fuller wrote:
> Daniel Brown wrote:
>> This way just lets it do it's own thing, with no output, and PHP
>> won't hang. It'll continue from the CLI after the HTTP session is
>> over.
>>
>> <?
>> exec('php test.php > /dev/null 2>&1 &'); ?>
>>
>>
>> On 5/1/07, Brad Fuller <[EMAIL PROTECTED]> wrote:
>>>
>>>
>>> I found this on PHP.net:
>>>
>>> http://us.php.net/manual/en/function.exec.php
>>>
>>> Note: If you start a program using this function and want to leave
>>> it running in the background, you have to make sure that the output
>>> of that program is redirected to a file or some other output stream
>>> or else PHP will hang until the execution of the program ends.
>>>
>>>
>>> This is what I want... I want to execute another PHP script from the
>>> CLI, pass it a parameter and let it go to town after the HTTP
>>> request closes.
>>>
>>> Can someone please illustrate how I can make this work?
>>>
>>> Thx,
>>>
>>> Brad
>>>
>>> --
>>> PHP General Mailing List (http://www.php.net/) To unsubscribe,
>>> visit: http://www.php.net/unsub.php
>
>
> It seems the script is calling itself even though I'm
> specifying a different script to run...
>
> test2.php
>
> <?php echo "Hello, World!"; ?>
>
>
> test1.php
>
> <?php
> if( !isset($_POST['account_id']) ||
> $_POST['account_id'] == "" ) {
> echo "account_id is required.";
> exit;
> }
>
> // more stuff here...
>
> exec("/usr/bin/php -q /path/to/test2.php", $output); // should run
> test2.php
>
> echo "<pre>";
> print_r($output);
> echo "</pre>";
>
>>
>
>
> http://www.example.com/test1.php
>
> Expected Result:
>
> Array
> (
> [0] => Hello, World!
> )
>
>
> Actual Result:
>
> Array
> (
> [0] => X-Powered-By: PHP/5.2.1
> [1] => Content-type: text/html
> [2] =>
> [3] => account_id is required.
> )
>
> Can anyone explain this and possibly help me find a solution?
>
> Thx,
>
> Brad
P.S. I am posting a form to the test1.php page with a valid account_id etc.;
after re-reading the message I thought someone might think it's printing
that result because nothing is posted.
Update:
I also found a file called "error_log" in the folder where test2.php
resides, full of several of these lines:
[01-May-2007 14:12:52] PHP Warning: Zend Optimizer does not support this
version of PHP - please upgrade to the latest version of Zend Optimizer in
Unknown on line 0
Could that have something to do with why the script is calling on itself
instead of running the specified php script?
I recently had the hosting company rebuild PHP, first they did
--enable-suexec (to run PHP as CGI) and then later rebuilt again to
--enable-pcntl and --enable-sigchild, as I thought I would be needing that
functionality. Did that break the CLI?
Please help, Thx.
Brad
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php