2

所以我有以下代码:

<?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 语句有什么问题。请帮忙!感谢您的时间和精力!

4

9 回答 9

7

看起来您!==在不应该使用相同的运算符时使用了相同的运算符,因为我看到您==在另一个if语句中使用了相等性。

而且,更重要的是,您在if条件后面加上分号!这将在条件之后创建一个空语句,之后的if任何内容都将运行,无论它是否满足条件。

尝试改变

if ($users_id!=="1");

进入

if ($users_id!="1")

if ($users_id=="1");

if ($users_id=="1")
于 2012-11-19T12:03:49.273 回答
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>

在您的代码中所做的更改 完成了对 post 字段的验证,已删除;from if 条件,使用 if-else 代替 if-if,放置</tr>在所有处理之后,否则会返回可见错误

于 2012-11-19T12:05:31.660 回答
2

if ($users_id!="1");

尝试这个。

于 2012-11-19T12:03:28.670 回答
2

从 if 行中删除分号并将第二个 if 条件更改为:

if ($users_id!="1")

或使用以下语法:

if ($users_id=="1") {
    // select
} else {
   // input
}
于 2012-11-19T12:04:13.007 回答
2

而不是两个if()s,使用if/else块:

if( $users_id=="1" ) {

  // ... something

} else {

  // something else

}

===除非您了解 和 之间的区别,否则==请不要使用===。请参阅此处的文档:http ://www.php.net/manual/en/language.operators.comparison.php

于 2012-11-19T12:04:24.383 回答
2

两个变化

  1. if条件后去掉分号

    一世f ($users_id!="1")

  2. 将 !== 更改为 !=

于 2012-11-19T12:05:56.137 回答
1

删除 if 条件后存在的分号

于 2012-11-19T12:04:49.493 回答
0

请检查您的代码更改

if ($users_id!=="1");

if ($users_id!="1")

也放弃 if(); 到 if() 并请阅读If else

于 2012-11-19T12:07:35.647 回答
0

if ($users_id!=="1");//正确->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>";

    }
    ?>
于 2012-11-19T12:11:50.057 回答