<?php
include("conn.php");
$db=db_connect();
$sql="select content from content";
$rs=$db->query($sql);
$row=mysqli_fetch_row($rs);
foreach($row as $id=>$val ){
$content=$val;
$path=$id.'.htm';
$fp=fopen("tmp.htm","r"); //只读打开模板
$str=fread($fp,filesize("tmp.htm"));//读取模板中内容 $str=str_replace("{content}",$content,$str);//替换内容
fclose($fp); $handle=fopen($path,"w"); //写入方式打开新闻路径
fwrite($handle,$str); //把刚才替换的内容写进生成的HTML文件
fclose($handle);
}?>这个代码在循环数据的那个地方有问题,生成的页面只有一个,高手给改下代码
谢谢啦
include("conn.php");
$db=db_connect();
$sql="select content from content";
$rs=$db->query($sql);
$row=mysqli_fetch_row($rs);
$fp=fopen("tmp.htm","r"); //只读打开模板
$str1=fread($fp,filesize("tmp.htm"));//读取模板中内容foreach($row as $id=>$val ){
$content=$val;
$path=$id.'.htm';
$str=$str1;
$str=str_replace("{content}",$content,$str);//替换内容
$handle=fopen($path,"w"); //写入方式打开新闻路径
fwrite($handle,$str); //把刚才替换的内容写进生成的HTML文件
fclose($handle);
}fclose($fp);
?>
include("conn.php");
$db=db_connect();
$sql="select content from content";
$rs=$db->query($sql);
$fp=fopen("tmp.htm","r"); //只读打开模板
$str1=fread($fp,filesize("tmp.htm"));//读取模板中内容 while($row=mysqli_fetch_row($rs)){
$content=$$row['id'];
$path=$row['id'].'.htm';
$str=$str1;
$str=str_replace("{content}",$content,$str);//替换内容
$handle=fopen($path,"w"); //写入方式打开新闻路径
fwrite($handle,$str); //把刚才替换的内容写进生成的HTML文件
fclose($handle);
} fclose($fp);
?>
include("conn.php");
$db=db_connect();
$sql="select content from content";
$rs=$db->query($sql);
while ($row=mysqli_fetch_array($rs))
{
$content=$row[1].$row[2].$row[3];
$path=$row[0].'.htm';
$fp=fopen("tmp.htm","r"); //只读打开模板
$str=fread($fp,filesize("tmp.htm"));//读取模板中内容 $str=str_replace("{content}",$content,$str);//替换内容
fclose($fp); $handle=fopen($path,"w"); //写入方式打开新闻路径
fwrite($handle,$str); //把刚才替换的内容写进生成的HTML文件
fclose($handle);
}
?>
你那一段代码,是按数据库的里的字段生成的,所以我看到生成了几个文件
$row=mysqli_fetch_row($rs);你这个本来就是取一行当然只有一个文件了
mysqli_fetch_array($rs)取的是你多行数据
你查一下手册就知道了
我是我的本地数据和你的数据是不一样的当然出错了
$content=$row[1].$row[2].$row[3];
$path=$row[0].'.htm';
$row[0]也就是你的表中的第一个字段,$[1],$[2].....
也可以用$row["字段名"]如$row["id"]
还有,你要生成多个不同的文件,就在while循环里fopen("不同的文件名","..").