Hi Colin! On Fri, 20 Apr 2001, Colin Viebrock wrote: > > > Specifically in my case, HTTP_ENV_VARS['USER'] is now being set. It > took me a while to figure out why my scripts, which use $USER as a session > variable, were getting messed up. > > > > > That is because PHP inherits the environment from Apache, which in turn > > inherits it from the shell in which you started the server. Use something > like > > 'env -i apachectl start' when starting apache or replace the line > > HTTPD=/path/to/httpd with HTTPD="env -i /path/to/httpd" in apachectl, if > using > > it. > > > > that way you'll get a clean environment. If you need specific variables to > be > > set (like those for Oracle) use Apache SetEnv directive. > > Yeah, I figured as much. I just wondered why PHP seemed to pickup > $HTTP_ENV_VARS['USER'] now, when it didn't before (I don't think). > > Anyway, I just changed my php.ini from: > variables_order = "EGPCS" > to > variables_order = "GPCS" > ::wink x 2:: well, hmm, it may be a bug after all, cause theoretically the USER var from environ should be overwritten by a later var with the same name; A code snippet to reproduce that behaviour would be interesting to see. > > > Finally, if register_globals is off, is $GLOBALS useable? I have some > functions that manipulate variables in the global scope. > > yes it is, AFAIK. > > in fact, you will find it handy to have a wrapper function/class over all > these HTTP_*_VARS > > arrays to validate stuff ;) > > I can't face wading through 4 megs of code to switch to using HTTP_POST_VARS > all the time. :) well, decide how is nicer to write: A) $foo = isset ($foo) ? $foo : null; B) $PV =& $HTTP_POST_VARS; $foo = isset($PV['foo']) ? $PV['foo'] : null; > > What kind of a wrapper function/class are you suggesting? C) [jPHP programmer version ;) ] $foo = $HttpRequest->getAttribute('foo'); D) [lazy typing Joe version] $foo = $req->p('foo'); I am currently using 3 classes implementing (sorta :) the Servlet API in PHP, namely HttpScriplet{Request,Response} and HttpSession, in a templating mechanism based on the model proposed by J2EE (an somehow addapted to PHP) and I really felt it helps a lot to alleviate the validation burden, avoid messy code and generally write faster. Some while back, I proposed to Sascha to have a Session object to expose some friendly methods, and also the (in)famous Request/Response objects like in ASP, JSP or Zope, but I guess nobody likes objects that much at the C level. A legitimate answer would be to implement them at PHP level, true, and I do plan to contribute this to PEAR, if anybody is interested. Happy coding, and Colin, don't forget 'register_globals on' is *evil* ;)) YMMV ciao -- teodor -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]