[英]store drop down options in mysql database, PHP
当从下拉选择框中选择用户选择的选项时,我需要将其存储,并在以表单提交时将其存储在MYSQL数据库中。
我已经有信息可以很好地存储和显示,我现在正尝试添加更多内容。 我尝试使用相同的方法,但是我无法获取它来存储我想要的东西。
选择下拉列表在我的表单中看起来像这样:
<span> Difficulty: </span>
<select>
<option type="text" name="easy" id="easy" value="easy">easy</option>
<option type="text" name="comfortable" id="comfortable" value="comfortable">comfortable</option>
<option type="text" name="hard" id="hard" value="hard">hard</option>
<option type="text" name="veryhard" id="veryhard" value="veryhard">very hard</option>
<option type="text" name="hardest" id="hardest" value="hardest">Hardest ride in the world!</option>
</select>
</label>
我正在尝试使用此发送它:
$difficulty = mysql_real_escape_string($_POST['difficulty']);
使用此查询:
$query = sprintf("INSERT INTO markers (difficulty) VALUES ('%s')", $difficulty);
当我的表设置为INT,20时,允许为空,它将0存储在数据库中。 当我将其设置为VARCHAR,20,允许为null时,它将存储一个空白字段。
我希望它存储用户选择的任何值,即简单,困难,非常困难等。
非常感谢
$_POST['difficulty']
无法保存值,因为未给SELECT指定“名称”。 尝试
<select name="difficulty">
您的问题是HTML中的name属性。 选择标签应该是“困难的”,而不是在选项标签中。
您也不需要type="text"
,因为无论如何这都是默认值。 我怀疑您也不需要ID,但我们当然看不到其余的代码,因此您可以在其他地方使用它们。
<span> Difficulty: </span>
<select name="difficulty">
<option value="easy">easy</option>
<option value="comfortable">comfortable</option>
<option value="hard">hard</option>
<option value="veryhard">very hard</option>
<option value="hardest">Hardest ride in the world!</option>
</select>
您需要更改HTML的名称<select name="difficulty">
。 然后,您将在$_POST['difficulty']
具有所选的值。
<select name="difficulty">
<option type="text" id="easy" value="easy">easy</option>
<option type="text" id="comfortable" value="comfortable">comfortable</option>
<option type="text" id="hard" value="hard">hard</option>
<option type="text" id="veryhard" value="veryhard">very hard</option>
<option type="text" id="hardest" value="hardest">Hardest ride in the world!</option>
</select>
您不给单个<option/>
标记一个name属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.