RE: Re: [PHP] exec() Error
| From: | Wei, Alice J. | Date: | Wed, 25 Jun 2008 20:30:34 +0000 |
| Subject: | RE: Re: [PHP] exec() Error | ||
| References: | 1 2 3 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-275960@lists.php.net to get a copy of this message | ||
________________________________________
From: Boyd, Todd M. [tmboyd1@ccis.edu]
Sent: Wednesday, June 25, 2008 4:25 PM
To: Per Jessen; php-general@lists.php.net
Subject: RE: Re: [PHP] exec() Error
> -----Original Message-----
> From: Per Jessen [mailto:per@computer.org]
> Sent: Wednesday, June 25, 2008 2:48 PM
> To: php-general@lists.php.net
> Subject: Re: [PHP] exec() Error
>
> Wei, Alice J. wrote:
>
> > I have got a task from my client asking me to build something
> > that allows the variables in the PHP file passed to another
> > PHP file or a file in a different computer language to
> perform
> > some operations on another remote machine. According to my
> > client, he calls this behind the scenes to avoid users screw
> > up the front end, and I am hoping that I can produce one
> > single script, and have it execute some script without the
> > user pushing any button. Has anyone tried using exec()
> > successfully in PHP to execute files from PHP or other
> > programming languages? For example, C, Python, or Perl.
>
> Yeah, that's no big deal. That's what exec() does.
>
> > I have tried this by putting in
> >
> > exec("http://www.mysite.com/calculate.php");
>
> Well, "http://www.mysite.com/calculate.php" is not an
> executable. Try
> this instead:
>
> exec("php <path>/calculate.php");
I still don't think this is how exec() should be used when executing remote PHP scripts via
HTTP, since the web server is not going to give you the underlying code simply because you're
calling the URL from PHP and not your web browser. User-Agent tags do not a secure connection make.
Perhaps doing a wget and directing it to /dev/null (if you're on *nix) would be appropriate to
invoke a remote script and pass it parameters. Hell, even wget to standard output if you want, and
use that as your "result code." It's basically doing what cURL does, but outside of
the PHP script itself.
Anyway, I digress. My point is that exec("php http://mysite.com/script.php") will fail, since
it will be reading the remote script's OUTPUT, and not the remote script's SOURCE CODE.
I dont' know how come his code works either. I figured that exec() is not going to get me
anywhere when I have it stored remotely.
I am now using cURL instead of using exec(), since it is doing a lot closer to what I initiated.
I am not sure if I should have a new thread for this, but I found that things start to get a little
weird when I tried to do cURL with Perl files inside. The PHP only brings me back Perl code and not
the processed content. Is this something I should not be doing with cURL? It seems to do quite a bit
of powerful processing when I wrote everything in PHP and have it stored remotely.
Alice