Forum Moderators: coopster

Message Too Old, No Replies

Includes with GET variables no longer working

after upgrade to PHP 5

         

4string

9:38 pm on Jul 20, 2007 (gmt 0)

10+ Year Member



I just upgraded to php 5. My includes requesting files with GET variables cannot be found. I think the problem lies with ampersands being encoded from & to &.

If I access the file in the browser as:
example.php?id=10&w=10&h=10
it works.
But accessing it with:
example.php?id=10&w=10&h=10
doesn't work.

Any ideas?

coopster

10:24 pm on Jul 20, 2007 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



What does your include statement look like?

4string

10:39 pm on Jul 20, 2007 (gmt 0)

10+ Year Member



That might help...

include_once($_SERVER["DOCUMENT_ROOT"]."/example.php?id=10&w=10&h=10");

giving me this error:

include_once() [<a href='function.include'>function.include</a>]: Failed opening '/home/site/public_html/example.php?id=10&amp;w=10&amp;h=10' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php')

4string

12:04 am on Jul 21, 2007 (gmt 0)

10+ Year Member



Well, it seems it's not the ampersand, but I still can't figure it out. Just adding?id=something to the include file name trips an error. It breaks my whole site. Very frustrating.

4string

1:19 am on Jul 21, 2007 (gmt 0)

10+ Year Member



Mystery solved.

include (though it worked for me in PHP 4) doesn't allow get variables unless it's part of an absolute url like:

include('http://www.example.com/script.php?id=10');

Somehow including absolute urls stopped working for me after upgrading though.

jatar_k

1:59 pm on Jul 21, 2007 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



it shouldn't have ever worked actually since that include is a path not a url. You can only append vars to a url

otherwise you would set the vars in the present scope and then include the file so it has access to them