(接前面写的)
第一个页面xiugai.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <h1>修改数据</h1> <?php $code = $_GET["code"]; $db = new MySQLi("localhost","root","root","dbname"); $sql = "select * from info where code='{$code}'"; $result = $db->query($sql); $arr = $result->fetch_row(); ?> <form action="update.php" method="post"> <div> <input type="hidden" name="code" value="<?php echo $arr[0]; ?>" /> </div> <div>姓名: <input type="text" name="name" value="<?php echo $arr[1]; ?>" /> </div> <div>性别: <input type="radio" name="sex" value="1" <?php echo $arr[2]?"checked='checked'":""; ?> />男 <input type="radio" name="sex" value="0" <?php echo $arr[2]?"":"checked='checked'"; ?> />女 </div> <div>民族: <select name="nation"> <?php $snation = "select * from nation"; $rnation = $db->query($snation); while($attr = $rnation->fetch_row()) { //判断将要输出的民族是否和该人员的相同 if($arr[3]==$attr[0]) { echo "<option value='{$attr[0]}' selected='selected'>{$attr[1]}</option>"; } else { echo "<option value='{$attr[0]}'>{$attr[1]}</option>"; } } ?> </select> </div> <div>生日: <input type="text" name="birthday" value="<?php echo $arr[4] ?>" /> </div> <div><input type="submit" value="修改" /></div> </form> </body> </html>
1、code那一条在数据库里是主键,不能改,所以要把它设为type="hidden"。也可以用type="text" style="display:none"。也可用readonly属性,但不能用disable属性。(disable是使其不可用,虽然不能修改了,它也不向后面传递信息了。)
2、性别那里用三目运算符写比较简单。
3、修改页面默认值的选择。
4、$db = new MySQLi("localhost","root","root","dbname");在本页中只需写一次,后面插入的php代码中不需要再写。
第二个页面update.php
<?php $code = $_POST["code"]; $name = $_POST["name"]; $sex = $_POST["sex"]; $nation = $_POST["nation"]; $birthday = $_POST["birthday"]; $db = new MySQLi("localhost","root","root","dbname"); $sql = "update info set name='{$name}',sex={$sex},nation='{$nation}',birthday='{$birthday}' where code='{$code}'"; if($db->query($sql)) { header("location:main.php"); } else { echo "修改失败!"; }