php board list

Posted by Albert 4108Day 15Hour 32Min 44Sec ago [2014-01-21]

프로시저
/*========================================================= */
DELIMITER $$

USE `ipang`$$

DROP PROCEDURE IF EXISTS `bbs_list`$$

CREATE DEFINER=`ipang`@`%` PROCEDURE `bbs_list`(
IN pagenum INT, /* 현재페이지 */
IN limitnum INT, /* 매페이지당 뿌려질 페이지 */
OUT cnt INT, /* 뽑아서 출력할 전체갯수 */
OUT gquery VARCHAR(100)
    )
BEGIN
DECLARE pages INT;
DECLARE pgnum INT;
DECLARE page INT;
DECLARE snum INT;
SET page = pagenum;
SELECT COUNT(*) INTO cnt  FROM enews; 
SET pgnum = CEIL(cnt/limitnum);
IF (page='') THEN 
SET page =1;
END IF;
IF (page>=pgnum) THEN 
SET page=pgnum;
END IF;
SET snum = (page-1)*limitnum;
SET gquery = pgnum;
SET @startnum=snum;
SET @lastnum=limitnum;
SET @odnum:=cnt-(page-1)*limitnum+1;
PREPARE stmt FROM 'SELECT idx,title,news,regdate,@odnum := (@odnum - 1) as no FROM enews WHERE 1 ORDER BY regdate DESC LIMIT ?, ?';
EXECUTE stmt USING @startnum,@lastnum;
END$$

DELIMITER ;


/* php file */
require('inc/comm.php');
require("get_top_users.php");

$num = 5;
$pages = isset($_GET['page']) ?intval($_GET['page']) : 1;
if ($url[strlen($url)-1]=="&")
{$url=substr($url,0,strlen($url)-1);}
$listrs = $my_db->multi_query("CALL bbs_list($pages,$num,@bbs_cnt,@offset);SELECT @bbs_cnt as bbs_cnt,@offset as offset;");

if( $listrs ) {
$i = 1;
do {
if ($result = $my_db->store_result()) {
if ($i==1) {
while( $row = $result->fetch_row() ) {
$daymns=abs((strtotime(date("Y-m-d"))-strtotime($row[3]))/86400);
$getnew = ($daymns<=1) ? "<img class='new' src='/common/images/ico_new02.png' alt=''>" : ''; 
$array[] = array("idx"=>$row[0],"title"=>$row[1],"date"=>change_daytype($row[3],"-","."),"no"=>$row[4],"new"=>$getnew);
$smarty->assign("bbs_list",$array);
}
} elseif ($i==2) {
$row = $result->fetch_row();
$total_cnt = $row[0];
$pagenum = $row[1];
$i++;
$result->close();
}
} while($my_db->more_results() && $my_db->next_result());
}

if ($pages>=$pagenum){$pages=$pagenum;}
if ($pages<=0){$pages=1;}
$page=showpage($pages, "bbs_edu.php", $pagenum, $url);
$smarty->assign("pagelist",$page);//
$smarty->assign("totalnum",$total_cnt);
$smarty->assign("tap3","class='on'");
$smarty->display($htmlpage);



LIST

Copyright © 2014 visionboy.me All Right Reserved.