将元素从“选择列表”解析为 $_POST 以写入数据库
parse element from Select List to $_POST to write to database
我目前正在制作注册表并通过 $_POST 粘贴所有元素喜欢这个:
<input type="text" placeholder="Your username" name="username" value="<?php echo @$username; ?>">
我的问题是我想制作一个选择列表
<select name="Icecream Flavours">
<option value="double chocolate">Double Chocolate</option>
<option value="vanilla">Vanilla</option>
<option value="strawberry" selected>Strawberry</option>
<option value="caramel">Caramel</option>
</select>
并粘贴所选参数,就像粘贴上面输入字段中的输入文本一样。
我设法通过列表完成了它,但它看起来很混乱,有时不适用于所有浏览器。
Yoor 的第一行代码应该是:
<input type="text" placeholder="Your username" name="username" value="<?php echo isset($_POST['username'])?$_POST['username']:null; ?>">
使用增压器运算符@
是一种矫枉过正,并且会无缘无故地减慢脚本的速度。
对于您的选择字段,我会将值存储在一个数组中,然后循环访问它并将$_POST
值与每个数组条目进行比较,如果true
将selected
添加到选项输出中。
所以你的代码变得有点像那样
<?php
$myOptions = array(
'double' => 'Double chocolate',
'vanilla' => 'Vanilla',
'strawberry' => 'Strawberry'
/* and so on */
);
?>
<select name="Icecream_Flavours">
<?php
foreach($myOptions as $key => $opt) {
$selected = (!isset($_POST['Icecream_Flavours']) || $key != $_POST['Icecream_Flavours'])?null:' selected';
echo '<option value="' . $key . '"' . $selected. '>' . $opt . '</option>';
}
?>
</select>
相关文章:
- 通过 ajax POST 向 PHP 发送两个值以查询 SQL 数据库
- Angular js,在选择元素上,我想 POST 数据以将其保存在数据库中,然后我想使用 PUT 更新它而无需重新加载
- 我无法以某种方式在数据库中POST文件
- 我想单击一个
- 并获取 id 以通过 POST 将其插入数据库,可以吗?
- ajax post 为空(数据库中的空字符串)
- 当 Javascript 中的 POST ID 元素插入 PDO 时,数据库中没有结果
- 从 Ajax POST 在数据库中将复选框值保存为 0 或 1
- 使用ajax将会话变量POST到关系数据库
- PHP ifelse通过上传使数据库的post值为null
- 从视图中调用MVC控制器中的HTTP POST方法'数据库保存
- 铁:路由器+流星-不能同时添加POST数据到数据库和渲染路由
- Post数据通过php到我的数据库在AngularjS
- Post datetime类型到数据库与JavaScript
- 使用ajax post方法,从数据库结果创建JSON对象,并将其发送回jquery UI Dialog
- Post/Insert javascript变量到mySQL数据库表-可能使用ajax &/或jquery -如何
- 如何通过PHP POST骨干模型数据到数据库
- Ajax post请求似乎可以工作,只是数据没有保存在数据库中
- 为什么Laravel上的AJAX GET/POST会“;内部服务器错误”;当我尝试将数据用于数据库请求时
- 我怎样才能得到一个Javascript选择选项值提交到数据库的Post
- 主干应用POST请求数据库