Tag Archives: Sablog-x

生活记录.Log

用来用去最后还是换回了SAX2

最近一直在给社团做网站!已经不知道浏览过多少个国外的优秀设计的网站,自己心中和草稿纸上面画过多少幅设计草图。前一段时间决定用WP做网站之后,在经历了今晚,又再次换回了SAX2!

虽然WP的后台功能很吸引我,但是没有许多必要的功能,需要什么,都得靠插件,就算装个皮肤,也得装上几个插件。就如同FF一样,插件很强大,但是过多的插件却成为了累赘,为了某一个小功能,却必须装上一个大插件,而且大插件中的一些功能根本不需要。

到了最后,回归到了简单,高效而又熟悉的SAX2上面了。

不过WP上的数据库经过了WP to Sablog-x 1.6,然后Sablog-x 1.6 to Sablog-x 2.0 Plus!反正最后升级好了!但是却发现WP的文章排版全部乱了,字体的格式都还在,但是段落全部没有了!到时候,还得花点心思去做!

最后一点,这几天又发现了几个好皮,学习学习,用最快的速度做一个网站皮肤!

生活记录.Log

很无语的一件事

昨天体验了晚上WP~觉得后台很不错!但是居然发现分类居然不能够排序,我的分类完全是倒序的。网上查了一下,居然还得靠插件实现。

一个没有插件的WP真的没有SAX2好用,而且插件作者质量的参差不齐可能还会导致WP出现问题,而且WP能够做到的事情SAX2都能够实现。很满足啊~不过还是得等SAX2正式完善。

目前给别人还是推荐WP,因为成熟,但是自己还是用SAX2!

软件技巧.Software

建议大家升级至Sablog-x 2.0 (20080825)版本

此版本更新了很多变量和一些Bug!务必更新此版本,之前版本有诸多Bug没有修复,此版本已经解决诸多问题了,而且此版本的升级将导致以前的2.0风格不能在继续使用,会出现无法显示日志的问题,所以请更新升级至最新版本0825保证新的风格和插件可以更好的运用在您的博客上。

以上引用自tension,下面该我评价新版本了。

花了2个小时,用Beyond Compare 2软件进行对比修改新版本的Sablog-x 2.0,发现其中修改了不少核心的算法,但是修改的最多的还是修改变量名,由于某个变量名修改之后,导致了2.0的旧模板无法使用,解决方法很简单,打开normal.php和list.php,把其中的$tatol修改为$total就行了~哈哈

不过有些BUG依然存在,本人的两个小时,就是结合我原来修改过的2.0再次重新修改新版本,现在已经挂上了新版本的Sablog-x 2.0了!

最后,还是强烈要求使用Sablog-x 2.0预览版的朋友更新至最新的20080825,以便我们开发的新的插件和风格能够运用在你的博客上。论坛还附赠了几款华丽的皮肤。

Sablog-x 2.0 (20080825)下载地址

写写程序.Code

Sablog-x 2.0 前台留言表情功能独立版

有人想要我的留言表情,这里写篇文章给他,希望对想要这个功能的朋友能够有用。

 

[face=plaint]首先打开templates/你的模板/show.php

