Why is Internet Explorer autocomplete disabled for all html forms on my website?

When Internet Explorer Autocomplete is enabled for forms, the entries for each field in the HTML form must be cached and displayed as a prompt when the user starts entering content into the form a second time.

On my site, the autocomplete feature never shows up for any forms that exist on this site. Still, other sites save and deliver this content without issue.

My site uses PHP as its scripting language and all content is delivered over SSL.

+1


source to share


4 answers


I determined that the problem was related to PHP Cache-Headers being sent when the start_session () command is issued and SSL is running on the site.

I was able to get hold of a man on the IE security team at Microsoft, and they confirmed that this is how IE is supposed to work. Here is a direct quote from the letter.

"This is considered a feature of the autocomplete system. Considerable code has been written to make it behave this way."

When session_start (); the default is the HTTP headers sent by php, this is a no cache header. Here's another quote from Microsoft's suggestion.

If the protected page says "Don't cache me", it indicates that the data is sensitive and hence the autocomplete data itself is probably sensitive. This is, admittedly, a simple heuristic. Personally, I think it's a little silly, but it was forever. It is probably a good suggestion to support "autocomplete = on" to override the default heuristic.



To re-enable the autocomplete feature, I had to execute this command in php before the start_session () command:

session_cache_limiter ('private, must-revalidate');

      

I'm sure there are other ways to manipulate the header cache items to make autocomplete work as well.

Here is a link to 3 example forms I made so you can test with IE.

+9


source


dgavey - how are your forms submitted? Microsoft isn't clear on this subtle issue, but;

YOU HAVE TO SUBMIT YOUR FORMS WITH A SUBMIT BUTTON

      

to make it work!



Unless, of course, you are like every site that loves to create their own forms very much, and therefore you need this hack to get IE to behave .

http://webbugtrack.blogspot.com/2007/08/bug-137-ie-autocomplete-hardly-ever.html

which points out the KB article here where MS explains this really strange behavior.

+3


source


Do you have autocomplete="off"

both an attribute on your form elements?

+1


source


Autocomplete is not used in IE when using SSL (which is mentioned in your tags, but not in your question).

+1


source







All Articles