我正在构建一个由php范围的数字填充的下拉菜单。到目前为止,我的代码是有效的。到目前为止,我是这样写的:
<?php
echo "<select name='Strength_Pts2' id='Strength_Pts2'>";
foreach($PotRange as $AttributesAvailable)
{
echo "<option value='$AttributesAvialabe'>$AttributesAvailable</option>";
}
echo "</select>";
?>
现在,我想在菜单中添加一个If/Then条件,这样在某些情况下,用户只能获得"0"选项,而不是整个范围。这是我编码的:
<?php
echo "<select name='Strength_Pts2' id='Strength_Pts2'>";
if ( 1 == 1 ) {
foreach($PotRange as $AttributesAvailable)
{
echo "<option value='$AttributesAvialabe'>$AttributesAvailable</option>";
}
else
echo "<option value='0'>0</option>";
}
echo "</select>";
?>
我试过带和不带;最后一个}之后。我得到解析错误:语法错误,第531行出现意外的T_ELSE。
有人能帮我解决我做错的事吗?
提前感谢,-CB
您忘记了一些大括号,请使用以下内容:
<?php
echo "<select name='Strength_Pts2' id='Strength_Pts2'>";
if ( 1 == 1 ) {
foreach($PotRange as $AttributesAvailable) {
echo "<option value='$AttributesAvialabe'>$AttributesAvailable</option>";
}
} else {
echo "<option value='0'>0</option>";
}
echo "</select>";
?>
在else后面缺少一个左大括号。
更改为:
<?php
echo "<select name='Strength_Pts2' id='Strength_Pts2'>";
if ( 1 == 1 ) {
foreach($PotRange as $AttributesAvailable)
{
echo "<option value='$AttributesAvialabe'>$AttributesAvailable</option>";
}
else
}
{
echo "<option value='0'>0</option>";
}
echo "</select>";
?>
if语句缺少一个右括号:
....
if ( 1 == 1 ) {
foreach($PotRange as $AttributesAvailable)
{
echo "<option value='$AttributesAvialabe'>$AttributesAvailable</option>";
}
}else //you were missing closing brace here
....
if (...) {
foreach (...) {
...
}
} else {
...
}
您缺少if
块的}
。
您的代码样式不好,并且您的花括号有问题
<?php
echo "<select name='Strength_Pts2' id='Strength_Pts2'>";
if ( 1 == 1 ) {
foreach($PotRange as $AttributesAvailable)
{
echo "<option value='$AttributesAvialabe'>$AttributesAvailable</option>";
}
}
else
{
echo "<option value='0'>0</option>";
}
echo "</select>";
?>
我建议您使用制表符缩进来获得样式良好且可读的代码