我已经创建了一个表单,我已经把三个复选框中的一些形式有些人已经检查了所有主题,有些只选择了两个主题,我想从数据库检索复选框值。我已经给出了我当前的代码。如果有人知道解决方法,请告诉
<?php
$connection = mysql_connect("localhost", "root", "");
$db = mysql_select_db("db_new", $connection);
echo "Roll No:-$rollno'n";
echo "Name is:-$name'n";
echo "Division:-$division'n";
echo "Std:-$std'n";
echo "Gender:-$gender'n";
echo "Subject:-$subject'n";
$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;
$i=explode(",",$r);
echo $i[0]."</br>";
echo $i[1]."</br>";
echo $i[2]."</br>";
}
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">
<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 echo "checked";?>>maths<br>
<input type="checkbox" name="box[]" class="subject" value="science" <?php echo "checked";?>>science<br>
<input type="checkbox" name="box[]" class="subject" value="english" <?php echo "checked";?>>english<br>
<input id="submit" type="submit" value="submit">
</div>
</form>
</body>
</html>
试试这个
<?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;
$i=explode(",",$r);
}
mysql_close($connection);
?>
在复选框内,你可以使用in_array
进行检查 <label><b>Subject:</b></label><br>
<input type="checkbox" name="box[]" class="subject" value="maths" <?php if (in_array("maths", $i)){ echo "checked";}?>>maths<br>
<input type="checkbox" name="box[]" class="subject" value="science" <?php if (in_array("science", $i)){ echo "checked";}?>>science<br>
<input type="checkbox" name="box[]" class="subject" value="english" <?php if (in_array("english", $i)){ echo "checked";}?>>english<br>