0

Hello, I'm looking to create a disclaimer page as a precedent to viewing an exercise video. I'm currently using a standard text field (for initials) and check box (to agree). There's no problem with that.

I know I can just put the form submit to open a new page, but I don't want users to be able to share a link to a friend and have that friend not accept the disclaimer.

So let's say I have a 'exercise.php'. How would I make it so that the disclaimer form would display if a user visited the page and they would only be directed to my exercise video file after accepting the disclaimer?

Thanks for your help!

3
Contributors
12
Replies
15
Views
5 Years
Discussion Span
Last Post by sgonser
0

Hello

Sessions or cookies (specifically cookies) can work effectively for this problem.

Alternatively, you could store whether they have accepted into a database, via their IP or username..

0

It would be a session cookie. I don't have the knowledge (at least yet) to code a database for username.

Thanks for your help!

0

You don't need to log the user in. You could work off anything you want:
In every page other than the disclaimer message page and any pages that require that you have read the disclaimer:

session_start();

In the disclaimer page:

session_start();
$_SESSION['dis'] = 1;

In all pages that require the disclaimer to be read:

session_start();
if(!isset($_SESSION['dis']))header("Location: read_disclaimer.php");

These bits of code should be placed at the top of the page, before anything else.

Should work. :)

0

I have my disclaimer as a html form.. do I need anything for a "form action=" or on submit?

Thanks!

0

I have done this already, but should my form action say something particular?

<form action=" (what goes here) " method="post" onsubmit="return checkCheckBox(this)" name="waiver_form">
0

I THINK (Don't blame me if I'm wrong -- Just a suggestion)

But you want it so that:

1. Checks to see if the disclaimer has been checked (This would auto be set to 0)
2. The user clicks on something like "accept" which then they submit a button
-- This would set the value to 1 and redirect the user to whatever page.

As Ardav rightly said, have a page that checks to see if the user has checked the disclaimer:

if(!isset($_SESSION['dis']))header("Location: read_disclaimer.php");

read_disclaimer.php
But, you need a way to to set it so something like:

<?php
     session_start();
     if(!isset($_POST['submitted']) && $_SESSION['dis'] != 1) // Check if form hasn't been submitted/session hasn't been set
     {
          echo '<form method="post" action="">';
		   // rest of the input boxes etc
		
			echo '<input type="submit" name="submit" value="Continue">';
			echo '<input type="hidden" name="submitted" value="TRUE">';
	  }else{
		
		// The form has been submitted.
		$_SESSION['dis'] = 1; // Set's the disclaimer to be 1
		header("Location: the_page.php"); // Redirect to whatever page you want
	}
?>

Does this make any sense? I may be wrong, just offering my opinion :)

Edited by phorce: n/a

0

The following is my form.. I have used the 'ardavs' information from above.. it works great to redirect to "disclaimer.php" during their session. Now I just need the following form to send them to 'lunges.php'.. I tried an "onclick" for the submit button, but it bipasses the javascript to make sure they checked the boxes and entered their initials.

Thanks for everyone's help until this point!

<form action="<?php echo $SERVER['SCRIPT_URL']?>" method="post" onsubmit="return checkCheckBox(this)" name="waiver_form">
          <p class="font24">
            <label>
            <textarea name="waiver" cols="100" rows="8" id="waiver" readonly>

HERE IS ALL THE WAIVER INFORMATION, YADA YADA...

</textarea>
            </label>
          <p class="font24"><span class="font14">I accept:</span> 
            <input type="checkbox" value="0" name="agree">          
            <span class="font14">Initials: 
            <label>
            <input name="initials" type="text" id="initials" size="4" maxlength="2" />
            </label>
            </span>
          <p class="font24">
                <input type="submit" name="send">
                <input type="button" value="Exit" onclick="document.location.href='index.php';">
            
           </form>
0

The waiver is on the form that you're sending. So it's just a matter of clicking a checkbox right? No need for all the session stuff.

Have the submit button disabled on page load. Then when the checkbox is checked, enable it with js.

0

Sounds like a good idea, but I need the session to make sure they view it (disclaimer.php).. if I do the disable button, won't they be able to follow a link around the disclaimer (say if a friend shares the link)?

I can search the web for a disable submit button script, but would appreciate any help using it if you can... Can I do this with javascript to make sure they "Agree" to the waiver? Thanks Ardav!

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.