Javascript 将下拉列表值自动提交到数据库中

Javascript 将下拉列表值自动提交到数据库中,javascript,php,mysql,onchange,Javascript,Php,Mysql,Onchange,我正在尝试使用onchange=this.form.submit将下拉菜单的值自动提交到数据库中,但无法使其正常工作。谁能帮帮我吗。如有任何建议,将不胜感激 代码如下: <? require_once ('database.php'); ?> <form action="" method=post> <select name="assignee" onchange="this.form.submit()"> <option value="0">

我正在尝试使用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());    
}


?>

您刚刚定义了查询,但没有执行它

在这段代码中没有名称为“=submit”的元素,也许您的意思是isset$\u POST['assignee'],您是如何获得$id的?并使用PDO和MySQLi访问数据库。此函数已弃用。请退出您的输入!除非你想满足@shashikant$id是基于订单的id@Scuzzy我尝试使用isset$_POST['assignee'],但它没有更新到数据库中..感谢您指出我的错误..但它仍然无法更新到数据库尝试var_dump$_POST['assignee'];当我在下拉菜单中选择一个值时,要查看您的表单是否已提交以及提交了什么。它输出字符串3 212..212实际上是用户\u id$sql=UPDATE\`orders\`SET\`assign\`u to\`='$$u POST['assignment']',其中'id`='$id'仍然存在语法错误:除非我喜欢'{$$u POST['assignment']}',但它仍然无法工作
<?php 

if(isset($_POST['assignee'])){

$sql = "UPDATE `orders` SET `assign_to` =  '{$_POST['assignee']}' WHERE id=$id";    
mysql_query($sql);
}

?>