1.查询php
把昨天的做业(查询一张数据表,以表格的形式显示)做为一个例子sql
思路就是链接数据库,而后读取SQL语句而且根据条件遍历输出数据库
<body>数组
<table border="1px" cellpadding="0px" cellspacing="0px" width="100%"> //外层表结构post
<tr align="center"> //本身写好表头(字段名)
<td>学号</td>
<td>姓名</td>
<td>性别</td>
<td>出生日期</td>
</tr>fetch
<?php
$db = new MySQLi("localhost","root","","test"); // 链接数据库
$db->query("set names UTF8"); //设置字符编码编码
$sql = "select * from teacher"; //读取SQL语句
$result = $db->query($sql);
while($arr = $result->fetch_row()) //循环,抓取每行的数据,直到没有数据
{
echo "<tr align='center'> <td>{$arr[0]}</td> //输出数据表中的每一个字段内容
<td>{$arr[1]}</td>
<td>{$arr[2]}</td>
<td>{$arr[3]}</td></tr>";
}
?>
</table>spa
</body>3d
2.数据删除操做code
<body>
<h1>学生表查询</h1>
<table cellpadding="0px" cellspacing="0px" border="1px" align="center" width="100%">
<tr>
<td>学号</td>
<td>姓名</td>
<td>性别</td>
<td>生日</td>
<td>班级</td>
<td>操做</td>
</tr>
<?php
$db=new MySQLi("localhost","root","","test");
$sql="select * from student";
$result=$db->query($sql);
$attr=$result->fetch_all();
foreach($attr as $v)
{ echo "<tr>
<td>{$v[0]}</td>
<td>{$v[1]}</td>
<td>{$v[2]}</td>
<td>{$v[3]}</td>
<td>{$v[4]}</td> //和查询同样,这里多出来一个定义字段,做为删除功能键,定义为<a>超连接标签
<td><a href='dele.php?Sno={$v[0]}' onclick=\"return confirm('你肯定删除吗')\">删除</a></td> //同时给删除键一个点击事件,这样会先执行点击事件,后完成提交跳转,添加了一个确认事件,为了防止不通过用户确认而形成的误删现象。
</tr>";} //在提交删除操做时,同时提交了一个类get操做(地址栏显示)的数据主键值,使得提交时能辨识出须要删除的具体是哪一个数据
?>
</table><br />
</body>
效果以下图
当点击删除时
接下来就是写后台删除的PHP页面
<?php
$r1=$_GET["Sno"]; //经过get方式获取到了删除页面传来的主键对应的值
$db=new MySQLi("localhost","root","","test"); //连接数据库
$sql="delete from student where Sno={$r1}"; //读取sql语句
if($db->query($sql)){
header("location:check.php"); //删除成功后跳转至原来的界面,1. header方法,此方法问题会出如今,若是不是跳转同级文件下的时候出错
echo "<script>window.location.href='check.php';</script>" //2.JS跳转方式
echo"<script>window.open('check.php','_self',)</script>" //3.JS跳转方式 3种方式都能成功跳转。
}
?>
3.添加数据(和前面的注册基本一致的作法)
第一步:增长一个添加的提交或超连接按钮
<a href="add.php"><input type="submit" name="add" value="添加学生"/></a>
第二步:写add添加的页面
<body>
<h1 align="center">学生信息添加</h1>
<div style=" background-color:#0CC" align="center">
<form action="tianjia.php" method="post">
<div>学号:<input type="text" name="Sno" /></div><br />
<div>姓名:<input type="text" name="Sname" /></div><br />
<div>男<input type="radio" name="Ssex" /> 女<input type="radio" name="Ssex"</div><br />
<div>生日:<input type="date" name="birthday"/></div><br />
<div>班级<input type="text" name="class" /></div><br />
<input type="submit" value="提交"/>
</form>
<div>
</body>
第三步:写出处理添加数据操做的php页面
<?php
$id=$_POST["Sno"];
$name=$_POST["Sname"];
$sex=$_POST["Ssex"];
$birthday=$_POST["birthday"];
$class=$_POST["class"];
$db=new MySQLi("localhost","root","","test");
$sql="insert into student values('{$id}','{$name}','{$sex}','{$birthday}','{$class}')";
if($db->query($sql)){
echo "学生{$name}信息添加成功";
//header("location:check.php");
echo"<script> window.open('check.php','_self','')</script>";
}
else{
echo "学生信息添加失败".$db_error;
}
?>
4.修改数据表
若是数据表中显示的内容和咱们想要显示的结果不一样,好比性别在数据表中储存的是0和1,可是咱们想要显示的是男和女
还有就是连有外键的数据表,显示的内容中只是一个外键的字段名,咱们就要进行修改
例以下面
<body><h1>显示info信息</h1><table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td>代号</td> <td>姓名</td> <td>性别</td> <td>民族</td> <td>生日</td> <td>操做</td> </tr> <?php $db = new MySQLi("localhost","root","123","mydb"); $sql = "select * from info"; $result = $db->query($sql); $arr = $result->fetch_all(); foreach($arr as $v) { //修改性别 $sex = $v[2]?"男":"女"; //修改民族 $sql1 = "select name from nation where code='{$v[3]}'"; //读取关联表的数据 $r1 = $db->query($sql1); //存入变量集中 $a1 = $r1->fetch_row(); //用数组储存抓取的数据 echo "<tr> <td>{$v[0]}</td> <td>{$v[1]}</td> <td>{$sex}</td> //将修改后的直接存在变量里输出显示 <td>{$a1[0]}</td> //直接替换成关联表中的数据 <td>{$v[4]}</td> <td><a href='del.php?code={$v[0]}' onclick=\"return confirm('确认删除么?')\">删除</a></td> </tr>"; } ?> </table></body>