PHP原生信息管理例子

Posted 去糖不加冰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP原生信息管理例子相关的知识,希望对你有一定的参考价值。

php原生混编学生信息列表页面,仅供学习
模糊查询是用ajax实现的本章只介绍php输出的信息;

连接数据库是采用了单独的一个php文件,已在头部进行了引入。
一、列表块

<tbody>
		<?php
		/*
		$status是用于判断session状态
		$connects是数据库连接
		*/
		if(isset($status) && $status == true && $connects)
		    $page = $_GET['page'];//接收页码
		    $rowNumber = $_GET['rowNum'];//接收行数
		    $page = !empty($page) && is_numeric($page) ? $page : '1';//判断$page是否有值,没有为默认值
		    $rowNumber = !empty($rowNumber) && is_numeric($rowNumber) ? $rowNumber : '10';//判断$rowNumber同样的方法
		    $pageindex = ceil(($page - 1) * $rowNumber);//计算当前页码开始行数
		    $sql = 'select * from studentmessage limit ' . $pageindex . ',' . $rowNumber;
		    $querys = mysqli_query($connects,$sql);//执行sql语句
		    
		    while($querys && $rowshow = mysqli_fetch_assoc($querys))//while循环查询到的数据
		        echo '<tr class="$linecolor retrieve">
				<td class="sorting_1">'. $rowshow['SId'] .'</td>
				<td class=" ">' . $rowshow['Sname'] . '</td>
				<td class=" ">' . $rowshow['class'] . '</td>
				<td class=" ">' . $rowshow['birthday'] . '</td>
				<td class=" ">' . ( $rowshow['sex'] == 0 ? '男' : '女' ). '</td>
				<td class=" ">' . $rowshow['nation'] . '</td>
				<td class=" "><a href="studentedit.php?id='.$rowshow['id'].'" class="btn btn-info btn-xs">编辑</a>&nbsp;&nbsp;<a
					href="studentdelete.php?id='.$rowshow['id'].'" class="btn btn-danger btn-xs">删除</a></td>
			</tr>';
		   
		  
		
		?>
</tbody>

每次进入页面会获取get参数,根据页码和每页要显示的行数求出每页开始的那一行,然后使用sql语句查询limit分页,循环并将结果输出。

二、左下角记录数

<div class="dataTables_info" id="dataTables-example_info" role="alert" aria-live="polite" aria-relevant="all">显示
	 <?php 
	    $sql = 'select count(id) from studentmessage';//统计数量
	    $querys = mysqli_query($connects,$sql);//执行sql语句
	    $countNum = mysqli_fetch_row($querys);//取出数据
	    $pageout = ceil($countNum[0] / $rowNumber);//算出尾页页码
	    
	    /*
	    计算当前页开始行数到结束行数,
	    比如每页十行第一页 应输出1-10,
	    如果是最后一页应输出 1-数据总数
	    */
	echo   ($page * $rowNumber - $rowNumber + ($countNum[0] != 0 ? 1 : 0)) . ' -' 
	 . ($countNum != 0 ? (($countNum[0] % $rowNumber > 0 && $page == $pageout) ? ($countNum[0] % $rowNumber) + ($page * $rowNumber - $rowNumber) : ($page * $rowNumber)): 0);
	?> ,总记录数: 
	<?php
	echo $countNum[0];//数据总数
	?>
</div>

三、分页块

<ul class="pagination">
	<li class="paginate_button previous <?php echo ($page > 1 ? '' :'disabled');?> "aria-controls="dataTables-example" tabindex="0" id="dataTables-example_previous">
	    <a <?php echo ($page > 1 ? ('href="studentshow.php?page=' . ($page - 1) .'&rowNum=' . $rowNumber .'"')  : '')?>>上一页</a></li>
		 <?php
		 
		 for($i = 1; $i < $pageout + 1 ; $i++)
		     echo '<li class="paginate_button '. ($i == $page ? 'active' : '' ).'" aria-controls="dataTables-example" tabindex="0">
		     <a '. ($i == $page ? '' : 'href="studentshow.php?page='. $i . '&rowNum='. $rowNumber .'"' ).'>'. $i .'</a></li>';
		 
		 //echo $pageout;
		 ?>
	<li class="paginate_button next <?php echo ($page < $pageout  ? '' :'disabled');?> " aria-controls="dataTables-example" tabindex="0" id="dataTables-example_next"><a <?php echo   ($page < $pageout ? ('href="studentshow.php?page=' . ($page + 1) .'&rowNum=' . $rowNumber .'"')  : '') ?>>
	    下一页</a></li>
</ul>

分页部分比较简单如果当前页不再第一页就给上一页添加跳转(页码-1),下一页刚好相反,中间是每一页页码输出。
总结:
混编是php与html写在同一个文件里提高页面请求效率,通过get方式重新跳转本页php获取参数,展示下一页的页面信息,行数是select通过选择触发onchange事件获取参数并拼接url使用window.location.href="";跳转实现更换行参数。

以上是关于PHP原生信息管理例子的主要内容,如果未能解决你的问题,请参考以下文章

wp列出parenthises()中包含帖子总数的类别一些有用的例子

PHP会话管理和控制

php权限管理如何实现

PHP 获取服务器详细信息的原生方法

云原生时代政务应用管理新模式探究

使用 C++ 在 Windows 中检索 CPU 负载百分比总数