我有这个开关
WHILE @Counter < = (SELECT COUNT(1) FROM #Data)
begin
--perform update in my main table on basis of ID
SET @Counter = @Counter + 1
end
应该使用此表单:
if(isset($_POST['submit']))
$type = $_POST['type'];
{
switch($type)
{
case 'm':
echo "Hello male";
break;
case 'f':
echo "Hello female";
break;
case 'c':
echo "Hello child";
break;
default:
echo "you have to choose";
break;
}
}
但是当我测试它时,它会在所有情况下返回未定义的变量。这是为什么?
答案 0 :(得分:5)
简单错字:
变化:
if(isset($_POST['submit']))
$type = $_POST['type'];
{
要
if(isset($_POST['submit']))
{
$type = $_POST['type'];
你错了大括号。
因此,默认情况下执行POST
之后要执行的代码。
如果你没有在任何表达之后放置大括号,例如。 if
,else
,while
,foreach
,只会执行一行连续的代码。
因此,更好的做法是在这些控件之后添加花括号,即使它们只包含一行代码。
答案 1 :(得分:2)
使用此: 的 PHP 强>
if(isset($_POST['submit']))
{ $type = $_POST['type'];
switch($type)
{
case 'm':
echo "Hello male";
break;
case 'f':
echo "Hello female";
break;
case 'c':
echo "Hello child";
break;
default:
echo "you have to choose";
break;
}
}
<强> HTML:强>
<form name="form" method="post" action="">
<p>
<input name="type" type="radio" value="f" />Woman
<br>
<input name="type" type="radio" value="m" />Male
<br>
<input name="type" type="radio" value="c" />Child
<br>
<input type="submit" name="submit" value="Submit" />
</p>
</form>
答案 2 :(得分:1)
更改
<input type="type" name="submit" value="Submit" />
到
<input type="submit" name="submit" value="submit" />
^^^^^^ ^
答案 3 :(得分:0)
在$_POST['type'];
必须是这样的:
$type = $_POST['type'];
switch($type)
{
case 'm':
echo "Hello male";
break;
case 'f':
echo "Hello female";
break;
case 'c':
echo "Hello child";
break;
default:
echo "you have to choose";
break;
}