Browse Source

排序字段名由order改为s_number并增加数据库升级脚本

star7th 9 năm trước cách đây
mục cha
commit
283fa2ce4e

+ 3 - 3
Application/Home/Controller/CatalogController.class.php

@@ -30,7 +30,7 @@ class CatalogController extends BaseController {
     //保存目录
     public function save(){
         $cat_name = I("cat_name");
-        $order = I("order/d") ? I("order/d") : 99 ;
+        $s_number = I("s_number/d") ? I("s_number/d") : 99 ;
         $cat_id = I("cat_id/d")? I("cat_id/d") : 0;
         $item_id =  I("item_id/d");
 
@@ -41,7 +41,7 @@ class CatalogController extends BaseController {
         }
 
         $data['cat_name'] = $cat_name ;
-        $data['order'] = $order ;
+        $data['s_number'] = $s_number ;
         $data['item_id'] = $item_id ;
         
 
@@ -68,7 +68,7 @@ class CatalogController extends BaseController {
     public function catList(){
         $item_id = I("item_id/d");
         if ($item_id > 0 ) {
-            $ret = D("Catalog")->where(" item_id = '$item_id' ")->order(" 'order', addtime asc  ")->select();
+            $ret = D("Catalog")->where(" item_id = '$item_id' ")->order(" 's_number', addtime asc  ")->select();
         }
         if ($ret) {
            $this->sendResult($ret);

+ 9 - 9
Application/Home/Controller/ItemController.class.php

@@ -5,7 +5,7 @@ class ItemController extends BaseController {
 	//项目列表页
     public function index(){
     	$login_user = $this->checkLogin();        
-    	$items  = D("Item")->where("uid = '$login_user[uid]' or item_id in ( select ".C('DB_PREFIX')."item_id from item_member where uid = '$login_user[uid]' ) ")->select();
+    	$items  = D("Item")->where("uid = '$login_user[uid]' or item_id in ( select item_id from ".C('DB_PREFIX')."item_member where uid = '$login_user[uid]' ) ")->select();
         
         $share_url = get_domain().__APP__.'/uid/'.$login_user['uid'];
 
@@ -20,7 +20,7 @@ class ItemController extends BaseController {
         $uid = I("uid/d");
         $show_user = D("User")->where(" uid = '$uid' ")->find();
         if ($show_user) {
-            $items  = D("Item")->where(" password = '' and  ( uid = '$show_user[uid]' or item_id in ( select ".C('DB_PREFIX')."item_id from item_member where uid = '$show_user[uid]' ) ) ")->select();
+            $items  = D("Item")->where(" password = '' and  ( uid = '$show_user[uid]' or item_id in ( select item_id from ".C('DB_PREFIX')."item_member where uid = '$show_user[uid]' ) ) ")->select();
             $this->assign("items" , $items);
             $this->assign("show_user" , $show_user);
             $this->assign("login_user" , $login_user);
@@ -85,16 +85,16 @@ class ItemController extends BaseController {
         //是否有搜索词
         if ($keyword) {
             $keyword = mysql_escape_string($keyword);
-            $pages = D("Page")->where("item_id = '$item_id' and ( page_title like '%{$keyword}%' or page_content like '%{$keyword}%' ) ")->order(" `order` asc  ")->select();
+            $pages = D("Page")->where("item_id = '$item_id' and ( page_title like '%{$keyword}%' or page_content like '%{$keyword}%' ) ")->order(" `s_number` asc  ")->select();
         
         }else{
             //获取所有父目录id为0的页面
-            $pages = D("Page")->where("cat_id = '0' and item_id = '$item_id' ")->order(" `order` asc  ")->select();
+            $pages = D("Page")->where("cat_id = '0' and item_id = '$item_id' ")->order(" `s_number` asc  ")->select();
             //获取所有目录
-            $catalogs = D("Catalog")->where("item_id = '$item_id' ")->order(" `order` asc  ")->select();
+            $catalogs = D("Catalog")->where("item_id = '$item_id' ")->order(" `s_number` asc  ")->select();
             if ($catalogs) {
                 foreach ($catalogs as $key => &$catalog) {
-                    $temp = D("Page")->where("cat_id = '$catalog[cat_id]' ")->order(" `order` asc  ")->select();
+                    $temp = D("Page")->where("cat_id = '$catalog[cat_id]' ")->order(" `s_number` asc  ")->select();
                     $catalog['pages'] = $temp ? $temp: array();
                 }
             }
@@ -199,12 +199,12 @@ class ItemController extends BaseController {
 
         $item = D("Item")->where("item_id = '$item_id' ")->find();
         //获取所有父目录id为0的页面
-        $pages = D("Page")->where("cat_id = '0' and item_id = '$item_id' ")->order(" `order` asc  ")->select();
+        $pages = D("Page")->where("cat_id = '0' and item_id = '$item_id' ")->order(" `s_number` asc  ")->select();
         //获取所有目录
-        $catalogs = D("Catalog")->where("item_id = '$item_id' ")->order(" `order` asc  ")->select();
+        $catalogs = D("Catalog")->where("item_id = '$item_id' ")->order(" `s_number` asc  ")->select();
         if ($catalogs) {
             foreach ($catalogs as $key => &$catalog) {
-                $temp = D("Page")->where("cat_id = '$catalog[cat_id]' ")->order(" `order` asc  ")->select();
+                $temp = D("Page")->where("cat_id = '$catalog[cat_id]' ")->order(" `s_number` asc  ")->select();
                 $catalog['pages'] = $temp ? $temp: array();
             }
         }

+ 1 - 1
Application/Home/Controller/MemberController.class.php

@@ -56,7 +56,7 @@ class MemberController extends BaseController {
     public function getList(){
         $item_id = I("item_id/d");
         if ($item_id > 0 ) {
-            $ret = D("ItemMember")->where(" item_id = '$item_id' ")->order(" 'order', addtime asc  ")->select();
+            $ret = D("ItemMember")->where(" item_id = '$item_id' ")->order(" addtime asc  ")->select();
         }
         if ($ret) {
            $this->sendResult($ret);

+ 3 - 3
Application/Home/Controller/PageController.class.php

@@ -84,7 +84,7 @@ class PageController extends BaseController {
         $page_content = I("page_content");
         $cat_id = I("cat_id/d")? I("cat_id/d") : 0;
         $item_id = I("item_id/d")? I("item_id/d") : 0;
-        $order = I("order/d")? I("order/d") : 99;
+        $s_number = I("s_number/d")? I("s_number/d") : 99;
 
         $login_user = $this->checkLogin();
         if (!$this->checkItemPermn($login_user['uid'] , $item_id)) {
@@ -94,7 +94,7 @@ class PageController extends BaseController {
 
         $data['page_title'] = $page_title ;
         $data['page_content'] = $page_content ;
-        $data['order'] = $order ;
+        $data['s_number'] = $s_number ;
         $data['item_id'] = $item_id ;
         $data['cat_id'] = $cat_id ;
         $data['addtime'] = time();
@@ -111,7 +111,7 @@ class PageController extends BaseController {
                 'cat_id'=>$page['cat_id'],
                 'page_title'=>$page['page_title'],
                 'page_content'=>$page['page_content'],
-                'order'=>$page['order'],
+                's_number'=>$page['s_number'],
                 'addtime'=>$page['addtime'],
                 'author_uid'=>$page['author_uid'],
                 'author_username'=>$page['author_username'],

+ 148 - 0
Application/Home/Controller/UpdateController.class.php

@@ -0,0 +1,148 @@
+<?php
+namespace Home\Controller;
+use Think\Controller;
+class UpdateController extends BaseController {
+    
+ 	//升级数据库
+    public function db(){
+    	if (strtolower(C("DB_TYPE")) == 'mysql' ) {
+    		$this->mysql();
+    	}
+    	
+    }
+    //升级mysql数据库  
+    public function mysql(){
+
+    	//user表的username字段增大了长度,防止长邮箱的用户名注册不了
+    	$sql = "alter table ".C('DB_PREFIX')."user modify column username varchar(50) CHARACTER SET utf8 NOT NULL DEFAULT '' ";
+    	M("Catalog")->execute($sql);
+
+    	//item表增加last_update_time字段
+    	$columns = M("item")->getDbFields();
+    	if ($columns) {
+    		$has_it = 0 ;//是否存在该字段
+    		foreach ($columns as $key => $value) {
+    			if ($value == 'last_update_time') {
+    				$has_it = 1 ;
+    			}
+    		}
+    		if ($has_it === 0) {
+    			$sql = "ALTER TABLE ".C('DB_PREFIX')."item ADD last_update_time INT( 11 ) NOT NULL DEFAULT '0' COMMENT '最后更新时间';";
+    			D("Item")->execute($sql);
+    		}
+    	}
+    	
+
+    	//更改catalog表的order字段名为s_number
+    	$columns = M("Catalog")->getDbFields();
+    	if ($columns) {
+    		foreach ($columns as $key => $value) {
+    			if ($value == 'order') {
+			    	$sql = "ALTER TABLE  `".C('DB_PREFIX')."catalog` CHANGE  `order`  `s_number` INT( 10 ) NOT NULL DEFAULT  '99' COMMENT  '顺序号。数字越小越靠前。若此值全部相等时则按id排序';";
+			    	M("Catalog")->execute($sql);
+    			}
+    		}
+    	}
+
+    	//更改page表的order字段名为s_number
+    	$columns = M("Page")->getDbFields();
+    	if ($columns) {
+    		foreach ($columns as $key => $value) {
+    			if ($value == 'order') {
+			    	$sql = "ALTER TABLE  `".C('DB_PREFIX')."page` CHANGE  `order`  `s_number` INT( 10 ) NOT NULL DEFAULT  '99' COMMENT  '顺序号。数字越小越靠前。若此值全部相等时则按id排序';";
+			    	M("Page")->execute($sql);
+    			}
+    		}
+    	}
+
+    	//更改page_history表的order字段名为s_number
+    	$columns = M("PageHistory")->getDbFields();
+    	if ($columns) {
+    		foreach ($columns as $key => $value) {
+    			if ($value == 'order') {
+			    	$sql = "ALTER TABLE  `".C('DB_PREFIX')."page_history` CHANGE  `order`  `s_number` INT( 10 ) NOT NULL DEFAULT  '99' COMMENT  '顺序号。数字越小越靠前。若此值全部相等时则按id排序';";
+			    	M("PageHistory")->execute($sql);
+    			}
+    		}
+    	}
+
+    	//为catalog表增加addtime索引
+    	$indexs = M("Catalog")->query(" show index from ".C('DB_PREFIX')."catalog");
+    	if ($indexs) {
+    		$has_it = 0 ;//是否存在该索引
+    		foreach ($indexs as $key => $value) {
+    			if ($value['column_name'] =='addtime') {
+    				$has_it = 1 ;
+    			}
+    		}
+    		if ($has_it === 0 ) {
+    			M("Catalog")->execute("ALTER TABLE ".C('DB_PREFIX')."catalog ADD INDEX ( `addtime` ) ;");
+    		}
+    	}
+
+    	//为item表增加addtime索引
+    	$indexs = M("Item")->query(" show index from ".C('DB_PREFIX')."item");
+    	if ($indexs) {
+    		$has_it = 0 ;//是否存在该索引
+    		foreach ($indexs as $key => $value) {
+    			if ($value['column_name'] =='addtime') {
+    				$has_it = 1 ;
+    			}
+    		}
+    		if ($has_it === 0 ) {
+    			M("Item")->execute("ALTER TABLE ".C('DB_PREFIX')."item ADD INDEX ( `addtime` ) ;");
+    		}
+    	}
+
+    	//为page表增加addtime索引
+    	$indexs = M("Page")->query(" show index from ".C('DB_PREFIX')."page");
+    	if ($indexs) {
+    		$has_it = 0 ;//是否存在该索引
+    		foreach ($indexs as $key => $value) {
+    			if ($value['column_name'] =='addtime') {
+    				$has_it = 1 ;
+    			}
+    		}
+    		if ($has_it === 0 ) {
+    			M("page")->execute("ALTER TABLE ".C('DB_PREFIX')."page ADD INDEX ( `addtime` ) ;");
+    		}
+    	}
+
+    	//为page_history表增加addtime索引
+    	$indexs = M("PageHistory")->query(" show index from ".C('DB_PREFIX')."page_history");
+    	if ($indexs) {
+    		$has_it = 0 ;//是否存在该索引
+    		foreach ($indexs as $key => $value) {
+    			if ($value['column_name'] =='addtime') {
+    				$has_it = 1 ;
+    			}
+    		}
+    		if ($has_it === 0 ) {
+    			M("PageHistory")->execute("ALTER TABLE ".C('DB_PREFIX')."page_history ADD INDEX ( `addtime` ) ;");
+    		}
+    	}
+
+    	//为page_history表增加page_id索引
+    	$indexs = M("PageHistory")->query(" show index from ".C('DB_PREFIX')."page_history");
+    	if ($indexs) {
+    		$has_it = 0 ;//是否存在该索引
+    		foreach ($indexs as $key => $value) {
+    			if ($value['column_name'] =='page_id') {
+    				$has_it = 1 ;
+    			}
+    		}
+    		if ($has_it === 0 ) {
+    			M("PageHistory")->execute("ALTER TABLE ".C('DB_PREFIX')."page_history ADD INDEX ( `page_id` ) ;");
+    		}
+    	}
+
+    	echo "OK!";
+
+
+    }
+
+
+
+
+
+}

+ 2 - 2
Application/Home/View/Catalog/edit.html

@@ -23,7 +23,7 @@
             <div class="control-group">
               <label class="control-label" for="inputPassword">序号</label>
               <div class="controls">
-                <input type="text" id="order" placeholder="可选:顺序数字" value="{$Catalog.order}">
+                <input type="text" id="s_number" placeholder="可选:顺序数字" value="{$Catalog.s_number}">
               </div>
             </div>
             <div class="control-group">
@@ -54,4 +54,4 @@
  </div>
 
  <include file="Common/footer" />
- <script src="__PUBLIC__/js/catalog/edit.js"></script>
+ <script src="__PUBLIC__/js/catalog/edit.js?v=1.1.1"></script>

+ 2 - 2
Application/Home/View/Page/edit.html

@@ -17,7 +17,7 @@
                     <select name="cat_id" id="cat_id" tabindex="2"></select>
                 </li>
                 <li>
-                    <input type="text" name="order" id="order" value="{$page.order}" placeholder="可选:顺序数字"  tabindex="3" >
+                    <input type="text" name="s_number" id="s_number" value="{$page.s_number}" placeholder="可选:顺序数字"  tabindex="3" >
                 </li>
                 <li>
                     <!-- 首次添加没有历史版本,不显示 -->
@@ -86,4 +86,4 @@
 <script src="__PUBLIC__/editor.md/plugins/table-dialog/table-dialog.js"></script>
 <script src="__PUBLIC__/editor.md/plugins/reference-link-dialog/reference-link-dialog.js"></script>
 
-<script src="__PUBLIC__/js/page/edit.js?v=1.1"></script>
+<script src="__PUBLIC__/js/page/edit.js?v=1.1.1"></script>

+ 3 - 3
Public/js/catalog/edit.js

@@ -34,16 +34,16 @@ $(function(){
   //保存目录
   $("#save-cat").click(function(){
       var cat_name = $("#cat_name").val();
-      var order = $("#order").val();
+      var s_number = $("#s_number").val();
       var cat_id = $("#cat_id").val();
       $.post(
         "?s=home/catalog/save",
-        {"cat_name": cat_name , "order": order , "item_id": item_id , "cat_id": cat_id  },
+        {"cat_name": cat_name , "s_number": s_number , "item_id": item_id , "cat_id": cat_id  },
         function(data){
           if (data.error_code == 0) {
             $("#delete-cat").hide();
             $("#cat_name").val('');
-            $("#order").val('');
+            $("#s_number").val('');
             $("#cat_id").val('');
             alert("保存成功!");
           }else{

+ 2 - 2
Public/js/page/edit.js

@@ -146,13 +146,13 @@ $(function() {
     var page_title = $("#page_title").val();
     var page_content = $("#page_content").val();
     var item_id = $("#item_id").val();
-    var order = $("#order").val();
+    var s_number = $("#s_number").val();
     saving = true;
     $.post(
       "?s=home/page/save", {
         "page_id": page_id,
         "cat_id": cat_id,
-        "order": order,
+        "s_number": s_number,
         "page_content": page_content,
         "page_title": page_title,
         "item_id": item_id

+ 5 - 5
showdoc.sql

@@ -30,10 +30,10 @@ CREATE TABLE IF NOT EXISTS `catalog` (
   `cat_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '目录id',
   `cat_name` varchar(20) NOT NULL DEFAULT '' COMMENT '目录名',
   `item_id` int(10) NOT NULL DEFAULT '0' COMMENT '所在的项目id',
-  `order` int(10) NOT NULL DEFAULT '99' COMMENT '顺序号。数字越小越靠前。若此值全部相等时则按id排序',
+  `s_number` int(10) NOT NULL DEFAULT '99' COMMENT '顺序号。数字越小越靠前。若此值全部相等时则按id排序',
   `addtime` int(11) NOT NULL DEFAULT '0',
   PRIMARY KEY (`cat_id`),
-  KEY `order` (`order`),
+  KEY `s_number` (`s_number`),
   KEY `addtime` (`addtime`)
 ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COMMENT='目录表' AUTO_INCREMENT=1 ;
 
@@ -90,10 +90,10 @@ CREATE TABLE IF NOT EXISTS `page` (
   `cat_id` int(10) NOT NULL DEFAULT '0',
   `page_title` varchar(50) NOT NULL DEFAULT '',
   `page_content` text NOT NULL,
-  `order` int(10) NOT NULL DEFAULT '99' COMMENT '顺序号。数字越小越靠前。若此值全部相等时则按id排序',
+  `s_number` int(10) NOT NULL DEFAULT '99' COMMENT '顺序号。数字越小越靠前。若此值全部相等时则按id排序',
   `addtime` int(11) NOT NULL DEFAULT '0',
   PRIMARY KEY (`page_id`),
-  KEY `order` (`order`),
+  KEY `s_number` (`s_number`),
   KEY `addtime` (`addtime`)
 ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COMMENT='文章页面表' AUTO_INCREMENT=1 ;
 
@@ -113,7 +113,7 @@ CREATE TABLE IF NOT EXISTS `page_history` (
   `cat_id` int(10) NOT NULL DEFAULT '0',
   `page_title` varchar(50) NOT NULL DEFAULT '',
   `page_content` text NOT NULL,
-  `order` int(10) NOT NULL DEFAULT '99' COMMENT '顺序号。数字越小越靠前。若此值全部为0则按时间排序',
+  `s_number` int(10) NOT NULL DEFAULT '99' COMMENT '顺序号。数字越小越靠前。若此值全部为0则按时间排序',
   `addtime` int(11) NOT NULL DEFAULT '0',
   PRIMARY KEY (`page_history_id`),
   KEY `page_id` (`page_id`),