php sortable 动态排序未分页版.php

预览图:

<?php

mysql_connect("localhost","root","root");

mysql_select_db("test");

mysql_query("SET CHARACTER SET GB2312");

if($_POST["reorder"]){

$i=1;

foreach ($_POST["fruit"] as $fruit_id){

$query="update `fruit` set `order`='$i' where `id`='$fruit_id'";

mysql_query($query);

$i++;

}

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<title>宋正河作品--php sortable 动态排序未分页版</title>

<style>

ul li{

font-size:14px;

list-style-type:none;

background:#33CCFF;

margin:5px;

padding:5px;

border:1px solid #666666;

width:300px;

cursor:pointer;

}

</style>

<script language="JavaScript" type="text/javascript" src="js/jquery-1.4.2.min.js"></script>

<script language="JavaScript" type="text/javascript" src="js/jquery-ui.js"></script>

<script language="JavaScript" type="text/javascript" src="js/ui.core.js"></script>

<script language="JavaScript" type="text/javascript" src="js/ui.sortable.js"></script>

<script type="text/javascript">

$(document).ready(function(){

$('#fruit_list').sortable();

});

</script>

</head>

<body>

<div align="center">

<form name="form1" method="post" action="">

<ul id="fruit_list">

<?php

$query="select * from `fruit` order by `order` ASC";

$result=mysql_query($query);

while($row=mysql_fetch_assoc($result)){

echo '<li><input type="hidden" name="fruit[]" value="'.$row["id"].'" />'.'ID:'.$row["id"].' | '.'名称:'.$row["name"].' | '.'序号:'.$row["order"].'</li>';

}

?>

</ul>

<input type="submit" name="reorder" value="重新排序" />

</form>

拖动相应的项目进行排序,序号越小越靠前

</div>

</body>

</html>

php sortable 动态排序分页版.php

预览图:

<?php

mysql_connect("localhost","root","root");

mysql_select_db("test");

mysql_query("SET CHARACTER SET GB2312");

//分页函数 调用 $common_func->pages();$total_num为总记录数,$page_id为当前页码,$add为链接地址(可选),$pagesize为新闻条数

function pages($total_num,$page_id,$add,$pagesize){

$total_page=ceil($total_num/$pagesize);

$up=$page_id-1;

$down=$page_id+1;

if($page_id==1){

echo "&lt;&lt;首页&nbsp;";

}else{

echo "<a href=".$add."page_id=1>&lt;&lt;首页</a>&nbsp;";

}

if($up<1){

$up=1;

echo "<span style=\"color:grey;\">&lt;上一页</span>&nbsp;&nbsp;";

}else {

echo "<a href=".$add."page_id=".$up.">&lt;上一页</a>&nbsp;&nbsp;";

}

echo "<select onchange=\"window.location='".$add."page_id='+this.value;\">";

for($i=1;$i<=$total_page;$i++){

if($i==$page_id){

echo "<option value=\"".$i."\" selected=\"selected\">&nbsp;&nbsp;".$i."/".$total_page."&nbsp;&nbsp;</option>";

}else{

echo "<option value=\"".$i."\">&nbsp;&nbsp;".$i."/".$total_page."&nbsp;&nbsp;</option>";

}

}

echo "</select>";

if($down>$total_page){

$down=$total_page;

echo "&nbsp;&nbsp;<span style=\"color:grey;\">下一页&gt;</span>&nbsp;";

}else {

echo "&nbsp;&nbsp;<a href=".$add."page_id=".$down.">下一页&gt;</a>&nbsp;";

}

if($page_id==$total_page){

echo "尾页&gt;&gt;";

}else{

echo "<a href=".$add."page_id=$total_page>尾页&gt;&gt;</a>";

}

echo " 共".$total_num."条记录 每页显示".$pagesize."条";

}

//分页函数

$page_id=intval(trim($_GET["page_id"]));

$page_id=($page_id=="")?"1":$page_id;

$page_id=($page_id>0)?$page_id:"1";

$pagesize=intval(trim($_GET["pagesize"]));

$pagesize=($pagesize=="")?"3":$pagesize;

$pagesize=($pagesize>0)?$pagesize:"3";

$begin=($page_id-1)*$pagesize;

if($_POST["reorder"]){

$i=$begin+1;

foreach ($_POST["fruit"] as $fruit_id){

$query="update `fruit` set `order`='$i' where `id`='$fruit_id'";

mysql_query($query);

$i++;

}

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<title>宋正河作品--php sortable 动态排序分页版</title>

<style>

ul li{

font-size:14px;

list-style-type:none;

background:#33CCFF;

margin:5px;

padding:5px;

border:1px solid #666666;

width:300px;

cursor:pointer;

}

</style>

<script language="JavaScript" type="text/javascript" src="js/jquery-1.4.2.min.js"></script>

<script language="JavaScript" type="text/javascript" src="js/jquery-ui.js"></script>

<script language="JavaScript" type="text/javascript" src="js/ui.core.js"></script>

<script language="JavaScript" type="text/javascript" src="js/ui.sortable.js"></script>

<script type="text/javascript">

$(document).ready(function(){

$('#fruit_list').sortable();

});

</script>

</head>

<body>

<div align="center">

<form name="form1" method="post" action="">

<ul id="fruit_list">

<?php

$query="select * from `fruit` order by `order` ASC";

$result=mysql_query($query);

$total_num=mysql_num_rows($result);

$add="?";

$query=$query." limit $begin,$pagesize";

pages($total_num,$page_id,$add,$pagesize);

$result=mysql_query($query);

while($row=mysql_fetch_assoc($result)){

echo '<li><input type="hidden" name="fruit[]" value="'.$row["id"].'" />'.'ID:'.$row["id"].' | '.'名称:'.$row["name"].' | '.'序号:'.$row["order"].'</li>';

}

?>

</ul>

<input type="submit" name="reorder" value="重新排序" />

</form>

拖动相应的项目进行排序,序号越小越靠前<br />

<a href="?pagesize=<?php echo $total_num;?>">显示全部</a> | <a href="?pagesize=3">分页显示</a>

</div>

</body>

</html>

test.sql

-- phpMyAdmin SQL Dump

-- version 3.1.5-rc1

-- http://www.phpmyadmin.net

--

-- 主机: localhost

-- 生成日期: 2011 年 01 月 08 日 06:22

-- 服务器版本: 5.0.18

-- PHP 版本: 5.2.8

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;

/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;

/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;

/*!40101 SET NAMES utf8 */;

--

-- 数据库: `test`

--

-- --------------------------------------------------------

--

-- 表的结构 `fruit`

--

CREATE TABLE IF NOT EXISTS `fruit` (

`id` int(11) unsigned NOT NULL auto_increment,

`name` varchar(256) NOT NULL,

`order` int(4) NOT NULL,

PRIMARY KEY  (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=gb2312 AUTO_INCREMENT=7 ;

--

-- 导出表中的数据 `fruit`

--

INSERT INTO `fruit` (`id`, `name`, `order`) VALUES

(1, '苹果', 5),

(2, '西瓜', 2),

(3, '菠萝', 1),

(4, '桃子', 4),

(5, '樱桃', 3),

(6, '桔子', 6);

这篇文章是受他人的启发,自己抽空参照网友的文章写的,大家多提意见,原文本空间也顺便转了一下,在它的基础上改进了一些东西,希望大家喜欢,谢谢~

php sortable 动态排序的更多相关文章

  1. ActiveReports 报表应用教程 (9)---交互式报表之动态排序

    在 ActiveReports 中除了提供对数据源进行排序的功能之外,还提供了最终用户排序功能,最终用户可以对报表进行区域内排序和整个数据源排序,结合数据钻取.过滤等功能可以让用户更方便地分析报表数据 ...

  2. linq扩展之动态排序

    前两天看QQ群里面,一位朋友问的问题,说在linq中怎么实现动态排序呢,自己想了半天,没有头绪,网上找了下相关的资料,看了下,收益挺多,记录下来. 之前我们没有如果不知道动态排序的方法的话,我们可能会 ...

  3. excel动态去重和动态排序

    其实去重和排序的方法很多,没有哪一种更好,实时去重总会省一些时间,刚好也练习了下数组公式 动态去重: =IF(ROW()<=COUNTA(员工基础数据!H:H),INDEX(员工基础数据!H:H ...

  4. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(17)-LinQ动态排序

    原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(17)-LinQ动态排序 首先修复程序中的一个BUG这个BUG在GridPager类中,把sord修改为s ...

  5. LinQ动态排序

    LinQ动态排序 首先修复程序中的一个BUG这个BUG在GridPager类中,把sord修改为sort这个名称填写错误,会导致后台一直无法获取datagrid的排序字段 本来是没有这一讲的,为了使2 ...

  6. 写一个针对IQueryable<T>的扩展方法支持动态排序

    所谓的动态排序是指支持任意字段.任意升序降序的排序.我们希望在客户端按如下格式写: localhost:8000/api/items?sort=titlelocalhost:8000/api/item ...

  7. Java如何操作对象(bean)进行动态排序?

    原文出自:https://blog.csdn.net/seesun2012 简介如题:Java如何操作对象(bean)进行动态排序?Java实体类(bean)动态排序? 原理:利用反射根据指定的属性值 ...

  8. 动态排序JavaBean

    Java中如果对对象排序可以考虑实现Comparable接口,但是需要排序的属性一旦指定就不能再修改.BeanUtils组件提供了对JavaBean动态排序的支持,即可以在运行时指定排序的属性.实例运 ...

  9. MySQL 按照数据库表字段动态排序 查询列表信息

    MySQL 按照数据库表字段动态排序 查询列表信息 背景描述 项目中数据列表分页展示的时候,前端使用的Table组件,每列自带对当前页的数据进行升序或者降序的排序. 但是客户期望:随机点击某一列的时候 ...

随机推荐

  1. photoshop菜单显示不全的解决方法

    photoshop菜单显示不全? 解决方法,选择菜单 编辑->菜单,下拉菜单选择photoshop默认值

  2. ArcGIS Engine -- 常用方法

    空间关系 计算两点间距离 feature平移 计算范围 得到点集合的n倍Envelope范围 查询 查询要素,返回多个要素union后的Geometry 查找图层 得到地图上图层列表 根据名称在地图上 ...

  3. Linux SHELL脚本

    在Linux系统中,虽然有各种各样的图形化接口工具,但是sell仍然是一个非常灵活的工具.Shell不仅仅是命令的收集,而且是一门非常棒的编程语言.可以通过使用shell使大量的任务自动化,shell ...

  4. Android SurfaceView + MediaPlayer实现分段视频无缝播放

    Android当中实现视频播放的方式有两种,即:通过VideoView实现或者通过SurfaceView + MediaPlayer实现. 由浅至深,首先来看下想要在Android上播放一段视频,我们 ...

  5. PowerDesigner建立与数据库的连接,以便生成数据库和从数据库生成到PD中。

    第一步,打开PD15,找到[Database],如图所示: 第二步,点击新建按钮,创建一个新的ODBC连接. 第三步,这里选择系统数据源,并选择Oracle 第四步,这里需要注意,服务器需要写的是Or ...

  6. BZOJ 2743 采花(树状数组)

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2743 题意:给出一个数列,每个询问查询[L,R]中至少出现两次的数字有多少种? 思路:(1 ...

  7. 【POJ】3398 Perfect Service

    1. 题目描述某树形网络由$n, n \in [1, 10^4]$台计算机组成.现从中选择一些计算机作为服务器,使得每当普通计算机恰好与一台服务器连接(并且不超过一台).求需要指定服务器的最少数量 2 ...

  8. 大数据工具——Splunk

    Splunk是机器数据的引擎.使用 Splunk 可收集.索引和利用所有应用程序.服务器和设备(物理.虚拟和云中)生成的快速移动型计算机数据 .从一个位置搜索并分析所有实时和历史数据. 使用 Splu ...

  9. Android 用户界面---拖放(Drag and Drop)(三)

      设计拖放操作 本节主要内容如下: 1.  如何开始拖拽: 2.  在拖拽期间如何响应事件: 3.  如何响应落下事件: 4.  如何结束拖放操作. 开始拖拽 用户使用一个拖拽手势开始拖拽,通常是在 ...

  10. PHPStorm/webstorm tips

    phpstorm对于使用PHP开发web的人员来说,是一个非常不错的编辑开发IDE,以前用过sublime,但是相比于storm,sublime在浏览legacy代码,类代码编辑方面明显要逊色不少.同 ...