You've been around the ranch long enough to know that we have a policy on screen names here at JavaRanch. It must consist of a first name and a last name. Since yours does not conform with it, please take a moment to change it, which you can do right here.
As to your question, if there's an error about xmlHttp being undefined, it's not surprising that statechanged doesn't change, now is it? Which path through the GetXmlHttpObject method is the code taking? Does it work in other browsers?