我的选择选项粘性表单有问题。这是我的书中所说的代码:
<?php
if(isset($_POST['submit']))
{
echo ' thanks! ';
$submit = $_POST['year'];
}
?>
<form action="" method="post">
<?php
$y = range(1920, 1950);
echo '<select name="year">';
for ($y = 2008; $y <= 2018; $y++) {
echo "<option value=\"$y\";
if ($year == $y) {
echo ' selected="selected"';
}
echo ">$y</option>\n";
}
echo '</select>';
?>
<input type="submit" name="submit" value="SUbmit"/>
</form>
答案 0 :(得分:1)
嘿,你在代码中犯了几个错误: 您应该更改以下代码
$ submit = $ _POST ['year']; =&GT; $ year = $ _POST ['year']; 而你忘了关闭这一行中的字符串: 回声“回声”
工作代码是
<?php
if(isset($_POST['submit']))
{
echo ' thanks! ';
$year = $_POST['year'];
}
?>
<form action="" method="post">
<?php
$y = range(1920, 1950);
echo '<select name="year">';
for ($y = 2008; $y <= 2018; $y++) {
echo "<option value=\"$y\"";
if ($year == $y) {
echo ' selected="selected"';
}
echo ">$y</option>\n";
}
echo '</select>';
?>
<input type="submit" name="submit" value="SUbmit"/>
</form>
答案 1 :(得分:0)
您的表单目标丢失了。看看这里:
<form action="" method="POST">
“action”属性定义了要处理表单数据的下一页。
编辑:粘性;你应该做这样的选择
for($i=1;$i<10;$i++){
echo "<option value='".$i."' ".(($_POST["i"]==$i)?"selected":"").">".$i."</option>";
}
答案 2 :(得分:0)
你忘了关闭第13行的字符串:你还要将年份设置为变量“$ submit”,然后检查变量“$ year”。这两个应该具有相同的名称:
<?php
if(isset($_POST['submit']))
{
echo ' thanks! ';
$year = $_POST['year'];
}
?>
<form action="" method="post">
<?php
$y = range(1920, 1950);
echo '<select name="year">';
for ($y = 2008; $y <= 2018; $y++) {
echo "<option value=\"$y\"";
if ($year == $y) {
echo ' selected="selected"';
}
echo ">$y</option>\n";
}
echo '</select>';
?>
<input type="submit" name="submit" value="SUbmit"/>
</form>