新闻动态

PHP删除文章时同时删除生成的HTML页面?

来源:网络日期:2013-2-23

ob_start();

require_once("../inc/conn.php");

$id=$_GET["id"];

$path=$_GET["path"];

$sql="delete from newscontent where newsid=$id";

mysql_query($sql);

if(file_exists("../newslist/$path"))

{

unlink("../newslist/$path");

$foldername=substr($path,0,10);

$folder=fopen("../newslist/$foldername");

$n=0;

while($f=readdir($folder))

{

if($f<>"." && $f<>"..")

{

$n++;

}

}

closedir();

if($n==0)

{

rmdir("../newslist/$foldername");

}

}

header("location:del.php");

?>

这些代码比较容易理解,ob_start();开启缓存,require_coce("../conn.php");包含数据库连接文件,下面的变量$id,$path都是接受传过来的页面,这两个值是在列表页面里面传递过来的,再往下执行的是SQL的删除语句,先将数据库里面的文章进行删除掉,下面的if语句是删除静态页面的重要判断语句,如果$path存在的话,用unlink删除掉。而这里的while语句是读取的目录,不需要深入理解。

一个完善的文章生成HTML静态页面的系统应该是,添加文章时同时生成静态HTML文件,更新文章时也同时进行更新生成的HTML静态页面,删除时同时删除掉已生成的HTML静态页面,更新时重新生成静态页面这里就不介绍了,跟添加文章是一个道理,就是判断文章的$path,然后对应重新生成就行,但要给静态文件写入的权限,否则更新不了,删除静态HTML文章也要给足权限,否则会出错。

 

首页
电话
短信
联系