Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

PHP - form workflow

Posted on 2008-06-22
7
Medium Priority
?
203 Views
Last Modified: 2012-06-27
Hi,

Say I have a TermsAndAgreement.php which contains 2 radio buttons (I Agree|I Disagree) and submit button. Upon choosing one of the radio buttons, then clicking "Submit" then it should go to Signup.php.

What php code do i put in signup.php & TermsAndAgreement.php, so it checks to ensure the user has clicked on "I Agree" previously, else it redirects it back to TermsAndAgreement.php.

Also if the user select "I Disagree", how do i redirect it to readthis.php

Thanks!
0
Comment
Question by:jedistar
  • 5
  • 2
7 Comments
 
LVL 111

Accepted Solution

by:
Ray Paseur earned 2000 total points
ID: 21841594
Here is an example to help get you started.  Run that and you will see how the variable come through from the form to the subsequent script.
<?php 
if (!empty($_POST)) {
	var_dump($_POST); // SHOW THE POST VARIABLES
}
?>
<form action="<?=$PHP_SELF?>" method="post">
<input name="agreement" type="radio" value="agree" />Agree
<input name="agreement" type="radio" value="disagree" />Disagree
<input type="submit" name="go" value="go" />
</form>

Open in new window

0
 
LVL 111

Expert Comment

by:Ray Paseur
ID: 21841608
This will take you to signup.php (note the action= keyword).
<form action="signup.php" method="post">
<input name="agreement" type="radio" value="agree" />Agree
<input name="agreement" type="radio" value="disagree" />Disagree
<input type="submit" name="go" value="go" />
</form>

Open in new window

0
 

Author Comment

by:jedistar
ID: 21841630
if the user goes to signup.php directly, how do i prevent the user from seeing the signup.php if he has not agreed to the terms.
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 

Author Comment

by:jedistar
ID: 21841633
and be redirected back to the terms page
0
 
LVL 111

Expert Comment

by:Ray Paseur
ID: 21841631
This will process the $_POST input in signup.php.  I would recommend that you NOT redirect - instead give the client a clear message and let them click the link.  The redirect is likely to be confusing.  You might have to code some kind of GET string, etc.
<?php 
 
/* COMMENT OUT - REMOVE THIS BLOCK
if (!empty($_POST)) {
	var_dump($_POST); // SHOW THE POST VARIABLES
}
*/
 
$agreement	= $_POST["agreement"];
 
if ($agreement == 'disagree') {
	echo "<a href="readthis.php">You checked Disagree.  Please read this.</a>\n";
}
 
if ($agreement != 'agree') {
	echo "<a href="TermsAndAgreement.php">You must check Agree or Disagree.  Please try again.</a>\n";
}

Open in new window

0
 
LVL 111

Expert Comment

by:Ray Paseur
ID: 21841635
In signup.php, you just process the $_POST input.  If it's not what you're expecting, don't worry - just give the client the links to the pages he needs to read.  Easy!
0
 
LVL 111

Expert Comment

by:Ray Paseur
ID: 21841642
Although I would recommend not doing it, the general form of a "redirect" is shown below.  This one redirects to the home page.  Note the "exit" -- the header command will be executed to send the header, then your script will go right on executing the instructions.  You need the exit() function to tell it to stop.
header("Location: /");
exit;

Open in new window

0

Featured Post

Ask an Anonymous Question!

Don't feel intimidated by what you don't know. Ask your question anonymously. It's easy! Learn more and upgrade.

Question has a verified solution.

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

This article explains how to prepare an HTML email signature template file containing dynamic placeholders for users' Azure AD data. Furthermore, it explains how to use this file to remotely set up a department-wide email signature policy in Office …
Introduction This article is intended for those who are new to PHP error handling (https://www.experts-exchange.com/articles/11769/And-by-the-way-I-am-New-to-PHP.html).  It addresses one of the most common problems that plague beginning PHP develop…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.
This video shows how to quickly and easily deploy an email signature for all users in Office 365 and prevent it from being added to replies and forwards. (the resulting signature is applied on the server level in Exchange Online) The email signat…
Suggested Courses

772 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