2 a359010549 a359010549 于 2018.03.09 11:17 提问

php 新闻列表 静态生成 分页显示内容都一样 5C

php文件:

<?php
include ("../admin/functions.php");
connnetDb();
$fp = fopen ("sc.html","r");
$content = fread ($fp,filesize ("sc.html"));
// 每页显示数量
$onepage = '2';
$sql = "select id from news";
$query = mysql_query ($sql);
// 文章总篇数
$num = mysql_num_rows ($query);
// 计算一共有多少页面 总篇数/每页篇数
$allpages = ceil ($num / $onepage);

for ($i = 0;$i<$allpages; $i++){
if ($i == 0){
$indexpath = "sc/sc.html";
} else {
$indexpath = "sc/sc".$i.".html";
}
$start = $i * $onepage;
$list = '';
$sql = "SELECT * FROM news ORDER BY id DESC LIMIT $start, $onepage";
// 查询数据
$rs_result = mysql_query ($sql);

while ($row = mysql_fetch_array ($rs_result)){
$title=$row['title'];
$list .= ''.$title.'
';
}

$content = str_replace ("{articletable}",$list,$content);

if (is_file ($indexpath)){
@unlink ($indexpath); //若文件已存在,则删除
}

$handle = fopen ($indexpath,"w"); //打开文件指针,创建文件
/*
  检查文件是否被创建且可写
*/
if (!is_writable ($indexpath)){
echo "文件:".$indexpath."不可写,请检查其属性后重试!"; //修改为echo
}
if (!fwrite ($handle,$content)){ //将信息写入文件
echo "生成文件".$indexpath."失败!"; //修改为echo
}
fclose ($handle); //关闭指针
}

fclose ($fp);
die ("生成分页文件完成,如生成不完全,请检查文件权限系统后重新生成!");

?>

图片说明

参考教程:

生成的7个分页内容都一样,都是前2条信息

3个回答

devmiao
devmiao   Ds   Rxr 2018.03.10 23:53
heyanliao
heyanliao   2018.03.11 16:50

因为$sql 没有循环,每次都是查询数据库最新两条信息

asz98778
asz98778   2018.03.24 01:37

<?php

include ("../admin/functions.php");
connnetDb();
$fp = fopen ("sc.html","r");
$content = fread ($fp,filesize ("sc.html"));
// 每页显示数量
$onepage = '2';
$sql = "select id from news";
$query = mysql_query ($sql);
// 文章总篇数
$num = mysql_num_rows ($query);
// 计算一共有多少页面 总篇数/每页篇数
$allpages = ceil ($num / $onepage);

for ($i = 0;$i<$allpages; $i++){
$k = $i + 1;
$indexpath = "sc/sc-".$k.".html";
$start = $i * $onepage;
$sql = "SELECT * FROM news ORDER BY id DESC LIMIT $start, $onepage";
// 查询数据
$rs_result = mysql_query ($sql);
while ($row = mysql_fetch_array ($rs_result)){
$content = str_replace ("{articletable}",$row['title'],$content);
#若文件已存在,则删除
if (is_file ($indexpath))
@unlink ($indexpath);
#打开文件指针
$handle = fopen ($indexpath,"w");
#文件是否可写
if (!is_writable ($indexpath))
echo "文件:".$indexpath."不可写!";
#写入文件
if (!fwrite ($handle,$content))
echo "生成文件".$indexpath."失败!";
#关闭指针
fclose ($handle);
}#结束while

}#结束for
fclose ($fp);
die ("生成分页文件完成");

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!