所以我有以下代码:
<?php
$users_id = $_POST['users_id'];
if ($users_id=="1");
{
?>
<td><select name="User">
<option></option>
<option>John</option>
<option>Jack</option>
</select></td>
<?php
}
if ($users_id!=="1");
{
?>
<td align="left"> <input type="text" name="User" /><br></td></tr>
<?php
}
?>
我只想显示一个表单(下拉列表或输入表单),但我总是同时获得它们 我无法弄清楚我的if语句有什么问题。 请帮忙! 感谢您的时间和精力!
答案 0 :(得分:7)
看起来你不应该使用相同的运算符!==
,因为我看到你在另一个==
语句中使用了相等if
。
更重要的是,你在if
条件之后加了分号!这将在if
条件之后创建一个空语句,之后的任何内容都将运行,无论它是否满足条件。
尝试更改
if ($users_id!=="1");
到
if ($users_id!="1")
和
if ($users_id=="1");
到
if ($users_id=="1")
答案 1 :(得分:3)
删除你的代码并粘贴这个代码...... 它肯定会起作用
<?php
$user_id = (isset($_POST['users_id'])) ? $_POST['users_id'] : '';
if($user_id == 1){
?>
<td><select name="User">
<option></option>
<option>John</option>
<option>Jack</option>
</select></td>
<?php
} else {
?>
<td align="left"> <input type="text" name="User" /><br></td>
<?php
}
?>
</tr>
您的代码所做的更改
完成了对场地的验证,
删除;从条件来看,
使用if-else而不是if-if,
在所有处理之后放置</tr>
,否则它将返回可见错误
答案 2 :(得分:2)
if($ users_id!=“1”);
试试这个。
答案 3 :(得分:2)
从if-lines中删除分号,并将第二个if-condition更改为:
if ($users_id!="1")
或使用以下语法:
if ($users_id=="1") {
// select
} else {
// input
}
答案 4 :(得分:2)
使用if()
块:
if/else
if( $users_id=="1" ) {
// ... something
} else {
// something else
}
除非您了解===
和==
之间的区别,否则请不要使用===
。请参阅此处的文档:http://www.php.net/manual/en/language.operators.comparison.php
答案 5 :(得分:2)
两次更改
if condition
后删除半冒号 I f ($users_id!="1")
改变!==转换为!=
答案 6 :(得分:1)
删除在条件
之后存在的分号答案 7 :(得分:0)
答案 8 :(得分:0)
if($ users_id!==“1”); // correct-&gt; if($ users_id!==“1”)
<?php
$users_id = $_POST['users_id'];
if ($users_id==1);
{
echo "<td><select name='User'>
<option></option>
<option>John</option>
<option>Jack</option>
</select></td>";
}
if($users_id!=1)
{
echo "<td align='left'> <input type='text' name='User' /><br></td></tr>";
}
?>