vBulletin HACK----关于排版的两个HACK_php基础

《以vB代码实现的简单文字排版》
原因:1.1.4版本中没有这些,而国内的比较著名的UBB HACK之家就增加了很多对于文字排版的UBB代码(vB代码)。
优点:只需要几行,就可以实现,很简单。
缺点:因为需要嵌套,所以如果用户写得不好的话,会影响帖子其它内容的样式,甚至殃及整个话题。
自评:其实,这只是将更多的HTML代码以vB代码的形式来实现,为的让人从另一个角度去学习如何进行Web的文字排版而不用去学HTML,也为了安全。

步骤:打开 global.php ,查找“
function bbcodeparse2($bbcode,$forumid=0,$allowsmilie=1) {
”,在[code]和其它HACK之前的适当位置,例如“
      // 执行引用回复
      $bbcode=eregi_replace("quote\]","quote]",$bbcode);  // 小写化
      $bbcode=str_replace("[quote]rn","<blockquote><smallfont>引用:</smallfont><hr>",$bbcode);
      $bbcode=str_replace("[quote]","<blockquote><smallfont>引用:</smallfont><hr>",$bbcode);
      $bbcode=str_replace("[/quote]rn","<hr></blockquote>",$bbcode);
      $bbcode=str_replace("[/quote]","<hr></blockquote>",$bbcode);
”,在后面加入“
      // Hack color,font,size,style,center
      $bbcode=eregi_replace("\[color=["]{0,1}(#[a-z0-9-]{6})["]{0,1}\]","<font color=\1>",$bbcode);  // [color=]
      $bbcode=eregi_replace("\[/color\]","</font>",$bbcode);  // [/color];
      $bbcode=eregi_replace("\[size=["]{0,1}([0-9]{1})["]{0,1}\]","<font size=\1>",$bbcode);  // [size=]
      $bbcode=eregi_replace("\[/size\]","</font>",$bbcode);  //  [/size]
      $bbcode=eregi_replace("\[font=["]{0,1}([^\[]*)["]{0,1}\]","<font face="\1">",$bbcode);  // [font=]
      $bbcode=eregi_replace("\[/font\]","</font>",$bbcode);  //  // [/font]
      $bbcode=eregi_replace("\[style=["]{0,1}([^\[]*)["]{0,1}\]","<span style="\1">",$bbcode);  // [style=]
      $bbcode=eregi_replace("\[/style\]","</span>",$bbcode);  //  [/style]
      $bbcode=eregi_replace("\[center\]","<p align=center>",$bbcode);  // [center=]
      $bbcode=eregi_replace("\[/center\]","</p>",$bbcode);  //  [/center]
      // End Hack color size style
”,完成。
范例可以参考:

《禁止JavaScript》
原因:vBulletin没有对Javascript脚本做任何的特别对待处理,所以如果论坛开放了HTML代码的话,就有可能受到alert或window.open的袭击而沦陷。

步骤:打开 global.php ,查找“
    if ($dohtml==0) {
      // 删除HTML代码
      $bbcode=str_replace("&","&",$bbcode);
      $bbcode=str_replace("<","<",$bbcode);
      $bbcode=str_replace(">",">",$bbcode);
    }
”,在最后一个花括号前,加入“
    } else {
      $bbcode=eregi_replace("<([/]{0,1}script[^<]*)>","<\1>",$bbcode);
”,完成!

【本文版权归作者与奥索网共同拥有,如需转载,请注明作者及出处】    

时间: 2024-09-18 04:56:09

vBulletin HACK----关于排版的两个HACK_php基础的相关文章

vBulletin HACK----关于排版的两个HACK

<以vB代码实现的简单文字排版> 原因:1.1.4版本中没有这些,而国内的比较著名的UBB HACK之家就增加了很多对于文字排版的UBB代码(vB代码). 优点:只需要几行,就可以实现,很简单. 缺点:因为需要嵌套,所以如果用户写得不好的话,会影响帖子其它内容的样式,甚至殃及整个话题. 自评:其实,这只是将更多的HTML代码以vB代码的形式来实现,为的让人从另一个角度去学习如何进行Web的文字排版而不用去学HTML,也为了安全. 步骤:打开 global.php ,查找" funct

【LaTeX排版】LaTeX使用--入门基础&amp;lt;二&amp;gt;

1.在命令之后留一个空格有下列方式: 源文件如下: \documentclass[a4paper,12pt]{book}%采用book类型(中篇论文一般采用这种类型),A4纸,字体为12磅,默认为10磅 \usepackage{ctexcap}%采用中文标题宏包(标题是中文的) %\usepackage{ctex}%采用中文字体宏包(标题是英文的)与ctexcap不能同时使用 \begin{document} {\LaTeX} 是一个排版工具 %命令行后保留空格的三种方法 \par %另起一段,

【转载——两个很基础的选举算法】分布式系统进程的选举

在分布式系统中,为了协调一组进程的动作,我们常常需要一个进程扮演协调者.初始者或管理者的角色.这个进程可以是进程组的任何一个,但关键的是进程组必须选举出唯一一个而且必须达到共识. 如果所有的进程都完全一样,它们之间没有任何可区别的属性,那么也就没有办法选举出一个特别的进程.因此,我们假设进程有一个全局唯一的编号,这个编号可以是网络地址或其他方法产生的编号.不失一般性,我们可以假设选举算法总是选举编号最大的进程作为协调进程. 我们另外还假设,每个进程都知道组内其他进程的编号.如果最大编号的进程总是

CSS技巧:关于CSS Hack与float闭合(清除浮动)

核心提示:CSS技巧:关于CSS Hack与float闭合 一.CSS HACK 以下两种方法几乎能解决现今所有HACK. 1, !important 随着IE7对!important的支持, !important 方法现在只针对IE6的HACK.(注意写法.记得该声明位置需要提前.) 2, IE6/IE77对FireFox *+html 与 *html 是IE特有的标签, firefox 暂不支持.而*+html 又为 IE7特有标签. <style>#wrapper{#wrapper {

网页排版时常用的5个CSS基础

介绍5个网页排版时常用的CSS基础,当然,包括图文混排,是怎样做到的. 本文给大家介绍在文章的排版中经常会用到的几个CSS基础,当然,包括图文混排,是怎样做到的. 1. 首行缩进     你知道的,从小学,老师就教我们,段落的开头应该空两格.而你使用word的时候,也有首行缩进这个功能,但在html中你的空格键好像起不了作用了.当然,你可以用 来代替一个空格,但这不是理想的方式,用CSS吧,简单,有效: <p style="text-indent:2em;">你的内容<

vBulletin HACK----显示话题大小和打开新窗口于论坛索引页

vBulletin HACK ----显示话题大小和打开新窗口于论坛索引页 作者:gogosoft <显示话题大小> 原因:1.1.4版本中没有此功能,而部分用户会以此作为是否查看话题的参考因素. 优点:只需要增加几行代码就可以. 缺点:因为每次显示论坛索引页都需要对该页的话题全部计算大小,所以可能会对服务器造成若干的影响. 自评:这是一个小功能,可有可无,实用与否见仁见智. 步骤: ⒈打开 forumdisplay.php ,查找" if ($announcement=$DB_si

编辑对网页排版设计感到不满意的8种情况

译者的话:寡妇.孤儿.捧打鸳鸯,这些场面足以让你有想哭的冲动,但当你在排版设计时,同样会碰到这些问题,甚至可能更槽.虽说今天的页面排版软件可以自动处理很多东西,但这并不意味着你就可以将版面搞得漂亮.在本文中,我们来探讨一下在文字排版中,最容易出现的一些问题,有些问题你在设计时可能并不留意,使到印刷出来后让你遗憾无穷.原文作者为 Charles Purdy . 当你在设计杂志.宣传册子或平面广告时放了一大块文字后,有时总会让你感到那个地方有点不对劲,但你却感觉不到问题出在哪里(许多设计师及编辑认为

你不知道的刷屏级H5排版以及动效

  如果细心地观察那些阅读转发破万的H5,它们除了本身极具特色的创意之外,排版与动效功能的应用也是恰到好处.所以今天我们就分别从[排版].[动效]两方面来给大家阐释,如何让自己创作的H5更具传播性. Part 1 排版篇 生长在移动端的H5广告相较于其他广告,充分地暴露了屏幕小.层级深.较难在保持内容统一性的前提下包含众多且交互复杂东西等缺点,也因此可能会影响用户在阅览H5时对有效信息的获取能力.所以,利用设计在最短的时间内引导用户接收到有效信息变得更加重要. 那么,怎样才能更有效地引导用户接受

PPT文字的酷炫排版

  分享这篇PPT文字排版的方法,让你的PPT只有文字也能出彩. PPT课件中,文字和图片是排版的两大主要构成要素.文字排列组合的好坏,直接影响着版面的效果.可现实情况是,图片有版权不能乱用,公司购买的图片库有不能表达课件的基本诉求,只能罗列文字.好吧,如果只是文字排版设计,那也来点有新意的,几种简单的方法让你的PPT页面排版也能高大上. 纯文字 PPT排版的半壁江上都是文字,密密麻麻的文字看了真是心乱如麻啊.别着急,稍作变化,你会喜欢的. 仅仅是利用文字大小及颜色的对比,却打破常规的构图结构,