新手。问一下怎么要写mysql取得列表页的分页数据。-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

新手。问一下怎么要写mysql取得列表页的分页数据。

a123456678 2016-06-15 16:22:59 1320

数据库情况为:

栏目数据表:

blogtype:

typeid (栏目id)

typename(栏目名称)

typeorder(栏目排序)

三个字段

内容数据表 content:

id

typeid

title

content

四个字段

我现在要取得栏目里面的数据条数及内容,怎么写mysql?

我是这样写的:

$sql = "select * from content typeid=$_GET['id']";
$query = mysql_query($sql);
echo $rows = mysql_num_rows($query);

这样总是得不到数据.

我是新手。是这样写mysql的思路不对吗?

还有一个事:我在栏目与内容数据库表里都写了一个:typeid 这两个表里的typeid是怎么一一对应起来的?

SQL 关系型数据库 MySQL 数据库
分享到
取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 19:39:38
    $db 是全局变量需要,连接数据库的
    
    function pagebak($t,$f='*',$pagesize=5,$w='1=1',$o='',$type=''){
     global $db;
     $recordcount = cc($t,$w);
     $info['recordcount']=$recordcount;
     $info['pagesize'] = $pagesize;
     
     $pagecount = ceil($recordcount/$pagesize);
     $info['pagecount']=$pagecount;
     $p = isset($_GET['p']) ? $_GET['p'] : 1;
     if($p<1) $p=1;
     if($p>$pagecount) $p=$pagecount;
     $info['currpage'] = $p;
     
     $pst = $db->prepare("select $f from $t where $w $o limit ?,?");
     $pst->bindValue(1,$p*$pagesize-$pagesize,PDO::PARAM_INT);
     $pst->bindValue(2,$pagesize,PDO::PARAM_INT);
     $pst->execute();
     $info['rows'] = $pst->fetchAll(PDO::FETCH_ASSOC);
     $start = 1;
     $end = 10;
     if($p>5){
      $start = $p-4;
      $end = $p+5; 
     }
     $page = '<div class=page>';
     if($p>1) $page.=sprintf('<a href="?%sp=%d">上一页</a>',$type,$p-1);
     for($i=$start;$i<=$end;$i++){
      if($i>$pagecount) break;
      if($i==$p){
       $page.=sprintf('<span>%d</span>',$i); 
       continue;   
      }
      $page.=sprintf('<a href="?%sp=%d">%d</a>',$type,$i,$i); 
     }
     $page.=sprintf('<a href="?%sp=%d">下一页</a>',$type,$p+1);
     $page.='</div>';
     $info['page'] = $page;
     return $info;
    }
    0 0
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

推荐文章
相似问题
推荐课程