<ol class="dp-xml"><li class="alt"><span><span class="tag"><</span><span class="tag-name">p</span><span class="tag">></span><span>评论内容 (必填):</span><span class="tag"><</span><span class="tag-name">span</span><span> </span><span class="attribute">id</span><span>=</span><span class="attribute-value">"smiley"</span><span class="tag">></span><span class="tag"></</span><span class="tag-name">span</span><span class="tag">></span><span class="tag"><</span><span class="tag-name">br</span><span> </span><span class="tag">/></span><span class="tag"><</span><span class="tag-name">textarea</span><span> </span><span class="attribute">onfocus</span><span>=</span><span class="attribute-value">"updatesmiley("$options[url]");this.onfocus = null;"</span><span> </span><span class="attribute">name</span><span>=</span><span class="attribute-value">"content"</span><span> </span><span class="attribute">id</span><span>=</span><span class="attribute-value">"content"</span><span> </span><span class="attribute">cols</span><span>=</span><span class="attribute-value">"80"</span><span> </span><span class="attribute">rows</span><span>=</span><span class="attribute-value">"10"</span><span> </span><span class="attribute">tabindex</span><span>=</span><span class="attribute-value">"5"</span><span> </span><span class="attribute">onkeydown</span><span>=</span><span class="attribute-value">"ctlent(event);"</span><span> </span><span class="attribute">class</span><span>=</span><span class="attribute-value">"formfield"</span><span> </span><span class="attribute">style</span><span>=</span><span class="attribute-value">"width:400px;"</span><span class="tag">></span><span>$_COOKIE[cmcontent]</span><span class="tag"></</span><span class="tag-name">textarea</span><span class="tag">></span><span class="tag"><</span><span class="tag-name">br</span><span> </span><span class="tag">/></span><span class="tag"><</span><span class="tag-name">font</span><span> </span><span class="attribute">color</span><span>=</span><span class="attribute-value">"#336699"</span><span> </span><span class="tag">></span><span class="tag"></</span><span class="tag-name">font</span><span class="tag">></span><span class="tag"></</span><span class="tag-name">p</span><span class="tag">></span><span> </span></span></li></ol>

其中,主要是要添加上以下代码。自己对照着修改一下。把id=”smiley”和onfocus=加上。

<ol class="dp-xml"><li class="alt"><span><span class="tag"><</span><span class="tag-name">span</span><span> </span><span class="attribute">id</span><span>=</span><span class="attribute-value">"smiley"</span><span class="tag">></span><span class="tag"></</span><span class="tag-name">span</span><span class="tag">></span><span> </span></span></li><li><span><span class="tag"><</span><span class="tag-name">textarea</span><span> </span><span class="attribute">onfocus</span><span>=</span><span class="attribute-value">"updatesmiley("$options[url]");this.onfocus = null;"</span><span> </span><span class="attribute">name</span><span>=</span><span class="attribute-value">"content"</span><span> </span><span class="attribute">id</span><span>=</span><span class="attribute-value">"content"</span><span> </span><span class="attribute">cols</span><span>=</span><span class="attribute-value">"80"</span><span> </span><span class="attribute">rows</span><span>=</span><span class="attribute-value">"10"</span><span> </span><span class="attribute">tabindex</span><span>=</span><span class="attribute-value">"5"</span><span> </span><span class="attribute">onkeydown</span><span>=</span><span class="attribute-value">"ctlent(event);"</span><span> </span><span class="attribute">class</span><span>=</span><span class="attribute-value">"formfield"</span><span> </span><span class="attribute">style</span><span>=</span><span class="attribute-value">"width:400px;"</span><span class="tag">></span><span>$_COOKIE[cmcontent]</span><span class="tag"></</span><span class="tag-name">textarea</span><span class="tag">></span><span> </span></span></li></ol>

[face=plaint]然后打开modules/show.php文件,找到以下代码

<ol class="dp-c"><li class="alt"><span><span class="vars">$comment</span><span>[</span><span class="string">"content"</span><span>] = html_clean(</span><span class="vars">$comment</span><span>[</span><span class="string">"content"</span><span>]); </span></span></li></ol>

把这行代码替换为

<ol class="dp-c"><li class="alt"><span><span class="comment">//处理评论表情</span><span> </span></span></li><li><span><span class="vars">$comment</span><span>[</span><span class="string">"content"</span><span>] = preg_replace(</span><span class="string">"/[face=(w*)]/i"</span><span>,</span><span class="string">"<img class=smile alt="[face=1]" src=""</span><span>.</span><span class="vars">$options</span><span>[url].</span><span class="string">"images/smiles/1.gif" />"</span><span>, html_clean(</span><span class="vars">$comment</span><span>[</span><span class="string">"content"</span><span>])); </span></span></li></ol>

