Using if(isset()) with $_GET and switch and default
| From: | MuFei | Date: | Fri, 21 May 2010 19:24:01 +0000 |
| Subject: | Using if(isset()) with $_GET and switch and default | ||
| Groups: | php.general | ||
| Request: | Send a blank email to php-general+get-305407@lists.php.net to get a copy of this message | ||
Hi,
I'm still new to PHP and everyday I learn something new.
Today I was trying to make some script using the switch statement but
I have some issue that I don't know how to get around it.
It's a simple test script that contain only one file, it has some
questions that I want only one question appear per time then go to the
next question when clicking on the submit button, I used switch for
that, but when I get the first page, I got a notice which says:
Notice: Undefined index: question in path\test.php on line 56
So I used if(isset($_GET[''])) but then the default value of the
switch does not show up in the first page and I get the first page
blank.
1- Is there anyway that I can use the default value of the switch
without getting the note?
Or
2- Is there anyway that I can use the default value of the switch with
the if(isset()) and show the first page?
Here is the content of the script that I hope you can help me with:
(please note that it's not finished yet and it's so simple)
(The if(isset()) is commented)
================================================
<?php
// List of test questions and their answers in variables
$question1 = '1- What is PHP?<br />
<input type="radio" name="q1a" value="a" /> A- Software
<br />
<input type="radio" name="q1a" value="b" /> B- Hypertext
Preprocessor, Scripting Server side programming language <br />
<input type="radio" name="q1a" value="c" /> C- Client side
programming language <br /><br />
<input type="submit" name="sumbit" value="Question 2"
/>';
$answer1 = 'b';
$question2 = '2- What is PHP used for?<br />
<input type="radio" name="q2a" value="a" /> A- For web
<br />
<input type="radio" name="q2a" value="b" /> B- For
Computers <br />
<input type="radio" name="q2a" value="c" /> C- For
Designing <br /><br />
<input type="submit" name="sumbit" value="Question 3"
/>';
$answer2 = 'a';
$question3 = '3- What is good about PHP?<br />
<input type="checkbox" name="q3a[a]" value="a" /> A-
It\'s
Designed and created for the web <br />
<input type="checkbox" name="q3a[b]" value="b" /> B-
It\'s Free <br />
<input type="checkbox" name="q3a[c]" value="c" /> C- It
supports
different Databases <br />
<input type="checkbox" name="q3a[d]" value="d" /> D-
It\'s not
an Oriented Programming language <br /><br />
<input type="submit" name="sumbit" value="Question 4"
/>';
$answer3_1 = 'a';
$answer3_2 = 'b';
$answer3_3 = 'c';
$question4 = '4- What does PHP stands for?<br />
<input type="radio" name="q4a" value="a" /> A- Perl
Hypertext
Programming <br />
<input type="radio" name="q4a" value="b" /> B- Personal
Home
Page <br /><br />
<input type="submit" name="sumbit" value="Question 5"
/>';
$answer4 = 'b';
$question5 = '5- Who created PHP?<br />
<input type="radio" name="q5a" value="a" /> A- Andi
Gutmans <br />
<input type="radio" name="q5a" value="b" /> B- Zeev
Suraski <br />
<input type="radio" name="q5a" value="c" /> C- Rasmus
Lerdorf <br /><br />
<input type="submit" name="sumbit" value="Results"
/>';
$answer5 = 'c';
?>
<html>
<head>
<title>
<?php
if(isset($_GET['question'])) {
echo "Question " . $_GET['question'];
} else {
echo 'Instroctions';
}
?>
</title>
</head>
<body>
<?php
//if(isset($_GET['question'])) {
switch($_GET['question']) {
case '1':
echo '<form action="test.php?question=2" method="post">' .
$question1 .'</form>';
break;
case '2':
echo '<form action="test.php?question=3" method="post">' .
$question2 .'</form>';
break;
case '3':
echo '<form action="test.php?question=4" method="post">' .
$question3 .'</form>';
break;
case '4':
echo '<form action="test.php?question=5" method="post">' .
$question4 .'</form>';
break;
case '5':
echo '<form action="test.php?question=Results"
method="post">' .
$question5 .'</form>';
break;
case 'Results':
echo 'You results are: <br /><br /><a href="test.php">Go to
the
home page and do the test again!</a>';
break;
default:
echo 'Welcome to PHP simple test, Please click on Start button
to begin you test. <br />
<a href="test.php?question=1">Click Here to Begin!</a>';
break;
}
//}
?>
</body>
</html>
================================================
Thanks for your help guys! ^^
MuFei