FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » Logic behind this?
Show: Today's Messages :: Polls :: Message Navigator
Return to the default flat view Create a new topic Submit Reply
Re: Logic behind this? [message #171522 is a reply to message #171490] Fri, 07 January 2011 14:17 Go to previous messageGo to previous message
Modafanil is currently offline  Modafanil
Messages: 2
Registered: January 2011
Karma:
Junior Member
"Modafanil" <invalid(at)email(dot)com> wrote in message
news:EI2dnfk9sY4pPrjQnZ2dnUVZ_sSdnZ2d(at)westnet(dot)com(dot)au...
> I tried to include one PHP file from within another one that is running on
> a webserver:
>
> require_once('test.php?message=this');
>
> Without the query string the inclusion works fine. Add the query string,
> however, and the server refuses with 'can't find a matching file or
> directory'.
>
> Wouldn't PHP be a more consistent language if it were possible to pass
> query strings during file inclusion, and then be able to access the
> parameters as maybe $_SERVER['QUERY_STRING'] or $_GET['message'] within
> the included file?
>
> I'd be interested to hear from anyone that can rationalise the current
> file inclusion functions' behavior.
>
> M.
>
>
>

Okay, I've had a good look at the PHP manual as suggested, and my needs
appear less complex than originally thought. It seems I can customise the
behavior of local included scripts, and pass them parameters, simply by
setting some variable values. Variables that are in scope within the parent
script at the point of child inclusion, are also visible in the outer-most
division of scope within the included PHP script. I set $message = 'this'
and then include the sub-script, and can then read $message anywhere outside
of functions in the included file.

That then solves the question of why PHP doesn't support passing query
strings to files included from a local filesystem. There's simply no need.

Including either local or remote PHP script files with a HTTP request looks
interesting. It appears that any query string pairs that you append to the
inclusion URI, become available as local variables within the included
script. That makes sense, as the $_GET and $_SERVER superglobals are then
preserved, and not clobbered by any sub-script inclusion.

I'm a little confused about how inclusion of remotely located PHP scripts
works, though. I can't seem to grasp which machine the script runs on? I
could do with a few pointers here, as I couldn't seem to follow the manual's
explaination.

M.
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: the changeover to mysqli
Next Topic: [urgent] need solution of Questions, in context of PHP5
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Sat Nov 23 14:47:36 GMT 2024

Total time taken to generate the page: 0.05259 seconds