数据库中两张表:
info表中“民族”关联了nation表中的“code”。
php通过后台编辑info表中民族显示成用户可看懂及可直接修改的选项。
新建xinxi.php文件显示info中数据,并且民族选项显示非代号。
<?php
$de = new mysqli("localhost","root","","12345");
$e="select * from info";
$result = $de->query($e);
$atter = $result->fetch_all();
echo "<table border=1 >";
echo "<tr><td>代号</td><td>姓名</td><td>性别</td><td>民族</td><td>出生日期</td><td>操作</td> </tr> ";
foreach($atter as $v)
{$sex = $v[2]; //性别用 男和女显示。$sex = $sex?"男":"女";$nation = $v[3]; //民族用非代号显示。$sqln = "select name from nation where code='{$nation}'";$r = $de->query($sqln);$atr = $r->fetch_row();echo " <tr><td>{$v[0]}</td><td>{$v[1]}</td><td>{$sex}</td><td>{$atr[0]}</td><td>{$v[4]}</td><td> <a href='xiugai.php?code={$v[0]}'>修改</a> </td></tr> ";
}
echo " </table>";
echo "<a href='tianjia.php'>添加数据</a>"
?>
显示结果:
添加数据:
同路径下新建tianjia.php
<h1>添加数据</h1><form action="tianjiachuli.php" method="post"><input type="hidden" name="code" /> <br />姓名:<input type="text" name="name" /><br />性别:<input type="radio" name="sex" value="1" />男 <input type="radio" name="sex" value="0" />女 <br />民族: //使用下拉获取民族选项的代号<select name="nation"><?php $db = new MySQLi("localhost","root","","12345");$sql = "select * from nation";$result = $db->query($sql);$attr = $result->fetch_all(); foreach($attr as $v){echo " <option value='{$v[0]}' >{$v[1]}</option> ";} ?></select><br />生日:<input type="text" name="birthday" /><br /><input type="submit" value="提交"/></form>
同路径下新建tianjiachuli.php
<?php$code = $_POST["code"];$name = $_POST["name"];$sex = $_POST["sex"];$nation = $_POST["nation"];$birthday = $_POST["birthday"];$db = new mysqli("localhost","root","","12345");$sql = "insert into info values('{$code}','{$name}','{$sex}','{$nation}','{$birthday}')";$r = $db->query($sql);if($r){header("location:xinxi.php");}else{echo "添加失败";}
?>
修改数据:
同路径下新建xiugai.php
<?php
$code = $_GET["code"];
$db = new MySQLi("localhost","root","","12345");
$sql = "select * from info where code='{$code}'";$result = $db->query($sql);
$attr = $result->fetch_row();
?><h1>修改数据</h1><form action="xiugaichuli.php" method="post"><input type="hidden" name="code" value="<?php echo $attr[0] ?>" /> <br />姓名:<input type="text" name="name" value="<?php echo $attr[1] ?>" /><br />性别:<input type="radio" name="sex" value="1" <?php echo $attr[2]?"checked='checked'":""; ?> />男 <input type="radio" name="sex" value="0" <?php echo $attr[2]?"":"checked='checked'"; ?> />女 <br />民族: <select name="nation"><?php $sqln = "select * from nation";$result = $db->query($sqln);$atter = $result->fetch_all(); foreach($atter as $v){if($attr[3]==$v[0]){echo "<option selected='selected' value='{$v[0]}'>{$v[1]}</option>";}else{echo " <option value='{$v[0]}' >{$v[1]}</option> ";}} ?></select><br />生日:<input type="text" name="birthday" value="<?php echo $attr[4] ?>" /><br /><input type="submit" value="修改"/></form>
同路径下新建xiugaichuli.php
<?php$code = $_POST["code"];$name = $_POST["name"];$sex = $_POST["sex"];$nation = $_POST["nation"];$birthday = $_POST["birthday"];$db = new mysqli("localhost","root","","12345");$sql = "update info set name='{$name}',sex={$sex},nation='{$nation}',birthday='{$birthday}' where code='{$code}'";$r = $db->query($sql);if($r){header("location:xinxi.php");}else{echo "修改失败";}
?>
显示结果:
修改为: