students.php代码:
//判断当前页
$page = empty($_GET['page']) ? 1 : $_GET['page']; // 表达式 ? true : false;
$link = mysqli_connect('','root','');
if(!$link){
exit('mysql link fail');
}
mysqli_set_charset($link,'utf8');
mysqli_select_db($link,'test');
//--------------分页开始----------------
//求出总条数
$sql = 'select count(*) as count from students'; //此处as为了便于取值
$res = mysqli_query($link,$sql);
$pageNum = mysqli_fetch_assoc($res); //返回一个关联数组count=>13
$count = $pageNum['count']; // 取值
//每页显示5条数据
$num = 5;
// 根据每页显示数求总页数
$pageCount = ceil($count/$num); // 向上取整
//根据总页数求出来偏移量
$offset = ($page-1)*$num;
//---------------分页结束-----------------
// select * from students limit 0,5
$sql = 'select * from students limit '.$offset.','.$num;
$query = mysqli_query($link,$sql);
echo '<table width="600px" border="1px">';
echo '<th>id</th><th>姓名</th><th>年龄</th><th>身高</th>
<th>性别</th><th>操作</th>';
while($res = mysqli_fetch_assoc($query)){
echo '<tr>';
echo "<td>{$res['id']}</td>";
echo "<td>{$res['name']}</td>";
echo "<td>{$res['age']}</td>";
echo "<td>{$res['high']}</td>";
echo "<td>{$res['gender']}</td>";
echo "<td><a href='del.php?id={$res['id']}'>删除</a>/
<a href='update.php?id={$res['id']}'>修改</a></td>";
echo '</tr>';
}
echo '</table>';
echo '<br/>';
echo '<a href="add.html" style="margin-left:550px">
<input type="button" value="添加数据"></a><br/>';
/* <?=$pageCount?> 相当于 <?php echo $pageCount?>*/
$next = $page + 1;
$pre = $page - 1;
$next = $next > $pageCount ? $pageCount : $next;
$pre = $pre < 1? 1 : $pre;
<a href="students.php?page=1">首页</a>
<a href="students.php?page==$pre">上一页</a>
<a href="students.php?page==$next">下一页</a>
<a href="students.php?page==$pageCount">尾页</a>
del.php代码
$id = $_GET['id'];
$link = mysqli_connect('','root','');
if(!$link){
exit('mysql link fail');
}
mysqli_set_charset($link,'utf8');
mysqli_select_db($link,'test');
$sql = "delete from students where id='{$id}'";
$res = mysqli_query($link,$sql);
if($res){
echo '删除成功<br/>';
echo '<a href="students.php">返回</a>';
}else{
echo '删除失败';
}
update.php代码:
$id = $_GET['id'];
$link = mysqli_connect('','root','');
if(!$link){
exit('mysql link fail');
}
mysqli_set_charset($link,'utf8');
mysqli_select_db($link,'test');
$sql = "select * from students where id='{$id}'";
$query = mysqli_query($link,$sql);
$res = mysqli_fetch_assoc($query);
<html>
<head>
<meta charset='utf-8' />
<title>修改</title>
</head>
<body>
<form action='doupdate.php'>
<label>姓名:</label>
<input type='text' name='name' value=' echo $res['name'] '><br/>
<label>年龄:</label>
<input type='text' name='age' value=' echo $res['age'] '><br/>
<label>身高:</label>
<input type='text' name='high' value=' echo $res['high'] '><br/>
<label>性别:</label>
<input type='text' name='gender' value=' echo $res['gender'] '><br/>
<input type="hidden" name='id' value=' echo $res['id'] '>
<input type='submit' value='提交修改'>
</form>
</body>
</html>
doupate.php代码:
$id = $_GET['id'];
$link = mysqli_connect('','root','');
if(!$link){
exit('mysql link fail');
}
mysqli_set_charset($link,'utf8');
mysqli_select_db($link,'test');
$sql = "update students set name='{$_GET['name']}',age='{$_GET['age']}',
high='{$_GET['high']}',gender='{$_GET['gender']}' where id='{$id}'";
$query = mysqli_query($link,$sql);
if($query){
echo '更新成功<br/>';
echo '<a href="students.php">返回查看</a>';
}else{
echo '修改失败';
}
add.html代码:
<html>
<head>
<meta charset="utf-8" />
<title>添加数据</title>
</head>
<body>
<form action="doadd.php">
<label>姓名:</label>
<input type='text' name='name'><br/>
<label>年龄:</label>
<input type='text' name='age'><br/>
<label>身高:</label>
<input type='text' name='high'><br/>
<label>性别:</label>
男<input type='radio' name='gender' value="1">
女<input type='radio' name='gender' value="0">
保密<input type='radio' name='gender' value="2">
<br/>
<input type='submit' value='添加'>
</form>
</body>
</html>
doadd.php代码:
//$password = md5($_GET['password']); 加密密码
$GD = ['1'=>'男','0'=>'女','2'=>'保密'];
$name = $_GET['name'];
$age = $_GET['age'];
$high = $_GET['high'];
$gender = $GD[$_GET['gender']];
$link = mysqli_connect('','root','');
if(!$link){
exit('connect sql fail');
}
mysqli_set_charset($link,'utf8');
mysqli_select_db($link,'test');
$sql = "insert into students (name,age,high,gender) values
('$name',$age,$high,'$gender')";
$res = mysqli_query($link,$sql);
if($res){
echo '添加成功<br/>';
echo '<a href="students.php">返回首页</a>';
}else{
echo '添加失败';
}
mysqli_close($link);
首先实现删除和修改:
由首页将id传送过来,进行指定数据的删除,删除成功即可返回首页。
可以看到数据已经删除完成。
点击更新来到更新页,填写需要修改的信息,利用form表单发送GET请求,由doupdate来接收请求并处理。
刚进入页面默认是修改之前的信息,至于要修改信息并提交。
修改成功后即可返回首页,可以看到地址栏的GET请求发送的数据。
可以看到修改成功。
接下在首页来增加(添加功能)。
可以看到首页的添加按钮。
进入添加数据页面,填写需要添加的数据。
添加成功后由反馈信息。点击返回首页。
可以看到数据添加成功。
添加数据的页面的代码。
处理添加数据请求的php代码。
添加分页功能。
逻辑判断 ? true : false 这个表达式,与c与c++中用法一致。
这个表达式的执行结果为:如果逻辑判断返回为true则执行?后true部分的代码,否则 则执行false部分的代码。
<?=$pageCount?> 相当于 <?php echo $pageCount?>
动态实现分页基于limit语句。
可以看到分页成功。