Greg Donald said:
> On Sun, 7 Jul 2002, Miguel Cruz wrote:
>
>>> <?
>>> if(ini_set("register_globals", "0"))
>>>   echo "ini_set success";
>>> else
>>>   echo "ini_set failed";
>>> ?>
>>
>>Please don't say "this code doesn't work." Say why you think it didn't
>> work, whether that's because you received an error message, or a
>> specific
>
> Uhh.. I don't have any thoughts as to why it doesn't work, that's why I
> posted.

Even if you don't know _why_ it didn't work, you could at least state what
you _expected_ to see and what you _actually_ saw.

> The function itself appears broken, my code is a test to that
> notion.  If you can't be helpful then feel free to shutup..

It would be helpful on your part if you had stated your problem clearly.

>>expected outcome was not realized, or whatever. Otherwise it doesn't
>> really tell us anything. Obviously it doesn't work or you wouldn't be
>> posting it.

Absolutely.

> Yes, the obvious is always pretty easy to restate.  If you need more
> explanation than the code itself I don't knwo what to tell you.

Again, what you expected to happen, and what actually happened are usually
a good starting points.

>>> At http://php.net/ini_set it states the following setting is
>>> possible:
>>>
>>> register_globals "0" PHP_INI_ALL
>>>
>>> Translated, PHP_INI_ALL means: Entry can be set anywhere

I'm not sure about this, but I don't think it was possible in previous
versions PHP.

>>> So does anyone know why my code doesn't work then?  ini_set() seems
>>> broken.  Can anyone confirm or deny?
>>
>>I believe the issue here is that by the time your PHP code starts
>> executing and gets to the ini_set call, it's too late to register the

> "gets to the ini_set call" - what do you mean?  The code I posted is all
>  there is to the entire script.  Where else would I use the ini_set()
> function except at the very beginning of a script?

Because PHP registers the globals etc (if enabled) then starts working on
your code.

Anyway, regardless of whether or not it is possible to set
register_globals at run-time, your code would be better re-written as:

<?
 if (ini_set("register_globals", "0") !== FALSE)
   echo "ini_set success";
 else
   echo "ini_set failed";
?>

Because, if you RTFM, ini_set() will return the existing value of whatever
you're setting. Thus if register_globals was already disabled then your
original code would return "ini_set failed" everytime.

-- 
Jason Wong -> Gremlins Associates -> www.gremlins.com.hk



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to