Dan wrote: > I've noticed sometimes with ZAP users submit multiple copies of a > post. It seems to happen when one hits the back button or a reload > button. I'm wondering > > 1) If this ever happens in Fox, and if not, what Fox does to prevent this. > 2) Why it's happening in the first place and how to fix it.
I think what you're seeing is a consequence of the fact that PmWiki disables browser caching. Here's the sequence of events, which can happen with any PmWiki form, with one exception described below: 1) user loads page with form on it 2) user submits form with POST data 3) user navigates to another page 4) user hits the back button to see the previous page again At this point, the browser will display a warning that the page has "expired from cache" and that asking whether the user wants to "resubmit POST data," baffling many users, and giving only the options Yes or Cancel, neither of which does what the user wanted, which was to see what was on the page *without* resubmitting the data. If the user chooses Cancel, s/he sees that the desired result was not achieved, and so hits Back again and chooses Yes this time, resubmitting the form. It's not just a newbie problem, either: I often use the Save and Edit option when editing pages and so get multiple copies of the edit form in my browser history, each with different POST data associated with it. When navigating back to an edit form, I have to remember to pull down the menu and select the first one, which had no POST data. This is counterintuitive, since one would expect the first one to have the original, unmodified data in it, and only the most recent copy of the page to have the most recent data. And indeed, if caching is allowed, that is exactly what those cached pages contain. But with caching disabled, the earliest page in the list loads the current data! It takes a little getting used to. Two solutions I can think of: one is to enable IMScaching so that the browser doesn't have to reload the page in order to display it. I haven't actually tried it myself, but it's worth a try. The other solution is to refresh the page so that the POST data is not associated with it in the browser history; PmWiki does this when you click Save instead of Save and Edit (the exception I alluded to above). Of course there's also the possibility that some of your users just double-click everything out of habit, including form buttons. I have some of those, and if they are a representative sample of the Internet-using public, there must be millions of them out there. The easiest solution to that problem is a simple javascript that disables buttons the moment they're clicked. Maybe I'll add that to the FormExtensions recipe. Hope this was helpful and not too pedantic. --Ben _______________________________________________ pmwiki-devel mailing list [email protected] http://www.pmichaud.com/mailman/listinfo/pmwiki-devel
