Forum Moderators: open
One aspect of the page is a login box. Username, password, and submit button. I have access to four computers for testing purposes. The login box is showing up perfectly on three of them - but it's completely gone on the fourth machine.
This computer is on the same network as the others, same OS, same ISP. We've cleared the cache, emptied the history, deleted cookies, refreshed time and again - zilch. The login box simply refuses to show up. The strange part is, it doesn't show up in any browser. We've tried it in IE, Mozilla, and FireBird. That one block of HTML just will not show up on that computer. Even though it shows up fine on the other three computers. Even though other changes to the page show up. Even though every indication is that it should work.
How do you deal with a situation like this? I'm no novice; that block of HTML should be showing in anything from V4 browsers up! Has anyone else ever dealt with issues such as this? If anyone has a solution, let me know quick! The men in white coats are going to have to come for me if I don't figure this out soon!
And yet I still can't help thinking the explantion must be simple...
Jennifer
We had a similar problem with an office machine login for squirrelmail. We did everything you described except load another browser. I even double-checked with Littleman about the possibility of this machine having some sort of freak IP number (if anybody knows about IP numbers, it's LM). No luck. This is not your problem, since you say you've tried it on multiple browsers, but our culprit was the restricted browsing setting on IE.
I've never seen anything like this; it's almost enough to send cold chills down the spine!
Keep the ideas coming, this is very strange and I want to know the answer! ;o)
Form code as follows:
<form method="post" action="index.php">
<input type="hidden" name="admin" value="delproperties">
<input type="hidden" name="typeofbookingold" value="1">
<input type="hidden" name="pid" value="57">
<td><input type="submit" class='tdmicseach' value="[ Delete ]"></td>
</form>
<form method="post" action="index.php">
object and fieldset are not used on my page so it's not that.
<input type="hidden" name="admin" value="detaliesproperties">
<input type="hidden" name="pid" value="57">
<td><input type="submit" class='tdmicseach' value="[ Cancel ]"></td></tr></table>
</form>
Try making the code even simpler - no attributes in the form, no labels, etc. Just pure form tags and an input. Does that work?
Does the faulty machine have a different amount of memory? Is the hard drive nearly full? Is the Windows cache as large as the other machines?
Does this happen if the page is uploaded? Or are you testing from the files on your computer?
Try other browsers too - Opera, Netscape 4, etc.
As a last resort, I'd consider reinstalling Windows.
Have you switched jacks on the network? Plugged it in where another one works properly?
How about running other site on that fourth mach to see if there are problems with those sites too.
If you load the stripped-down login-box-only page in a browser on your "mystery machine" and then do a View->Page source in the browser, what do you see? Is the source code "all there"?
Have you checked the mystery machine out for any adware that might be altering what html gets displayed? (bit of a shot in the dark but worth a go!)
Hester, I tried most of your ideas except reinstalling Windows (shudder). Actually that machine is the newest and best one we have; double the memory of anything else here and much larger hard drive.
Now here's something interesting. The login box has been being called by SSI. When I took the code from the SSI and placed it directly on the page, the login box shows fine. But Server Side Includes shouldn't have a thing to do with the browser, should they? I mean, the browser never knows they exist. Also, other SSI's on the same page were functioning fine.
Thanks for the help everyone. I'll be trying most of the ideas as soon as I can. In the meantime, if anyone else has any ideas, I'm open for suggestions!
The main thing is to try to figure out WHY it's happening. It doesn't really matter if it doesn't work for us, but I want to make sure my visitors are getting the whole page!
Thanks again,
Matthew
If you load the stripped-down login-box-only page in a browser on your "mystery machine" and then do a View->Page source in the browser, what do you see? Is the source code "all there"?Nope, absolutely nothing but the doctype, <html>, <head>, <title>, <body> and corresponding end tags.
So this proves that the problem is one of page loading, and not one of page display. The source code for the form is not making it into the browser.
Therefore, the advice above about checking for filters such as NIS is sound. Also, another obvious question is *how* is that form instantiated in the page? Is the form code actually coded in-line, or do you have an SSI or scripted INCLUDE to bring it in?
Jim
Therefore, the advice above about checking for filters such as NIS is sound. Also, another obvious question is *how* is that form instantiated in the page? Is the form code actually coded in-line, or do you have an SSI or scripted INCLUDE to bring it in?
Thanks for the advice, jdMorgan. I checked for filters and can't find any. Actually I'm the only one who's ever installed anything on that computer and there's no software that would be blocking anything (except NAV, which I disabled with no effect).
The form code is being called by SSI. And, if I code the form inline, it DOES show on the page. However, my understanding of SSI's is that the browser never knows they're there because they're executed on the server. But now it's beginning to look as though browsers may have some control over whether or not to allow SSI or not. Does anyone have any light to shed on that question?
But then, another SSI is running on the same page with no problem.
Thanks,
Matthew
That is correct, the server inserts the SSI code before the page is served, so the browser is completely unaware that part of the page was included -- as long as the include is working properly under all circumstances.
I was more concerned about client-side-script problems, but it is still worth checking that the SSI include is coded correctly and that it is unconditional and *not* browser-dependent or dependent on any request-related factors. For example, a SSI file access restriction based on user-agent or IP address could cause this problem if there was an error in the coding.
Jim
> the browser never knows [that SSI includes are] there because they're executed on the serverThat is correct, the server inserts the SSI code before the page is served
I'm not so sure. Browsers like Mozilla will try to display the page as soon as they get something. I could be wrong here but I'm sure I've seen pages appear with the main parts first then an included section later. After all it's a second file that has to be fetched.
I was more concerned about client-side-script problems, but it is still worth checking that the SSI include is coded correctly and that it is unconditional and *not* browser-dependent or dependent on any request-related factors. For example, a SSI file access restriction based on user-agent or IP address could cause this problem if there was an error in the coding.
The login area is a form generated by a .cgi script. I used the SSI include to call the form on the page. The script is executed on the server and the results passed on to the browser as a normal HTML form. It's not conditional on any "environmental" factors such as browser, operating system, etc. So far, it's not even dependent on whether the user has already logged in or not.
I set up all four of the computers in question and they're all the same. It's only the one that's having this problem. And it's happening with all browsers I've tried.
I am... The server does not start its response until it has finished creating the response. But this can go wrong if there is a problem on the server, and the result is usually garbled or omitted sections on the "completed" page, which is why I mentioned some possible server-side problems. However, there would have to be some "dependency" on the server side to cause three machines to work and one to fail to display the form.
Short of putting a protocol analyzer on the line between the two machines, about the only thing I can think of now is to hard-code the form temporarily, and finish isolating the problem to either the server or client side.
Jim
The problem with your code is that it is not valid (I assume you haven't run it through W3C's validator). The tags in red should be removed:
<form method="post" action="index.php">
<input type="hidden" name="admin" value="delproperties">
<input type="hidden" name="typeofbookingold" value="1">
<input type="hidden" name="pid" value="57">
<td><input type="submit" class='tdmicseach' value="[ Delete ]"></td>
</form>
<form method="post" action="index.php">object and fieldset are not used on my page so it's not that.
<input type="hidden" name="admin" value="detaliesproperties">
<input type="hidden" name="pid" value="57">
<td><input type="submit" class='tdmicseach' value="[ Cancel ]"></td></tr></table>
</form>
That's Your newest machine, so maybe You're going the wrong way... Maybe something isn't installed on that one and IS on the others... Language? A plugin? A Windows update?
You didn't even say weather it is a Windows or Unix issue, did You?... Windows is more mysterious than the secrets of the ancients...
Or browser security setup is diffrent? (I think that was mentioned here before, but not sure...)
Since You were open for suggestions - hear the words of a newbie.