繁体   English   中英

如果更改下拉列表元素和复选框值,如何更新数据库

[英]How to update the database if I change the dropdown list element and checkbox value

我创建了一个表单,其中放置了一个下拉列表和一组复选框。

  1. 如果用户从该下拉列表中选择了某个项目,而不是应在数据库中更新特定项目(例如,第一个用户从下拉列表中选择了部门A,则A应该进入数据库,并且如果一段时间之后同一用户将部门从A更改为B当用户按下更新按钮时,数据库中的数据应该代替数据库中的A。

  2. 在复选框组中,如果用户更改(选择或取消选择)复选框与先前的输入相比,则数据库中的复选框值应更新。(例如,如果用户选中了两个复选框,则特定复选框的值应在数据库中更新,并在一段时间后更新用户选中了所有三个复选框或仅选中了一个复选框,并且当用户单击更新按钮时,特定更改应在数据库中更新

我在这里放了我的代码。 如果有人比您知道解决方案,请帮助。

<?php
$connection = mysql_connect("localhost", "root", "");
$db = mysql_select_db("db_new", $connection);
$query=mysql_query("SELECT * FROM student_info where id=17");
$row= mysql_fetch_row($query);
$rollno = $row[1];
$name = $row[2];
$division= $row[3];
$std = $row[4];
$gender = $row[5];
$subject=mysql_query("select * from student_info where id=17");
while($fetch=mysql_fetch_object($subject))
{
    $r=$fetch->subject;
    $sub=explode(",",$r);
}
if(count($_GET)>0){
    $rollno=$_GET['rollno'];
    $name=$_GET['name'];
    $std=$_GET['std'];
    $gender=$_GET['gender'];
    $update=mysql_query("update student_info set roll_no='$rollno', name='$name',
    std='$std', gender='$gender' where id='17'",$connection);
}
mysql_close($connection);
?>
<!DOCTYPE html>
<html>
<head>
    <title>Edit Form</title>
    <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
    <script src="jquery%20validate/jquery.validate.min.js"></script>
    <script src="jquery%20validate/additional-methods.min.js"></script>
    <script src="form.js"></script>
</head>
<body>
<form id="editform" method="GET" action="task.php">
    <div>
        <h1>Form</h1>
        <label><b>Roll No:</b></label>
        <input id="rollno" name="rollno" type="text" value="<?php echo $rollno ?>"> <br><br>
        <label><b>Name:</b></label>
        <input id="name" name="name" type="text" value="<?php echo $name ?>"> <br><br>
        <label><b>Division:</b></label>
        <select id="division">
            <option value=" " <?php if (!empty($division) && $division == ' ')  echo 'selected = "selected"'; ?>>--select--</option>
            <option value="A" <?php if (!empty($division) && $division == 'A')  echo 'selected = "selected"'; ?>>A</option>
            <option value="B" <?php if (!empty($division) && $division == 'B')  echo 'selected = "selected"'; ?>>B</option>
            <option value="C" <?php if (!empty($division) && $division == 'C')  echo 'selected = "selected"'; ?>>C</option>
            <option value="D" <?php if (!empty($division) && $division == 'D')  echo 'selected = "selected"'; ?>>D</option>
        </select><br><br>
        <label><b>Std:</b></label>
        <input id="std" name="std" type="text" value="<?php echo $std ?>"><br><br>
        <label><b>Gender:</b></label>
        <input type="radio" name="gender" value="male" <?php if($gender=='male'){ echo "checked=checked";}?>>Male
        <input type="radio" name="gender" value="female" <?php if($gender=='female'){ echo "checked=checked";}?>>Female<br><br>
        <label><b>Subject:</b></label><br>
        <input type="checkbox" name="box[]" class="subject" value="maths" <?php if (in_array("maths", $sub)){echo "checked";}?>>maths<br>
        <input type="checkbox" name="box[]" class="subject" value="science" <?php if (in_array("science", $sub)){echo "checked";}?>>science<br>
        <input type="checkbox" name="box[]" class="subject" value="english" <?php if (in_array("english", $sub)){echo "checked";}?>>english<br>
        <input id="submit" type="submit" value="submit">
        <input id="update" type="submit" value="update">
    </div>
</form>
</body>
</html>

数据库布局

您可以使用jquery ajax在select和dropdown更改时更新数据。

$.post('page.php',{parameter:value},function(data){
 //operation performed after insertion
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM