发布网友 发布时间:2022-04-05 23:33
共5个回答
懂视网 时间:2022-04-06 03:55
php删除文章的实现方法:首先通过“ob_start();”开启缓存;然后引入“require_coce("../conn.php");”;接着执行SQL的删除语句;最后实现删除静态页面的重要判断语句即可。
推荐:《PHP视频教程》
PHP删除文章时同时删除生成的HTML页面
添加文章时生成HTML静态的页面,但如果要删除文章,添加文章时生成的HTML静态页面也应该同时删除掉,否则就成了冗余文件,所以我们应该在删除没用的文章时,同时删除掉已生成的HTML静态页面,下面来看看PHP文章系统里面如何同时删除掉生成的HTML静态页面,这里只是一个简单的原理系统,可以作为一个参考,更成熟系统可以参考比较成熟的CMS系统,下面是源码文件。
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文章也要给足权限,否则会出错。
热心网友 时间:2022-04-06 01:03
最简单的用这个str_replace,直接替换掉追问这个正规替换都不行 会影响正文的
热心网友 时间:2022-04-06 02:21
如果要删除的信息都有明确的定位符的话,可以使用正则匹配到要删除的信息,然后替换为空追问广告信息每行的都不一样的 正规则替换 会影响正文 不然你写个给我试试?
热心网友 时间:2022-04-06 03:55
正则匹配一下,设定为空。热心网友 时间:2022-04-06 05:47
echo preg_replace('/^\[[^\]]+?\]/','',$str);