Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php html选定字段问题_Php_Html - Fatal编程技术网

Php html选定字段问题

Php html选定字段问题,php,html,Php,Html,下面是我的html表单部分。如果表单显示错误,则我要选择用户选择的字段。但不幸的是,这对我不起作用。你们能帮帮我吗 我的html表单: <select class="td" name="class_name"> <option value="">--Select class--</option> <?php $class = mysql_query("SELECT * FROM e_class"); while($res

下面是我的html表单部分。如果表单显示错误,则我要选择用户选择的字段。但不幸的是,这对我不起作用。你们能帮帮我吗

我的html表单:

<select class="td" name="class_name">
    <option value="">--Select class--</option>
    <?php
    $class = mysql_query("SELECT * FROM e_class");

    while($res =  mysql_fetch_array($class))
    {           
        $class_name_ed = $res['class_name'];
        $class_id_ed = $res['class_id'];
        ?>
        <option value="<?php echo "$class_name_ed"; ?>" <?php 
if(isset($_POST['class_name']) == "$class_name_ed") echo 'selected = "selected"';  ?>> 
<?php echo $class_name_ed; ?></option>";
        <?php
    }
    ?>
</select>

--选课--
您正在将布尔真/假值与字符串进行比较。最有可能的情况是,您想要的是:

if (isset($_POST['class_name']) && ($_POST['class_name'] == $class_name_ed)) {
相反。

请尝试以下代码:

if(isset($_POST['class_name']) && $_POST['class_name'] == $class_name_ed) echo 'selected';
您在条件中有一个错误。isset()返回true或false。此外,您不需要将变量$class\u name\u包装为“”。如果要确保这是一个字符串,可以按如下方式对其进行强制转换:

if(isset($_POST['class_name']) && $_POST['class_name'] == (string)$class_name_ed) echo 'selected';
您不需要使用selected=“selected”您可以将该选项标记为选中。
三个

您的数据库结构看起来如何?同时将
“;
更改为
好的,@Marc B我正在检查它。是的,它正在工作。谢谢您的帮助。@Alex检查我的答案
if (isset($_POST['class_name']) && ($_POST['class_name'] == $class_name_ed)) {
if(isset($_POST['class_name']) && $_POST['class_name'] == $class_name_ed) echo 'selected';
if(isset($_POST['class_name']) && $_POST['class_name'] == (string)$class_name_ed) echo 'selected';