Here, johanafm, we will have a difference in opinion.
[INDENT]First, anything that is done by IE as a browser that is not part of the W3C standard...and it works, proves that there is no true (enforced) standard. I agree there are hundreds of coding examples that show this. However, if they (IE) are still used by the majority of visitors, then obviously W3C has only recommendations, not requirements. If you can ignore it, it is not a standard, even if it is labeled as such.
Second, XML has no standard either, or Firefox does have a different parser with it's own set of guidelines. Proof: I have three different sets of XML feeds for different types of content on the same site. Firefox displayed them all from the beginning with no errors at all with the standard display and latest content. IE, on the other hand, returned the a parser error because the feed did no contain the <webMaster>...</webMaster> XML tag...again inherited code. Notice that Firefox displayed the feed with no errors even though IE displayed an error. At some point, they diverge. If this tag isn't really a standard, IE thinks it is as this is what I added to the feed to get IE to accept it. One of these two browsers has its own "standards" in mind when the XML parser is run. Again, W3C may call it a standard, but it is still browser-dependent for implementation.[/INDENT]
However, I am still interested in your comments.
My "mission" is to insure that the fix is permanent, not just for a little while. This is why I was asking if any one else KNEW what happened, say from past experience, or has seen this session behavior and this duplicate tag set (even though we both know it is not valid coding). I do realize it could change with every single browser patch/version.
I suspect this is what caused the problem (that it stopped working rather than invalid code). Each browser seemed to be updated in Nov 2009. I can also understand why they would stop supporting it eventually, so that users will start using valid code, but my boss still wants to know why...and why it was fine before. He usually does want the details.
Personally, I would be happy not explaining to my boss any of the technical details. But he will, and has, asked me what went wrong..again, suddenly to cause our problem. Sometimes this is a good quality, sometimes, not as productive. Testing of the new code is already in progress, but he will want to make sure it does not happen again, as do I. Hence, I am trying to find out what the cause of the problem is, and any ties to this particular code block. Remember that I mentioned that this issue causes visitors to be randomly logged out with no predictable pattern.
But running a simplified test with the nested tags would be good if the plan was to keep it this way. Obviously, this will not be the plan to keep the nested tags at all. 🙂 By "At one point in time", johanafm, you would have to mean as late as Nov 2009. And they would all have had to change at the same time, since the problem started for all browsers about the same time! I'm not saying that is impossible, just not likely. IE 7.0.X browser have the same issue as the newer 8.0.6 version. Firefox 3.5.5 now shows the same issue as 3.5.6...when it happens at all. We have tested this on 6 different computers all running browsers within the range.
For this page in question, the user is logged in for the template, but not for the content block inside the template. This is where the session info seems to have dropped. If it is truly one request, why would the session variables be cleared out for the content block? One thing that might help to know, the website is contructed in PHP in building blocks with only one echo statement to display the page (in a variable) at the very end, as all of our pages are. Here is the order:
Template Login -- works fine on all pages
Dynamic User Content block --works, but drops login status at random
However, it is processed into the PHP variable the opposite order
Dynamic User Content block --works, but drops login
Template Login --still shows user is logged and ready like other users
If the (one ?) request was indeed garbage, how did it manage to print the page correctly at all? Template is fine, and logged in. Content block displays correctly, but sometimes shows the correct new visitor display instead of the current user display. And the main reason I posted this in this section of the Forum was that the session drops are usually traced to multiple browser tabs or multiple windows being opened (for other sites, not mine)..."Client-Side Technologies". Barring user error, it is also only noticed on this one content page...that had the duplicate HTML/HEAD/BODY tags. Testing it for a few hours or a day does not say for certain that the issue would be fully resolved.