[face=plaint]最后打开include/jscript/show.js,在文件末尾添加上以下两个函数。

<ol class="dp-c"><li class="alt"><span><span class="keyword">function</span><span> addsmiles(facename){ </span></span></li><li><span>    $(<span class="string">"content"</span><span>).value += </span><span class="string">"[face="</span><span>+facename+</span><span class="string">"]"</span><span>; </span></span></li><li class="alt"><span>    $(<span class="string">"content"</span><span>).focus(); </span></span></li><li><span>} </span></li><li class="alt"><span><span class="keyword">function</span><span> updatesmiley( url ) { </span></span></li><li><span>    $(<span class="string">"smiley"</span><span>).innerHTML = </span><span class="string">"<br /><img style="cursor:pointer;" onclick="addsmiles("surprise")" src=""</span><span> + url + </span><span class="string">"images/smiles/surprise.gif" /><img alt="glade" style="cursor:pointer;" onclick="addsmiles("glade")" src=""</span><span> + url + </span><span class="string">"images/smiles/glade.gif" /><img alt="love" style="cursor:pointer;" onclick="addsmiles("love")" src=""</span><span> + url + </span><span class="string">"images/smiles/love.gif" /><img alt="cry" style="cursor:pointer;" onclick="addsmiles("cry")" src=""</span><span> + url + </span><span class="string">"images/smiles/cry.gif" /><img alt="sing" style="cursor:pointer;" onclick="addsmiles("sing")" src=""</span><span> + url + </span><span class="string">"images/smiles/sing.gif" /><img alt="fight" style="cursor:pointer;" onclick="addsmiles("fight")" src=""</span><span> + url + </span><span class="string">"images/smiles/fight.gif" /><img alt="bitter" style="cursor:pointer;" onclick="addsmiles("bitter")" src=""</span><span> + url + </span><span class="string">"images/smiles/bitter.gif" /><img alt="dream" style="cursor:pointer;" onclick="addsmiles("dream")" src=""</span><span> + url + </span><span class="string">"images/smiles/dream.gif" /><img alt="approve" style="cursor:pointer;" onclick="addsmiles("approve")" src=""</span><span> + url + </span><span class="string">"images/smiles/approve.gif" /><img alt="dissatisfy" style="cursor:pointer;" onclick="addsmiles("dissatisfy")" src=""</span><span> + url + </span><span class="string">"images/smiles/dissatisfy.gif" /><img alt="question" style="cursor:pointer;" onclick="addsmiles("question")" src=""</span><span> + url + </span><span class="string">"images/smiles/question.gif" /><img alt="plaint" style="cursor:pointer;" onclick="addsmiles("plaint")" src=""</span><span> + url + </span><span class="string">"images/smiles/plaint.gif" /><img alt="slaver" style="cursor:pointer;" onclick="addsmiles("slaver")" src=""</span><span> + url + </span><span class="string">"images/smiles/slaver.gif" /><img alt="incisor" style="cursor:pointer;" onclick="addsmiles("incisor")" src=""</span><span> + url + </span><span class="string">"images/smiles/incisor.gif" /><img alt="whistle" style="cursor:pointer;" onclick="addsmiles("whistle")" src=""</span><span> + url + </span><span class="string">"images/smiles/whistle.gif" /><img alt="pain" style="cursor:pointer;" onclick="addsmiles("pain")" src=""</span><span> + url + </span><span class="string">"images/smiles/pain.gif" /><img alt="feed" style="cursor:pointer;" onclick="addsmiles("feed")" src=""</span><span> + url + </span><span class="string">"images/smiles/feed.gif" /><img alt="esotropia" style="cursor:pointer;" onclick="addsmiles("esotropia")" src=""</span><span> + url + </span><span class="string">"images/smiles/esotropia.gif" /><img alt="faint" style="cursor:pointer;" onclick="addsmiles("faint")" src=""</span><span> + url + </span><span class="string">"images/smiles/faint.gif" /><img alt="innocent" style="cursor:pointer;" onclick="addsmiles("innocent")" src=""</span><span> + url + </span><span class="string">"images/smiles/innocent.gif" /><br /><img alt="fuck" style="cursor:pointer;" onclick="addsmiles("fuck")" src=""</span><span> + url + </span><span class="string">"images/smiles/fuck.gif" /><img alt="young" style="cursor:pointer;" onclick="addsmiles("young")" src=""</span><span> + url + </span><span class="string">"images/smiles/young.gif" /><img alt="football" style="cursor:pointer;" onclick="addsmiles("football")" src=""</span><span> + url + </span><span class="string">"images/smiles/football.gif" /><img alt="dead" style="cursor:pointer;" onclick="addsmiles("dead")" src=""</span><span> + url + </span><span class="string">"images/smiles/dead.gif" /><img alt="terror" style="cursor:pointer;" onclick="addsmiles("terror")" src=""</span><span> + url + </span><span class="string">"images/smiles/terror.gif" /><img alt="none" style="cursor:pointer;" onclick="addsmiles("none")" src=""</span><span> + url + </span><span class="string">"images/smiles/none.gif" /><img alt="smile" style="cursor:pointer;" onclick="addsmiles("smile")" src=""</span><span> + url + </span><span class="string">"images/smiles/smile.gif" /><img alt="awkard" style="cursor:pointer;" onclick="addsmiles("awkard")" src=""</span><span> + url + </span><span class="string">"images/smiles/awkard.gif" /><img alt="frisk" style="cursor:pointer;" onclick="addsmiles("frisk")" src=""</span><span> + url + </span><span class="string">"images/smiles/frisk.gif" /><img alt="fire" style="cursor:pointer;" onclick="addsmiles("fire")" src=""</span><span> + url + </span>&

lt;span class="string">"images/smiles/fire.gif" /><img alt="sick" style="cursor:pointer;" onclick="addsmiles("sick")" src=""</span><span> + url + </span><span class="string">"images/smiles/sick.gif" /><img alt="sinister" style="cursor:pointer;" onclick="addsmiles("sinister")" src=""</span><span> + url + </span><span class="string">"images/smiles/sinister.gif" /><img alt="sleep" style="cursor:pointer;" onclick="addsmiles("sleep")" src=""</span><span> + url + </span><span class="string">"images/smiles/sleep.gif" /><img alt="shutup" style="cursor:pointer;" onclick="addsmiles("shutup")" src=""</span><span> + url + </span><span class="string">"images/smiles/shutup.gif" /><img alt="tongue" style="cursor:pointer;" onclick="addsmiles("tongue")" src=""</span><span> + url + </span><span class="string">"images/smiles/tongue.gif" /><img alt="cool" style="cursor:pointer;" onclick="addsmiles("cool")" src=""</span><span> + url + </span><span class="string">"images/smiles/cool.gif" /><img alt="disch" style="cursor:pointer;" onclick="addsmiles("disch")" src=""</span><span> + url + </span><span class="string">"images/smiles/disch.gif" /><img alt="deride" style="cursor:pointer;" onclick="addsmiles("deride")" src=""</span><span> + url + </span><span class="string">"images/smiles/deride.gif" /><img alt="angry" style="cursor:pointer;" onclick="addsmiles("angry")" src=""</span><span> + url + </span><span class="string">"images/smiles/angry.gif" /><img alt="shy" style="cursor:pointer;" onclick="addsmiles("shy")" src=""</span><span> + url + </span><span class="string">"images/smiles/shy.gif" />"</span><span>;} </span></span></li></ol>

通过这一番修改,就没有问题了。如果需要修改侧边栏上面的最新留言的表情,那个请自己修改cache.func.php,添加

<ol class="dp-c"><li class="alt"><span><span class="vars">$newcomment</span><span>[</span><span class="string">"content"</span><span>] = preg_replace(</span><span class="string">"/[face=(w*)]/i"</span><span>,</span><span class="string">"<img class=smile alt="[face=1]" src=""</span><span>.</span><span class="vars">$options</span><span>[url].</span><span class="string">"images/smiles/1.gif" />"</span><span>, </span><span class="vars">$comment</span><span>[</span><span class="string">"content"</span><span>]);  </span></span></li></ol>

那个查看所有留言的页面也是差不多这样修改一下,我没有用那个,所以,特殊需要的话,再问我吧。

 

还有,把这个表情包解压缩到images/文件夹下面。

写写程序.Code

博客注册功能故障修复

唉……不知道为什么,注册功能出现了问题。

自己修改重新修改了一下博客注册函数的部分代码,把原先合并在一起的提交注册信息和处理注册信息的一个函数分开了,写成了两段,成功解决了注册的问题。

解决方法:

打开cp.php,把89~174行删除。

在89行添加上以下代码:

  1. //注册表单 
  2. if ($_GET["action"] == "register") { 
  3.     if ($options["closereg"]) { 
  4.         redirect("禁止注册新用户"$referer); 
  5.     } 
  6.     if (!submitcheck("submit", 1)) { 
  7.         if ($sax_uid && $sax_pw && $sax_group && $sax_hash) { 
  8.             redirect("您已经处于登陆状态"$referer); 
  9.         } 
  10.         cpheader(); 
  11.         include template("register"); 
  12.         cpfooter(); 
  13.     }  

在78行添加上以下代码:

  1. //注册验证 
  2. if ($_POST["action"] == "doregister") { 
  3.     //取值 
  4.     $username        = trim($_POST["username"]); 
  5.     $password        = $_POST["password"]; 
  6.     $confirmpassword = $_POST["confirmpassword"]; 
  7.     $email           = trim($_POST["email"]); 
  8.     $url             = trim($_POST["url"]); 
  9.     $referer         = trim($_POST["referer"]); 
  10.         //检测网址 
  11.     if (!isurl($url)) { 
  12.         redirect("网站URL错误"); 
  13.     } 
  14.         //检测用户名 
  15.     if(!$username || strlen($username) > 20) { 
  16.         redirect("用户名为空或者超过20字节."$reg_url); 
  17.     } 
  18.         if ($options["censoruser"]) { 
  19.         $options["censoruser"] = str_replace(","","$options["censoruser"]); 
  20.         $banname = explode(",",$options["censoruser"]); 
  21.         foreach($banname as $value){ 
  22.             if (strpos($username,$value) !== false){ 
  23.                 redirect("此用户名包含不可接受字符或被管理员屏蔽,请选择其它用户名."$reg_url); 
  24.             } 
  25.         } 
  26.     } 
  27.         $name_key = array("","&"," ",""",""","/","*",",","<",">"," "," "," ","#","$","(",")","%","@","+","?",";","^"); 
  28.     foreach($name_key as $value){ 
  29.         if (strpos($username,$value) !== false){ 
  30.             redirect("此用户名包含不可接受字符或被管理员屏蔽,请选择其它用户名."$reg_url); 
  31.         } 
  32.     } 
  33.         //检测密码 
  34.     if (!$password || strlen($password) < 8) { 
  35.         redirect("密码不能为空并且密码长度不能小于8位.",$reg_url); 
  36.     } 
  37.     if ($password != $confirmpassword) { 
  38.         redirect("请确认输入的密码一致."$reg_url); 
  39.     } 
  40.     if (strpos($newpassword," ") !== false || strpos($password," ") !== false || strpos($password," ") !== false) { 
  41.         redirect("密码包含不可接受字符."$reg_url); 
  42.     } 
  43.         $username = char_cv($username); 
  44.     $r = $DB->fetch_one_array("SELECT userid FROM {$db_prefix}users WHERE username="$username" LIMIT 1"); 
  45.     if($r["userid"]) { 
  46.         redirect("该用户名已被注册."); 
  47.     } 
  48.     $email = char_cv($email); 
  49.     $r = $DB->fetch_one_array("SELECT userid FROM {$db_prefix}users WHERE email="$email" LIMIT 1"); 
  50.     if($r["userid"]) { 
  51.         redirect("该E-mail已被注册."); 
  52.     } 
  53.     $password = md5($password); 
  54.     $DB->query("INSERT INTO {$db_prefix}users (username, password, logincount, loginip, logintime, email, url, regdateline, regip, groupid, lastip, lastvisit, lastactivity) VALUES ("$username", "$password", "1", "$onlineip", "$timestamp", "$email", "$url", "$timestamp", "$onlineip", "3", "$onlineip", "$timestamp", "$timestamp")"); 
  55.     $sax_uid = $DB->insert_id(); 
  56.     $DB->unbuffered_query("UPDATE {$db_prefix}statistics SET user_count=user_count+1"); 
  57.     //保存COOKIE 
  58.     scookie("sax_auth", authcode("$sax_uid $password 1"), $login_life); 
  59.     //更新数据库中的登陆会话 
  60.     updatesession(); 
  61.      
  62.     require_once(SABLOG_ROOT."include/func/cache.func.php"); 
  63.     statistics_recache(); 
  64.     redirect("注册成功."$options["url"]); 

保存即可!——-HJin in Sablog Plus Team!

写写程序.Code

Sablog-x 灯箱插件lightbox2

今天给博客添加了一个灯箱插件,以前曾经用过lightbox plugins,用的是jquery,发现居然和其他js冲突,所以1.6的时候没有用这类灯箱插件,今天在网上搜了一下,找到了另外一款lightbox2,核心是prototype,安装到了 Sablog-x 上面,测试了,没有什么问题。

下载的源代码是js的脚本,没有压缩过,自己找了几个压缩js的软件,压缩之后,程序都不能正常运行了,还是放弃了压缩的念头。可是200KB的JS文件让网站打开的速度非常慢……咋办?突发奇想,把lightbox2调用的几个js全部放到了网页的底部,等整个网站加载完成之后,再加载灯箱,修改之后,网页打开速度快了许多。这样做不知道会有什么不好的,谁能来指点一下。目前先就这样用着吧![face=glade]

写写程序.Code

Sablog-x 2.0 ping服务功能

别人很多国外的博客系统,如WP,都有ping服务(xml-rpc),我们Sablog-x怎么能够缺少了,晚上自己研究了一下谷歌地痛的API,再加上自己辛苦的百度,总算完成了ping服务的大致模型。

目前自己已经能够正常使用,但是还只是用数组保存ping服务器,而且对于Ping失败没有进行判断。过几天写上数据库和后台,并完善功能。

现在只要博客一发新帖,马上就会Ping那些服务器了。[face=glade]

写写程序.Code

我的博客也正式加入GRavatar了!

什么是Gravatar?

Globally Recognized Avatar的缩写,是 http://www.gravatar.com 推出的一项服务,意为“全球通用头像”。

如果在Gravatar的服务器上放置了你自己的头像,那么在任何支持Gravatar的blog或者留言本上留言时,只要提供你与这个头像关联的email地址,就能够显示出你的Gravatar头像来。Gravatar是一个比较不错的通用头像服务,可以用你的Email地址来绑定头像,这样的在发表留言时,只要填上自己的邮件地址就能显示相应的头像。

打开modules/show.php,大概在230行附近,找到下面这一段类似的代码,从$query=这里开始,一行一行对比这修改一下,这里只有增多,没有减少的代码。还有default那里填写上默认的gravatar的头像图片。大小要和size定义的一致。

  1. $query = $DB->query("SELECT commentid,author,url,email,dateline,content FROM {$db_prefix}comments WHERE articleid="".$article["articleid"]."" AND visible="1" ORDER BY commentid $cmtorder $commentsql"); 
  2. $commentdb=array(); 
  3. while ($comment=$DB->fetch_array($query)) { 
  4.     $cmtorderid++; 
  5.     $comment["cmtorderid"] = $cmtorderid
  6.     $comment["quoteuser"] = $comment["author"]; 
  7.     $size = 50; 
  8.     $default = ""
  9.     $comment["avatar"] = "<img alt="Gravatar" src="http://gravatar.com/avatar/".md5($comment["email"])."?s=".$size."&r=PG&default=".urlencode($default)."" />";  
  10.     if ($comment["url"]) { 
  11.         $comment["author"] = "<a href="".$comment["url"]."" target="_blank">".$comment["author"]."</a>"
  12.         $comment["avatar"] = "<a href="".$comment["url"]."" target="_blank">".$comment["avatar"]."</a>"
  13.     } 
  14.     else { 
  15.         $comment["avatar"] = "<a href="http://en.gravatar.com/" target="_blank" alt="去设置我的头像">".$comment["avatar"]."</a>"
  16.     } 

这里就这样简单说一下,有兴趣就自己修改一下。记住这里修改之后,模板也是需要修改的。我就不具体说了。

等过一段时间之后,自己继续开发开发,最后发布一个我修改过的 Sablog-x 给大家。谢谢支持![face=tongue]

写写程序.Code

Sablog-x 后台修改评论页面不显示email修补方案

后台查看别人的评论,发现了修改评论的位置不显示原先的email,这里修改一下后台代码

修改文件中只有一个

打开admincomment.php文件,390行

  1. if ($action == "modcm") { 
  2.     $comment = $DB->fetch_one_array("SELECT c.articleid,c.commentid,c.author,c.url,c.dateline,c.content, a.title FROM {$db_prefix}comments c LEFT JOIN {$db_prefix}articles a ON (a.articleid=c.articleid) WHERE commentid="$commentid""); 
  3.     $comment["content"] = htmlspecialchars($comment["content"]); 
  4.     $subnav = "修改评论"
  5. }//end mod 

在其中添加上一个c.email参数,修改后的代码如下

  1. if ($action == "modcm") { 
  2.     $comment = $DB->fetch_one_array("SELECT c.articleid,c.commentid,c.author,c.url,c.email,c.dateline,c.content, a.title FROM {$db_prefix}comments c LEFT JOIN {$db_prefix}articles a ON (a.articleid=c.articleid) WHERE commentid="$commentid""); 
  3.     $comment["content"] = htmlspecialchars($comment["content"]); 
  4.     $subnav = "修改评论"
  5. }//end mod 

这样问题就解决了,小修小补,到时候整理了,把自己整理的这一份发布出来!

写写程序.Code

Sablog-x 关键词保留大小写功能hack

hack原因:

Sablog-x 默认设置是将关键词tag转换为小写,这样使像姓名啊,一些缩写啊都变成小写,然后关键词一高亮,文章中的关键词也变成了小写,这样失去了原有大写字母的美观。

方法思路:

在添加日志和管理日志页面添加选择是否保留关键词大小写的选择框,修改后台代码。

解决方法:

[face=plaint]打开templatesadminarticle.php文件,找到200行

  1. <h2 style="margin:15px 0 0 0;width:720px;padding:0">标签 <span class="describe">(用“,”分隔多个关键字, 最多允许添加5个关键字, 每个关键字不能超过30个字符.)</span></h2>  

在这一行下面添加上以下字符

  1. <p style="margin:10px 0 0 0;">  
  2.     <input name="uppertolower" type="checkbox" value="1" checked /><span style="font-size:12px;">保留关键词大小写</span> 
  3. </p> 

[face=plaint]打开adminarticle.php文件,找到58行和187行,在这两行找到这些代码

  1. $keywords     = strtolower(sax_addslashes(trim($_POST["keywords"]))); 

把这一行代码替换

  1. $uppertolower = intval($_POST["uppertolower"]);  
  2. if($uppertolower) {  
  3.     $keywords     = sax_addslashes(trim($_POST["keywords"]));  
  4. else {  
  5.     $keywords     = strtolower(sax_addslashes(trim($_POST["keywords"]))); 

这样就修改完毕了。