PHP关于表单提交 后 post get分页
- //简单加密字符串函数
- function str_encode($str){
- $t = implode("",unpack("H*",$str));
- return base64_encode($t);
- }
- //简单解密字符串函数
- function str_decrypt($str){
- $t = base64_decode($str);
- $s = "";
- for($i=0;$i <strlen($t);$i+=4)
- $s .= @pack("H4",substr($t,$i,4));
- return $s;
- }
- //分页函数
- function multi($num, $perpage, $curpage, $mpurl, $maxpages = 0, $page = 10, $autogoto = true, $simple = false) {
- $multipage = '';
- $mpurl .= strpos($mpurl, '?') ? '&' : '?';
- $realpages = 1;
- if ($num > $perpage) {
- $offset = 2;
- $realpages = @ceil($num / $perpage);
- $pages = $maxpages && $maxpages < $realpages ? $maxpages : $realpages;
- if ($page > $pages) {
- $from = 1;
- $to = $pages;
- } else {
- $from = $curpage - $offset;
- $to = $from + $page - 1;
- if ($from < 1) {
- $to = $curpage + 1 - $from;
- $from = 1;
- if ($to - $from < $page) {
- $to = $page;
- }
- } elseif ($to > $pages) {
- $from = $pages - $page + 1;
- $to = $pages;
- }
- }
- $multipage = ($curpage - $offset > 1 && $pages > $page ? '<a href="' . $mpurl . 'page=1" class="first"' . $ajaxtarget . '>1 ...</a>' : '') .
- ($curpage > 1 && !$simple ? '<a href="' . $mpurl . 'page=' . ($curpage - 1) . '" class="prev"' . $ajaxtarget . '>‹‹</a>' : '');
- for($i = $from; $i <= $to; $i++) {
- $multipage .= $i == $curpage ? '<strong>' . $i . '</strong>' :
- '<a href="' . $mpurl . 'page=' . $i . ($ajaxtarget && $i == $pages && $autogoto ? '#' : '') . '"' . $ajaxtarget . '>' . $i . '</a>';
- }
- $multipage .= ($curpage < $pages && !$simple ? '<a href="' . $mpurl . 'page=' . ($curpage + 1) . '" class="next"' . $ajaxtarget . '>››</a>' : '') .
- ($to < $pages ? '<a href="' . $mpurl . 'page=' . $pages . '" class="last"' . $ajaxtarget . '>... ' . $realpages . '</a>' : '') .
- (!$simple && $pages > $page && !$ajaxtarget ? '<kbd><input type="text" name="custompage" size="3" onkeydown="if(event.keyCode==13) {window.location=\'' . $mpurl . 'page=\'+this.value; return false;}" /></kbd>' : '');
- $multipage = $multipage ? '</div><DIV id="quicklinks">' . (!$simple ? '<em> ' . $num . ' </em>' : '') . $multipage . '</div>' : '';
- }
- $maxpage = $realpages;
- return $multipage;
- }
上面的函数是在网上找的原分页函数,此函数用于GET方法的页面直接使用就OK了,用于POST页面,只需要在函数内的页面链接<A>标签里增加一个onclick事件函数,如下:<A href="#" onclick="gotoPage(1);">第一页</A>,然后在页面里增加一个javascript方法见下:
- <script language="javascript">
- //函数跳转到指定页面
- function gotoPage(page)
- {
- document.getElementById("page").value = page; //隐藏表单的页控件
- document.getElementById("searchForm").submit();
- }
- //函数:回来第1页
- function gotoFirstPage()
- {
- document.getElementById("page").value = 1; //隐藏表单的页控件
- }
- </script>
- <!-- 表单参考如下 -->
- <form name="searchForm" id="searchForm" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
- <!-- 下面是个隐藏页面号码值控件 -->
- <input type="hidden" name="page" id="page" size=30 value="<?php echo $page;?>" />
- <!-- 下面是个查找条件值控件 -->
- <input type="text" name="photoname" id="photoname" size=30 value="<?php echo $photoname;?>" />
- <!-- 提交控钮,注意id和name不要把值设成"submit",我将其改为"submit1" -->
- <!-- 不然在gotoPage()函数里与表单的提交事件submit()有冲突,导至函数不运行 -->
- <!-- 这个提交按钮还增加了一个单击事件gotoFirstPage() -->
- <!-- 作用就是无论何时当你点击查找按钮后页面都会是第1页,其实就是将隐藏的页面控制值设为1 -->
- <input name="submit1" id="submit1" onclick="gotoFirstPage()" type="submit" value="查 找" size=30 />
- </form>
- <!-- 当然这样改了后,还应该改改原来的分页函数,1.增页分页码链接的单击事件 -->
- <!-- 2.让<A>标签href的值为"#",作用当然就是不要<A>标签点击后,页面跳转,只让单击事件来提交表单取得指定页面 -->
- <!-- 我尽量在少改动原函数的情况下,只在href后面增加"#?",因为这个原函数在href后面带有"?"号,实际我只要在在最前面增加一个#号就OK,原函数修改如下 -->
- <?php
- //分页函数
- function multi($num, $perpage, $curpage, $mpurl, $maxpages = 0, $page = 10, $autogoto = true, $simple = false) {
- $multipage = '';
- $mpurl .= strpos($mpurl, '?') ? '&' : '?';
- $realpages = 1;
- if ($num > $perpage) {
- $offset = 2;
- $realpages = @ceil($num / $perpage);
- $pages = $maxpages && $maxpages < $realpages ? $maxpages : $realpages;
- if ($page > $pages) {
- $from = 1;
- $to = $pages;
- } else {
- $from = $curpage - $offset;
- $to = $from + $page - 1;
- if ($from < 1) {
- $to = $curpage + 1 - $from;
- $from = 1;
- if ($to - $from < $page) {
- $to = $page;
- }
- } elseif ($to > $pages) {
- $from = $pages - $page + 1;
- $to = $pages;
- }
- }
- //注意下面href后面我增加了一个#号,让链接失效,在后面增加onclick函数
- $multipage = ($curpage - $offset > 1 && $pages > $page ? '<a href="#' . $mpurl . 'page=1" onclick="gotoPage(1);" class="first"' . $ajaxtarget . '>1 ...</a>' : '') .
- ($curpage > 1 && !$simple ? '<a href="#' . $mpurl . 'page=' . ($curpage - 1) . '" onclick="gotoPage(' . ($curpage - 1) . ');" class="prev"' . $ajaxtarget . '>‹‹</a>' : '');
- for($i = $from; $i <= $to; $i++) {
- $multipage .= $i == $curpage ? '<strong>' . $i . '</strong>' :
- '<a href="#' . $mpurl . 'page=' . $i . ($ajaxtarget && $i == $pages && $autogoto ? '#' : '') . '"' . $ajaxtarget . ' onclick="gotoPage(' . $i .');" target="_blank" target="_blank">' . $i . '</a>';
- }
- $multipage .= ($curpage < $pages && !$simple ? '<a href="#' . $mpurl . 'page=' . ($curpage + 1) . '" onclick="gotoPage(' . ($curpage + 1) . ');" class="next"' . $ajaxtarget . '>››</a>' : '') .
- ($to < $pages ? '<a href="#' . $mpurl . 'page=' . $pages . '" onclick="gotoPage(${pages});" class="last"' . $ajaxtarget . '>... ' . $realpages . '</a>' : '') .
- //下面这一行注释掉,改了一下超过10页,可以手动输入页码跳转到指定页面函数
- // (!$simple && $pages > $page && !$ajaxtarget ? '<kbd><input type="text" name="custompage" size="3" onkeydown="if(event.keyCode==13) {window.location=\'' . $mpurl . 'page=\'+this.value; return false;}" /></kbd>' : '');
- (!$simple && $pages > $page && !$ajaxtarget ? '<kbd><input type="text" name="custompage" size="3" onkeydown="if(event.keyCode==13) {gotoPage(this.value);}" /></kbd>' : '');
- $multipage = $multipage ? '</div><DIV id="quicklinks">' . (!$simple ? '<em> ' . $num . ' </em>' : '') . $multipage . '</div>' : '';
- }
- $maxpage = $realpages;
- return $multipage;
- }
- ?>
PHP关于表单提交 后 post get分页的更多相关文章
- AngularJS 表单提交后显示验证信息与失焦后显示验证信息
虽然说AngularJS的实时表单验证非常有用,非常高效方便,但是当用户还没有完成输入时便弹出一个错误提示,这种体验是非常糟糕的. 正常的表单验证逻辑应该是在用户提交表单后或完成当前字段中的输入后,再 ...
- 怎么实现form表单提交后不重新刷新当前页面
怎么实现表单提交后不重新刷新当前页面 如何实现表单提交后不重新刷新当前页面 <form name='form1' id='form1' action='/xbcw/cw/xx_xx.ac ...
- struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input
原文地址:struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input jsp页面 1 function dosearch() {2 if ($(&q ...
- phpcms v9自定义表单提交后返回上一页实现方法
PHPcms v9中提交自定义表单后默认都是回到首页的,是不是感觉很不爽! 接下来,就说下phpcms v9自定义表单提交后返回上一页实现方法. 1.找到这个文件 phpcms\modules\for ...
- DedeCMS实现自定义表单提交后发送指定QQ邮箱法
https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=monline_3_dg&wd=dedecms 邮箱&oq=d ...
- form + iframe 获取表单提交后返回的数据
原理: submit 提交表单没有回调函数,但是可以用iframe来接收返回结果,最后进行格式转换就ok了: 原文地址: http://blog.csdn.net/simeng_1016/articl ...
- flask用宏渲染表单模板时,表单提交后,如果form.validate_on_submit()返回的是false的可能原因
flask用宏渲染表单模板时,表单提交后,提交的内容符合DataRequired()校验, 但是form.validate_on_submit()返回的是False, 原因可能是表单模板中的<f ...
- DedeCMS实现自定义表单提交后发送指定QQ邮箱的方法
如月cruyue在做DedeCMS自定义表单发送邮箱的教程,发现大部分都是在php文件里写死固定字段内容,这样虽然也能实现自定义表单提交后发送指定邮箱,但是很不智能,如月cruyue想要一个我们自定义 ...
- 通过jquery实现form表单提交后不跳转页面,保留当前页面
jquery代码: <script type="text/javascript" src="../js/jquery-1.8.3.min.js">& ...
随机推荐
- js一些小知识点
1.isNaN(),里面传一个参数,用来判断传入的值是否是数字.可以用来做一些简单的表单判断. 2.用innerHTML属性可以操作(包括获取和设置)span的内容,实际上对所有非表单元素都可以用in ...
- cocos2d-3.x 创建动画
1.多文件帧序列动画 TrademarkAnimation.h #ifndef __TRADEMARK_ANIMATION_H__ #define __TRADEMARK_ANIMATION_H__ ...
- linux下svn目录管理
linux 下安装的svn目录文件: /data/svndata/winne/conf/passwd 是配置用户密码的文件路径
- Python编码问题整理【转】
认识常见编码 GB2312是中国规定的汉字编码,也可以说是简体中文的字符集编码 GBK 是 GB2312的扩展 ,除了兼容GB2312外,它还能显示繁体中文,还有日文的假名 cp936:中文本地系统是 ...
- 2、变量var关键字
我们在看js声明变量的时候,经常会发现有的变量前会带var 但又的则没有,那么这究竟有什么区别呢? 如果这种情况发生在函数里的话, 加var定义的变量是局部变量,不加var定义的就成了全局变量. // ...
- iOS开发极光推送显示 开发证书没有通过验证 是否重新上传证书?解决方法
1.证书密码错误 2证书环境不匹 3导证书时因手误把私钥导出来了,而不是证书 1.当前上传的p12证书密码输入有误: 2. 证书导出的时候展开了证书,把个人私钥导了出来,导证书的时候请不要展开证书: ...
- spring ,mybatis多数据源
同一个项目有时会涉及到多个数据库,也就是多数据源.多数据源又可以分为两种情况: 1)两个或多个数据库没有相关性,各自独立,其实这种可以作为两个项目来开发.比如在游戏开发中一个数据库是平台数据库,其 ...
- 多尺度二维离散小波重构waverec2
clc,clear all,close all; load woman; [c,s]=wavedec2(X,2,'haar');%进行2尺度二维离散小波分解.分解小波函数haar %多尺度二维离散小波 ...
- CABasicAnimation 几种停止的回调
一.编写一个简单的动画,使一个UIview从屏幕的左上角移动到左下角,间隔时间3S // // ViewController.m // CAAnimationTest // // Created by ...
- bullet_01
#include <btBulletDynamicsCommon.h> #include <osgViewer/Viewer> #include <map> #in ...