Re: Completely stumped (still) [message #185046 is a reply to message #185042] |
Tue, 25 February 2014 03:00 |
Richard Yates
Messages: 86 Registered: September 2013
Karma:
|
Member |
|
|
On Mon, 24 Feb 2014 20:59:47 -0500, Jerry Stuckle
<jstucklex(at)attglobal(dot)net> wrote:
>> I inserted var_dump successively at each stage in the script to see
>> where it changes from the (correct) array to a (incorrect) string. I
>> narrowed it down to ONE statement, but cannot see how that could
>> possibly change the variable. Here's the section with var_dump, then
>> the one statement, and then the var_dump repeated exactly.
>>
>> var_dump($_SESSION['to']);
>> $to=$_SESSION['to'][$ct]['email'];
>> var_dump($_SESSION['to']);
>>
>> The output of the two var_dumps is:
>>
>> The first:
>> array(1) { [0]=> array(3)
>> { ["fname"]=> string(4) "Dick"
>> ["lname"]=> string(5) "Yates"
>> ["email"]=> string(23) "dyates(at)salemharvest(dot)org" }
>> }
>>
>> The second:
>> string(23) "dyates(at)salemharvest(dot)org"
>>
>> If I comment out the second line (that sets $to), the second var_dump
>> comes out correct. Am I losing my mind?
>>
>
> The failing server has register_globals enabled.
>
> This value changed to default to OFF in PHP 4.2, has been deprecated in
> PHP 5.3, and removed in PHP 5.4. If your hosting company won't disable
> it, find another hosting company.
>
> It sounded like a good idea when it was first implemented many years
> ago, but has caused more problems than it has solved. Therefore it has
> been removed from current releases.
Thank you, Jerry. You are correct - I checked phpinfo() and found
register_globals enabled. I don't have a choice about the server,
unfortunately. FYI it is at networksolutions.com. Changing the name of
the variable $to has fixed the problem.
Richard Yates
|
|
|