<select> 有两个不同的选项,不是来自数据库,而是自定义文本 php mysql、html

<select> with two different options not from database, but custom text php mysql, html

我的数据库在 phpmyadmin 中,我有一个 table 'employees'。其中一个字段是 'pay_item',这个特定字段的类型是 'varchar(100)'.

我想在我的 php 网站上有一个下拉菜单,我希望它有两个不同的选项:'Hourly' 和 'Salary'。

我已经得到它来从数据库中检索值,所以无论该员工选择了什么,它都不会出现在屏幕上,并且 'pay_item' 将在下拉列表中被选中。

我现在遇到的问题是,当我提交表单时,它没有将选定的选项发送到数据库。假设我想从一个编辑到另一个,它不会接受更改。

我知道如何使用 'while' 循环编写,并从数据库填充,但在这种情况下,我只想拥有这两个选项,暂时不用,因为没有具体 table 'pay_items'

这是我目前的代码:


        <td colspan="3">
        <select name="pay_item">

            <?
                echo"   <option value=\"$pay_item\"";
            if($pay_item=="Regular Hourly")
                echo" selected";
                echo">Regular Hourly</option>\n";
            
                echo"   <option value=\"$pay_item\"";
            if($pay_item=="Regular Salary")
                echo" selected";
                echo">Regular Salary</option>\n";

            ?>
            </select>
        </td>

现在,我忘了提到当它打开 'Regular Salary' 时,它确实会更改为 'Regular Hourly',但不是相反,所以我认为一定有问题.

的结构

之前,我把它作为一个文本字段,所以人们输入 'Regular Hourly' 等等,但有时他们会输入语法错误,所以我试图通过下拉列表来避免这种情况。

我将其发送到数据库的方式是使用普通的 UPDATE 或 INSERT 查询。

$db_link->query("INSERT INTO employees (pay_item) VALUES ('$pay_item')");

$db_link->query("UPDATE employees SET pay_item='$pay_item' WHERE id = '$user_id'");

在我的数据库中,'pay_item' 是 VARCHAR(100),因为我曾经将它作为文本字段,而我想要的唯一两个值是 'Regular Hourly' 和 'Regular Salary'.所以我想创建一个下拉菜单,我可以在其中填充这两个选项。

非常感谢任何帮助!谢谢!

我不确定这是不是你想要的

<td colspan="3">
    <select name="pay_item">

        <?php
        if($pay_item === "Regular Hourly"){
            echo "<option value='Regular Hourly' selected>Regular Hourly</option>";
            echo "<option value='Regular Salary'>Regular Salary</option>"
             }
         elseif($pay_item === "Regular Salary"){
             echo "<option value='Regular Salary' selected>Regular Salary</option>";
             echo "<option value='Regular Hourly'>Regular Hourly</option>";
             }
        

        ?>
        </select>
    </td>

根据 $pay_item 的值生成下拉列表