Solved

Back button

Posted on 2000-05-05
11
199 Views
Last Modified: 2013-12-25
How can I prevent a user from using the back button?

I have a registration page, when registered I don't won't them pressing the back button and doing it again!

Any ideas?
0
Comment
Question by:mshire
11 Comments
 
LVL 2

Expert Comment

by:Jagar
ID: 2781928
You can't
0
 
LVL 3

Expert Comment

by:bark10
ID: 2781990
Jagar is right, there is no way you can STOP them from using the back button.  

The best you can do warn them about what they are doing.  Maybe using onbeforeunload() you could give them a choice as to if they really want to leave.

Or, make the registration page a seperate pop-up window with no buttons or bars at all except for the submit button that closes the window on submit.
0
 
LVL 2

Expert Comment

by:READER
ID: 2783206
Open the registration page with the back button disabled.

Here is how to do:

(1) Put following Javascript in your header section
 
<script language="JavaScript">
<!--
 function openNewWindow(url){
  window.open(url,"NewWindow","width=625,height=320,status,menubar,
scrollbars, toolbar,resizable,directories");
  }
// --></script>


(2)  Put following around your HREF tags for registration page

                 javascript:openNewWindow(' URL ')


                   Here's an example.........

                 href="javascript:openNewWindow('http://xxxxxxxx.com')"

   
0
 
LVL 11

Expert Comment

by:mouatts
ID: 2784695
As has been said before you can't stop them pressing the button, except by opening a new window without any buttons on it.

However you can negate them pressing a back button. Assuming that they are on Page A move to Page C and you don't want them to go back to A.

What you actually do is when they leave Page A they go to page B which is just a redirection to page C.

Now if they press back they will go to B which pushes them back to C immediately.

further details are available at http://www.bedrockcomputers.demoin.co.uk/faq.html

HTH
Steve
0
 

Author Comment

by:mshire
ID: 2785388
Yeah that sounds like a good idea... if they press the back button after registering, it would load the previous page, find out they are already registered and redirect them. But how do I get the page to refresh even after pressing the back button (the <meta HTTP-EQUIV="EXPIRES" content="0"> doesn't seem to work always)

Thanks,

Mike

PS mouatts - that link didn't seem to work...
0
3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

 
LVL 2

Expert Comment

by:READER
ID: 2786069
To get a page to refresh every time include the following meta tag in your headers.

<meta http-equiv="Pragma" content="no-cache;>
0
 
LVL 11

Expert Comment

by:mouatts
ID: 2788066
Reader is correct that you should use pragma nocache to refresh a page. But to do a redirection you should use the Location Message (from HTTP) or refresh with a 0 type from a META tag. ie

<META HTTP-EQUIV="Refresh" CONTENT="0; URL=http://mydomain.com/myfile.html">

But if this redirection is out of a CGI then you should use the following

printf("Location: www.mydomain.com/myfile.html \n\n");

(thats suitable for C and Perl and for ASP

response.redirect("myfile.html")

Sorry about the link it should be http://www.bedrockcomputers.demon.co.uk/faq.html

0
 
LVL 11

Expert Comment

by:mouatts
ID: 2815976
Did that solve your problem.

Steve
0
 

Accepted Solution

by:
Ironwolf earned 100 total points
ID: 2892837
If you put this code on the top of your registration page:

<script language=JavaScript>
      history.forward()
</script>

then every time they go back to this page, using the back button, a right click, alt+backArrow, or any other method, it will automatically push them forward to the page they came from.

You can put this on every page of your web if you want them to only be able to navigate your page through the links.

This method is very effective when you have a data-driven web where the data is constantly updated and you want to make sure it is refreshed upon each viewing.

-IW
0
 
LVL 11

Expert Comment

by:mouatts
ID: 2918190
Ironwolf: Did you really have to post this as an answer! BTW turn off javascript and it fails.
0
 

Expert Comment

by:lankford
ID: 103422
Not that anyone will care, but if you code the page as an hta instead of regular html, back will simply be disabled as a feature in the user's browser.

This, of course, brings lots of other issues to the table.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Hovering effect 9 47
WEB Farm 6 64
Fixed div within Bootstrap carousel item 11 54
app server have enough resources... 2 24
Learn by example how to specify CSS selectors for Selenium WebDriver test automation software.
Any business that wants to seriously grow needs to keep the needs and desires of an international audience of their websites in mind. Making a website friendly to international users isn’t prohibitively expensive and can provide an incredible return…
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.

910 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

25 Experts available now in Live!

Get 1:1 Help Now