|
Posted by Jerim on 08/15/07 14:24
On Aug 15, 9:00 am, Rik <luiheidsgoe...@hotmail.com> wrote:
> On Wed, 15 Aug 2007 15:51:19 +0200, Jerim <wyo...@gmail.com> wrote:
> > On Aug 15, 8:22 am, Rik <luiheidsgoe...@hotmail.com> wrote:
> >> On Wed, 15 Aug 2007 15:17:47 +0200, Jerim <wyo...@gmail.com> wrote:
> >> > I have a PHP script which simply calls another PHP script using
> >> > include(). Let's call them website.php and website_include.php, with
> >> > website.php simply including website_include.php. I can pass the
> >> > variable to website.php fine. Using an echo command, I can see that it
> >> > has the complete phrase such as "Permission Denied." When I call the
> >> > website_include.php, which is the page that actually does all the
> >> > work, the variable has changed to just "Permission." This happens with
> >> > any phrase I send. I am using the following syntax to call
> >> > website_include.php:
>
> >> > include("http://www.domain.com/website_include.php?variable=$phrase)
>
> >> Really try to use the local filesystem if you can, not a roundabout by
> >> HTTP. It's unneccessary and cumbersome in most cases.
>
> >> Your problem is in this case you should have urlencoded() the $phrase,
> >> spaces are _not_ valid in the query string of an url.
>
> >> Much easier would be:
>
> >> website.php
> >> <?php
> >> $phrase = 'Test this.';
> >> include('./website_include.php');
> >> ?>
>
> >> website_include.php
> >> <?php
> >> echo $phrase;
> >> ?>
> >> --
> >> Rik Wasmus
>
> Please don't quote signatures.
>
> > I appreciate the help, but that didn't work.
>
> What have you tried, using the local filesystem or urlencoding your GET
> variable?
>
> > The variable that
> > website.php is sending isn't hard coded.
>
> Which is irrelevant. If the variable exists in website.php be it static or
> dynamic, it will exist in website_include.php if you include it using the
> filesystem.
>
> > So name.php passes the persons name onto website.php.
> > website.php catches the variable using a $_GET statement. Then it
> > calls website_include.php.
>
> Still using http or indeed the filesystem now?
>
> > The full variable name between website.php
> > and website_include.php is getting lost.
>
> Which I told you was because in HTTP you have to (raw)urlencode() the
> values in the query string.
After playing around with it a bit, here is what you were trying to
say:
On website.php catch the variable using
$variable=rawurlencode($_GET['variable']);
Then when you call the include, pass the variable: include("http://
www.website.com/directory/website_include.php?variable=$variable");
[Back to original message]
|