【发布时间】:2015-07-15 08:44:16
【问题描述】:
我正在尝试使用 onchange=this.form.submit() 将下拉菜单的值自动提交到数据库中,但我无法使其工作。谁能帮帮我吗。任何建议都将受到高度赞赏。
代码如下:
<?
require_once ('database.php');
?>
<form action="" method=post>
<select name="assignee" onchange="this.form.submit()">
<option value="0">Unassigned</option>
<?
$find_selected = mysql_query("select assign_to from orders where id = $id");
$asignee =mysql_fetch_row($find_selected);
$list=mysql_query("SELECT id, full_name from user where username <> 'root' and nature = 3");
while($row_list=mysql_fetch_assoc($list)){
?>
<option value="<? echo $row_list['id']; ?>"<? if($row_list['id']== $asignee['0']){ echo "selected"; } ?>><? echo $row_list['full_name'] ?></option>
<?
}
mysql_free_result($list);
mysql_free_result($find_selected);
?>
</select>
</form>
<?php
if(isset($_POST['submit'])){
$sql = "UPDATE `orders` SET `assign_to` = '{$_POST['assignee']}' WHERE `id` = '$id' ";
mysql_query($sql) or die(mysql_error());
}
?>
【问题讨论】:
-
这段代码中没有带有
name="submit"的元素,也许你的意思是isset($_POST['assignee'])? -
你是如何得到 $id 的?并使用 PDO 和 MySQLi 进行数据库访问,此功能已弃用。
-
转义你的输入!除非你想见Bobby Tables
-
@shashikant $id 基于订单id
-
@Scuzzy 我尝试使用 isset($_POST['assignee']) 但它没有更新到数据库中..
标签: javascript php mysql onchange