首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Php选择几行

问Php选择几行
EN

Stack Overflow用户
提问于 2014-12-14 19:50:19
回答 3查看 85关注 0票数 2

我编写了简单的php脚本来选择我的博客数据。在这一刻,我在我的网站上有20个博客。现在看起来不太好了。我想把大约5个博客在一个网站,其余的在index.php?id=2,3,4,5和喜欢。我在找一些教程如何做它。

代码语言:javascript
复制
<?php
$sql = mysql_query("SELECT * FROM blogData ORDER BY id DESC");
while($row = mysql_fetch_array($sql)){
$title = $row['title'];
$content = $row['content'];
$date = $row['date'];

?>
     
  <?php
}
?>

​

有人能帮我吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-12-14 20:26:51

假设您想通过GET数组传递起始页--正如您所写的。

  1. 设置默认值: $pageNumber=0;$postsPerPage=5;
  2. 获取当前pageNumber: $pageNumber=$isset($_GET‘’pn)?:$pageNumber;//尝试保护此值,即: if(!is_numeric($pageNumber))退出(‘值不允许’);
  3. Make SQL语句 $startRow=$pageNumber*$postsPerPage;$sql =mysql_query(按id DESC限制".$startRow.“、‘.$postsPerPage]从blogData ORDER中选择*;want ($row= mysql_fetch_array($sql)){ $title =$row’$title‘;$content =$row’$content‘;$date =$row’‘date’;//按需要显示博客帖子}
  4. 生成寻呼机: $sql =mysql_query(“从blogData选择计数(*)为总计”;$data=mysql_fetch_assoc($sql);$countBlogPosts=$data' total ';for($i=0;$<$countBlogPosts;$i++){ if($i==$pageNumber){ echo $i+1;}else{ echo '.($i+1).‘';} if($i<$countBlogPosts-1)回显;}

这应该能行。

票数 1
EN

Stack Overflow用户

发布于 2014-12-14 20:01:02

如果只想显示表的5行,请使用:

代码语言:javascript
复制
$start = $_GET['id'] * 5;
$limit = 5;
$sql = mysql_query("SELECT * FROM blogData ORDER BY id DESC LIMIT $start,$limit");

您可以获取页面编号并在查询中使用。(从$start行开始,显示前5位)。

对于分页,您应该首先获取表中所有行的计数。然后将其划分为5 (例如表中的数字行为141,141/5=28 )。所以你有28页。)

您应该结合PHP代码和HTML来进行分页。

票数 1
EN

Stack Overflow用户

发布于 2014-12-14 20:01:19

你想要做的事情叫做分页。

在查询中进行更改很简单,例如:

代码语言:javascript
复制
SELECT * FROM blogData ORDER BY id DESC LIMIT :start, :end

因此,您只需要设法在查询字符串中传递正确的值。

应该是那么简单,但是有很多关于分页的教程。。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27473343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档