php生肖计算器中的粘性表单
我有一个程序,当你提交你的名字和出生日期、月份和年份时,它会计算你的黄道十二宫。我希望这样,如果您没有提交一条信息并看到错误消息,当您单击“上一步”时,您的答案仍然存在(粘性)。我已经看了一些其他线程,但在我的具体情况下实现它有困难。谢谢 这是我的html表单:php生肖计算器中的粘性表单,php,html,forms,sticky,Php,Html,Forms,Sticky,我有一个程序,当你提交你的名字和出生日期、月份和年份时,它会计算你的黄道十二宫。我希望这样,如果您没有提交一条信息并看到错误消息,当您单击“上一步”时,您的答案仍然存在(粘性)。我已经看了一些其他线程,但在我的具体情况下实现它有困难。谢谢 这是我的html表单: <!DOCTYPE HTML> <html> <head> <link
<!DOCTYPE HTML>
<html>
<head>
<link href='http://fonts.googleapis.com/css?family=Yanone+Kaffeesatz' rel='stylesheet' type='text/css'>
<title>
Zodiac
</title>
<style>
body{
background-image: url('space.jpg');
background-color: Blue;
background-size: 100%;
font-family: 'Yanone Kaffeesatz', sans-serif;
font-size: 150%;
}
form{
background-color: LightBlue;
border: solid black 3px;
width: 35%;
}
</style>
</head>
<body>
<center>
<br>
<br>
<form action="zodiacformHandler.php" method="post">
<br>
<h1>What's your sign?</h1>
<br>
Full Name: <input type="text" name="fullName"><br>
<br>
Month:
<!-- Month dropdown -->
<select name="month" size="1">
<option disabled selected> </option>
<option value="01">January</option>
<option value="02">February</option>
<option value="03">March</option>
<option value="04">April</option>
<option value="05">May</option>
<option value="06">June</option>
<option value="07">July</option>
<option value="08">August</option>
<option value="09">September</option>
<option value="10">October</option>
<option value="11">November</option>
<option value="12">December</option>
</select>
Day:
<!-- Day dropdown -->
<select name="day" size="1">
<option disabled selected> </option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
<option value="06">06</option>
<option value="07">07</option>
<option value="08">08</option>
<option value="09">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select>
Year:
<!-- Year dropdown -->
<select name="year" size="1">
<option disabled selected> </option>
<option value="2014">2014</option>
<option value="2013">2013</option>
<option value="2012">2012</option>
<option value="2011">2011</option>
<option value="2010">2010</option>
<option value="2009">2009</option>
<option value="2008">2008</option>
<option value="2007">2007</option>
<option value="2006">2006</option>
<option value="2005">2005</option>
<option value="2004">2004</option>
<option value="2003">2003</option>
<option value="2002">2002</option>
<option value="2001">2001</option>
<option value="2000">2000</option>
<option value="1999">1999</option>
<option value="1998">1998</option>
<option value="1997">1997</option>
<option value="1996">1996</option>
<option value="1995">1995</option>
<option value="1994">1994</option>
<option value="1993">1993</option>
<option value="1992">1992</option>
<option value="1991">1991</option>
<option value="1990">1990</option>
<option value="1989">1989</option>
<option value="1988">1988</option>
<option value="1987">1987</option>
<option value="1986">1986</option>
<option value="1985">1985</option>
<option value="1984">1984</option>
</select>
<input type="submit">
<br><br>
</form>
</center>
</body>
</html>
生肖
身体{
背景图片:url('space.jpg');
背景颜色:蓝色;
背景大小:100%;
字体系列:“Yanone Kaffeesatz”,无衬线;
字体大小:150%;
}
形式{
背景颜色:浅蓝色;
边框:纯黑3px;
宽度:35%;
}
你的星座是什么?
全名:
月份:
一月
二月
前进
四月
也许
六月
七月
八月
九月
十月
十一月
十二月
日期:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
年份:
2014
2013
2012
2011
2010
2009
2008
2007
2006
2005
2004
2003
2002
2001
2000
1999
1998
1997
1996
1995
1994
1993
1992
1991
1990
1989
1988
1987
1986
1985
1984
这是我的php formHandler:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Zodiac Form Handler </title>
<link href='http://fonts.googleapis.com/css?family=Yanone+Kaffeesatz' rel='stylesheet' type='text/css'>
<style>
body{
background-image: url('space.jpg');
background-color: LightBlue;
background-size: 100%;
font-family: 'Yanone Kaffeesatz', sans-serif;
font-size: 150%;
}
#forminfo{
padding: 25px;
}
img.signs{
height: 50%;
}
</style>
</head>
<body>
<table id="forminfo" align="center" BGCOLOR="#c6e9ee" style="border:3px solid black">
<tr><td>
<br>
<center>
<img class="signs" src="signs.png" align="center" /></a>
<h1>Your Astrological Sign:</h1>
</center>
<br>
<center>
<?php
$fullName = $_POST['fullName'];
$month = $_POST['month'];
$day = $_POST['day'];
$year = $_POST['year'];
$formComplete = True; //boolean variable for if the form is valid or invalid
//checks to see if name is filled out.
if(empty($_POST['fullName'])){
echo "<p class='error'>ERROR: You didn't enter your name. Please go back and try again.</p>";
$formComplete = False;
}
//checks to see if the month is filled out.
if(empty($_POST['month'])){
echo "<p class='error'>ERROR: You didn't enter a month. Please go back and try again.</p>";
$formComplete = False;
}
//checks to see if dislikes is filled out.
if(empty($_POST['day'])){
echo "<p class='error'>ERROR: You didn't enter a day. Please go back and try again.</p>";
$formComplete = False;
}
//checks to see if a year is entered.
if(empty($_POST['year'])){
echo "<p class='error'>ERROR: You didn't enter a year. Please go back and try again.</p>";
$formComplete = False;
}
if ($formComplete){
function zodiac ( $month, $day, $year)
{
$zodiac = "";
if ( ( $month == 3 && $day > 20 ) || ( $month == 4 && $day < 20 ) ) { $zodiac = "Aries"; }
elseif ( ( $month == 4 && $day > 19 ) || ( $month == 5 && $day < 21 ) ) { $zodiac = "Taurus"; }
elseif ( ( $month == 5 && $day > 20 ) || ( $month == 6 && $day < 21 ) ) { $zodiac = "Gemini"; }
elseif ( ( $month == 6 && $day > 20 ) || ( $month == 7 && $day < 23 ) ) { $zodiac = "Cancer"; }
elseif ( ( $month == 7 && $day > 22 ) || ( $month == 8 && $day < 23 ) ) { $zodiac = "Leo"; }
elseif ( ( $month == 8 && $day > 22 ) || ( $month == 9 && $day < 23 ) ) { $zodiac = "Virgo"; }
elseif ( ( $month == 9 && $day > 22 ) || ( $month == 10 && $day < 23 ) ) { $zodiac = "Libra"; }
elseif ( ( $month == 10 && $day > 22 ) || ( $month == 11 && $day < 22 ) ) { $zodiac = "Scorpio"; }
elseif ( ( $month == 11 && $day > 21 ) || ( $month == 12 && $day < 22 ) ) { $zodiac = "Sagittarius"; }
elseif ( ( $month == 12 && $day > 21 ) || ( $month == 1 && $day < 20 ) ) { $zodiac = "Capricorn"; }
elseif ( ( $month == 1 && $day > 19 ) || ( $month == 2 && $day < 19 ) ) { $zodiac = "Aquarius"; }
elseif ( ( $month == 2 && $day > 18 ) || ( $month == 3 && $day < 21 ) ) { $zodiac = "Pisces"; }
return $zodiac;
}
echo ("Hello $fullName! Your zodiac sign is: ");
echo zodiac ( $month, $day, $year);
}
?>
<br><br>
<a href="zodiac.html" >Choose another date?</a>
<center>
<br>
</td></tr>
</table>
</body>
</html>
黄道带形状处理器
身体{
背景图片:url('space.jpg');
背景颜色:浅蓝色;
背景大小:100%;
字体系列:“Yanone Kaffeesatz”,无衬线;
字体大小:150%;
}
#forminfo{
填充:25px;
}
符号{
身高:50%;
}
你的星座:
我想你见过使用这种方法的方法:
<input name="someField" type="text" value="<?php echo $_POST['someField']; ?>" />
您遇到了什么样的麻烦?你需要更具体一些才能得到有用的答案。@StephaneM我不完全确定我遇到的麻烦是不是问题所在。。。
<option selected="selected">someValue</option>
// Validate input
if($_POST['month'] != 3) //(Or some other validation check)
{
//Set the default month as January
$defaultMonth = 01;
}
else
{
// Input is valid, leave it as whatever the user set last time
$defaultMonth = $_POST['month']; //Don't do this without cleaning your input
}
// Define the different options to use in the select field
$months = array(
01 => 'January',
02 => 'February',
03 => 'March',
04 => 'April',
......
12 => 'December'
);
// "Create" the select field from the array above
echo '<select name="month" size="1">';
foreach($months as $monthNo => $desc)
{
// Decide if we want to put the selected="selected" line in
if($monthNo == $defaultMonth)
{
$selectedText = "selected='selected' ";
}
else
{
$selectedText = "";
}
echo "<option value='$monthNo' $selectedText>$desc</option>";
}
echo '</select>';