将值插入数据库输入或下拉菜单

时间:2014-02-10 10:29:18

标签: php mysql

我有一个表单,用户可以通过从下拉菜单中选择一个值或只键入一些文本来插入他/她的教育水平。我的代码很简单:

<label for="education">Education: <input type="text" name="education"/> </label> 
<select name="education">
   <option value=""></option>
   <option value = "Primary education" name="Primary education">Primary education</option>
   <option value = "Secondary education" name="Secondary education">Secondary education</option>
   <option value = "Bachelor" name="Bachelor">Bachelor</option>
   <option value = "Master" name="Master">Master </option>
   <option value = "Doctoral" name="Doctoral">Doctoral </option>
</select>

所以我想在数据库中名为education的列中插入该值。使用上面的代码仅在有人从菜单中选择值时插入。输入文本不存储在数据库中。

1 个答案:

答案 0 :(得分:0)

在文本框部分;

更改

<label for="education">Hobby: <input type="text" name="education"/> </label>

<label for="education">Hobby: <input type="text" name="education_text"/> </label>

重复的名称会导致您的问题(选择和文本框名称相同)。我以education_text为例,根据您的需要进行更新。不要忘记使用更新的名称处理后端。

在你的后端;

$education = "";
if(!empty($_REQUEST["education_text"])) {
   $education = $_REQUEST["education_text"];
} else if(!empty($_REQUEST["education"])) {
   $education = $_REQUEST["education"];
} else {
   die("Invalid education");
}

并在查询中使用它。您可以根据需要将$_REQUEST更改为$_POST$_GET