Archive for the 'php' Category


关于PHPCMS2008远程下载图片和自动获取缩略图的若干问题

本文中所描述的情况或提供的解决方案均是在PHPCMS2008 sp3版本上进行的.

首先,我得先讲一个问题,一个关于PHPCMS2008版本中一直存在的问题,这就是自动获取缩略图的功能.
使用PHPCMS的用户都知道,自动获取缩略时只有在内容发布时为远程图片时才会起作用,自己新发布一篇文章时,如果内容里的图片是站点本身已有的图片时就不能自动获取到图片.我记得有个别用户在官方论坛上反映过这个问题,不过官方并未解决好这个问题.

解决这个问题其实也只需要修改一个文件,即include/attachment.class.php
这个文件里其实也只需要修改几处就可以解决发布本地图片时不能自动获取缩略图的问题.

PHPCMS2008实现栏目按字母区分调用的简单方法

其实主要是查询栏目的目录名称,即:catdir这个字段,再利用substr函数来获取catdir这个字段值的首个字母,然后就可以根据获取到的首个字母来区分调用了.
应该说方法是很简单的.

不多说了,直接贴上winliuxq(liuxq.cn)提供的代码:
{get sql="select catid,catdir,catname,url from phpcms_category where ismenu=1 order by listorder desc"}
<?php
$fcatid=substr($r[catdir],0,1);
?>
{if $fcatid==a}<a href="{$r[url]}">{$r[catname]}</a> {/if}
{/get}

上述代码也比较好理解,其中$fcatid==a中的a就是你想要调用的首字母,这个a可以自己修改.

这个根据首字母来区分调用栏目的方法可以广泛应用在下载站,音乐站,动漫站和图片站等.

PHPCMS2008内容页面加载最新评论留言(JS调用)

应本周一客户作品的要求开发的.其实说不上开发吧,只能说是一种比较好的思路,以JS调用比较简洁吧!

这是一个很精明的方法呢(有点自夸了),在勿需修改任何一个程序文件就可以完成的简单方法.
今天先上传一个图片供大家鉴赏.注意:这里是在内容页面用JS调用当前最新评论,且调用数量可控.

图片有进行了缩小,大家将就看吧.

PHPCMS2008内容页面JS加载评论

PHPCMS2008的评论列表中轻松加入用户的头像

有两个办法,一是使用GET标签获取,不过代码写下来会繁锁(如果用户上传了头像的话,还要判断附件那个表).二是直接使用PHP定义$avatar参数.下面winliuxq(liuxq.cn)就说下第二种方法,比较简单!

在评论列表模板中的{$comment['content']}上面加入以下代码:
<?php
$memberinfo['avatar'] = avatar($comment['userid']);
@extract(new_htmlspecialchars($memberinfo));
?>
<a href="{SITE_URL}space/?userid={$comment[userid]}" target="_blank"><img src="{$avatar}" width="60" border="0" alt="{$comment[username]}头像" /></a>

添加好后保存,刷新评论列表的前台,OK啦!是不是特别简单呢!至于栏目问题,就得靠你自己去调整啦!

除此之外,你还可以在这里使用thumb参数给头像进行切割处理,如:{thumb($avatar,60,60)}

下面再来张效果图:
 QQ截图未命名.jpg

PHP 正则表达式匹配和获取网站信息(标题,关键词,简介)

<?php
$file=file("http://www.liuxq.cn");
$count=count($file);
for($i=0;$i<$count;$i++){
  if(eregi("<title>(.*)</title>",$file[$i],$out)){
  $title=$out[0];
  }
}
$title=substr($title,7,-8);
echo $title;
?>

preg_match("/<meta[^>]*?name=[\'\"]?description[\'\"]?[^>]*?>/is",$file[$i],$description);
//$description[0] 就是描述

preg_match("/<meta[^>]*?name=[\'\"]?keywords[\'\"]?[^>]*?>/is",$file[$i],$keywords);
//$keywords[0] 就是关键字