HighDots Forums  

no history

alt.html alt.html


Discuss no history in the alt.html forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Christian Schmidt
 
Posts: n/a

Default no history - 03-02-2004 , 08:04 AM






Hello,

ist it possible to mark a HTML-page not to be pushed into the browsers
history list (so that you can't go back i.e. via the Browsers Back-Button)?
May be there are some <META>-Tags for doing that?? Or some
Javascript-Statements??

The background is that I implemented a little Perl script for editing a
(very ) simple database. And I want to prevent that the user goes back
and recalls pages with earlier entries he made...

Is that possible via HTML ?

Thanks in advance
Chriastian


Reply With Quote
  #2  
Old   
Chris
 
Posts: n/a

Default Re: no history - 03-02-2004 , 08:44 AM






I'm not an expert but I think you could control the page with cookies and
have the cookie expire once the user had left the page.

Chris.


"Christian Schmidt" <cschmidt (AT) rostock (DOT) zgdv.de> wrote

Quote:
Hello,

ist it possible to mark a HTML-page not to be pushed into the browsers
history list (so that you can't go back i.e. via the Browsers
Back-Button)?
May be there are some <META>-Tags for doing that?? Or some
Javascript-Statements??

The background is that I implemented a little Perl script for editing a
(very ) simple database. And I want to prevent that the user goes back
and recalls pages with earlier entries he made...

Is that possible via HTML ?

Thanks in advance
Chriastian




Reply With Quote
  #3  
Old   
Kris
 
Posts: n/a

Default Re: no history - 03-02-2004 , 09:02 AM



In article <4044865E.3040403 (AT) rostock (DOT) zgdv.de>,
Christian Schmidt <cschmidt (AT) rostock (DOT) zgdv.de> wrote:

Quote:
ist it possible to mark a HTML-page not to be pushed into the browsers
history list.
No. Stay away from pondering how to affect the user's browser functions.
It is in almost every case wrong.

Quote:
The background is that I implemented a little Perl script for editing a
(very ) simple database. And I want to prevent that the user goes back
and recalls pages with earlier entries he made...
That is what the History and the Back button are for.

--
Kris
<kristiaan (AT) xs4all (DOT) netherlands> (nl)
<http://www.cinnamon.nl/>


Reply With Quote
  #4  
Old   
Andrew Urquhart
 
Posts: n/a

Default Re: no history - 03-02-2004 , 09:11 AM



"Christian Schmidt" <cschmidt (AT) rostock (DOT) zgdv.de> wrote

Quote:
Hello,
Hi Christian.

Quote:
ist it possible to mark a HTML-page not to be pushed into the
browsers history list (so that you can't go back i.e. via the
Browsers Back-Button)? May be there are some <META>-
Tags for doing that?? Or some Javascript-Statements??

The background is that I implemented a little Perl script for
editing a (very ) simple database. And I want to prevent that
the user goes back and recalls pages with earlier entries he
made...

Is that possible via HTML ?
HTML is means to mark up information, it doesn't tell user-agents how to
implement user-agent features.

1. Don't try and break the back button (such as via meta redirects:
http://www.w3.org/QA/Tips/reback)
2. Javascript won't help much either (http://jibbering.com/faq/#FAQ4_2)

You should look to adding this support more robustly to your
application.

1. Use a more restrictive caching regime (do this with HTTP headers, not
meta tags) so that going back in the user-agent history (hopefully)
makes fresh requests to the server and doesn't pull files out of the
cache, this isn't foolproof though.
2. Clearly indicate to the user that they should not go back and
indicate the consequences of doing so.
3. When a user updates the database add a timestamp indicating when the
database was last updated, and in each instance of an update form place
a hidden field with the same timestamp value in it. When the client
submits a form compare the timestamp in the submitted form data to the
timestamp in the database. If the form timestamp is the same as the
database timestamp it is safe to update the database as no other updates
have occurred between the time the client fetched the initial form
webpage and the time it was submitted. If the form timestamp is younger
than the database timestamp then the data has been updated in the
intervening period (either by someone else, or by the same client
submitting a form and the going back in their history to an older
version of the form). In this case send the submitted data back to the
client, repopulate the form as it was before submission and write out
the newer data as 'plain text' with an appropriate explanation so he or
she can see both what was submitted and what the database was updated
with. The user can then decide whether to quit now and keep the data as
it stands in the database, submit their original data again or edit
their submission to account for the changes. There are other ways to
implement this, but you get the idea. This third option provides a much
more robust mechanism.
--
Andrew Urquhart
Reply: http://www.andrewu.co.uk/about/conta...Re%3A+alt.html




Reply With Quote
  #5  
Old   
Christian Schmidt
 
Posts: n/a

Default Re: no history - 03-02-2004 , 10:04 AM





Andrew Urquhart schrieb:
Quote:
3. When a user updates the database add a timestamp indicating when the
database was last updated, and in each instance of an update form place
a hidden field with the same timestamp value in it. When the client
submits a form compare the timestamp in the submitted form data to the
timestamp in the database. If the form timestamp is the same as the
database timestamp it is safe to update the database as no other updates
have occurred between the time the client fetched the initial form
webpage and the time it was submitted. If the form timestamp is younger
than the database timestamp then the data has been updated in the
intervening period (either by someone else, or by the same client
submitting a form and the going back in their history to an older
version of the form). In this case send the submitted data back to the
client, repopulate the form as it was before submission and write out
the newer data as 'plain text' with an appropriate explanation so he or
she can see both what was submitted and what the database was updated
with. The user can then decide whether to quit now and keep the data as
it stands in the database, submit their original data again or edit
their submission to account for the changes. There are other ways to
implement this, but you get the idea. This third option provides a much
more robust mechanism.
Yep, I was afraid to have to do it as you describe above. Thanks Andrew.

Regards
Christian



Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.