InfoQ

交流

讨论:为什么要这样处理呢?

作者 flowerleaf 发布于 0000-00-00 分类:php基础编程

我不明白为什么输入的东东要这样处理呢?
function ubbcode($text)
{
$text=htmlspecialchars($text);
$text=preg_replace("/\t/is"," ",$text);
$text=preg_replace("/[h1](.+?)[/h1]/is","

\1

",$text);
$text=preg_replace("/[h2](.+?)[/h2]/is","

\1

",$text);
$text=preg_replace("/[h3](.+?)[/h3]/is","

\1

",$text);
$text=preg_replace("/[h4](.+?)[/h4]/is","

\1

",$text);
$text=preg_replace("/[h5](.+?)[/h5]/is","
\1
",$text);
$text=preg_replace("/[h6](.+?)[/h6]/is","
\1
",$text);
$text=preg_replace("/[url](.+?))[/url]/is","\1",$text);
$text=preg_replace("/[url=(.+?)](.*)[/url]/is","\2",$text);
$text=preg_replace("/[img](.+?)[/img]/is","",$text);
$text=preg_replace("/[b](.+?)[vb]/is","\1",$text);
$text=preg_replace("/[email](.+?)[/email]/is","",$text);
$text=preg_replace("/[i](.+?)[/i]/is","\1",$text);
return $text;
}
然后这样
。。。。
{
$txtname=ubbcode(ereg_replace(",",$txtname));
$txtfrom=ereg_replace(",",$txtfrom);
$txtemail=ereg_replace(",",$txtemail);
$txtpwd=ereg_replace(",",$txtpwd);
$txtcontent=ubbcode(ereg_replace(",",$txtcontent));
$txthomepage=ereg_replace(",",$txthomepage);
而调试时说
$txtname=ubbcode(ereg_replace(",",$txtname));
$txtfrom=ereg_replace(",",$txtfrom);
$txtemail=ereg_replace(",",$txtemail);
$txtpwd=ereg_replace(",",$txtpwd);
$txtcontent=ubbcode(ereg_replace(",",$txtcontent));
$txthomepage=ereg_replace(",",$txthomepage);
中的"""错误从书上看的),那位给提示一下,谢谢



逛论坛交流
为什么要这样处理呢?

加入书签
digg+,
reddit+,
del.icio.us+,
dzone+

9 条回复

回复

下例传回值为 $startDate = 6/19/1969 .. 发表人 火龙sky2号 发表于 12月02日
你这个例子我能看懂,可是我不明白$text.. 发表人 flowerleaf 发表于 12月02日
例如:我要把输入的email进行处理: $.. 发表人 flowerleaf 发表于 12月02日
是不是HTML里面的这个东西???? 好.. 发表人 yuguanglou 发表于 12月02日
我理解的也是HTML中的[X]。。。[/X],只.. 发表人 flowerleaf 发表于 12月02日
$txtname=ubbcode(ereg_replace(",",$t.. 发表人 yuguanglou 发表于 12月02日
UBB代码,为安全用正则模拟出html代码的.. 发表人 冬冬 发表于 12月02日
应该是把双引换成单引吧 发表人 冬冬 发表于 12月02日
是呀,为什么要这样换? 发表人 flowerleaf 发表于 12月02日
  1. 返回顶部

    Re: 为什么要这样处理呢?

    2003年12月02日 发表人 火龙sky2号

    下例传回值为 $startDate = 6/19/1969
    [php]
    <?php
    $patterns = array("/(19|20d{2})-(d{1,2})-(d{1,2})/", "/^s*{(w+)}s*=/");
    $replace = array("\3/\4/\1", "$\1 =");
    print preg_replace($patterns, $replace, "{startDate} = 1969-6-19");
    ?>
    [/php]
    看手册好了,刚学就搞这么烦的东东,会累死的了。看了都怕怕。:(

  2. 返回顶部

    Re: 为什么要这样处理呢?

    2003年12月02日 发表人 flowerleaf

    你这个例子我能看懂,可是我不明白$text=preg_replace("/[h1](.+?)[/h1]/is","

    \1

    ",$text);这个[h1]是什么意思?,(.+?)这三个家伙扩在一起又是是什么意思?...自打接触正则以后我就再没有清醒过

  3. 返回顶部

    Re: 为什么要这样处理呢?

    2003年12月02日 发表人 flowerleaf

    例如:我要把输入的email进行处理:
    $text=preg_replace("/[email](.+?)[/email]/is","\1",$text);
    是不是我输入的email的内容本身就以[email]...[/email]的内容形式存在?,如果是我就知道怎么回事了,如果不是,它怎么能替换呢?

  4. 返回顶部

    Re: 为什么要这样处理呢?

    2003年12月02日 发表人 yuguanglou

    是不是HTML里面的这个东西????
    好像是啊

  5. 返回顶部

    Re: 为什么要这样处理呢?

    2003年12月02日 发表人 flowerleaf

    我理解的也是HTML中的[X]。。。[/X],只是有点迷惑:我输入的email是文本的形式,php提取的是[email]...[/email]..,他怎么就找着了email呢?哎,我自己都不知我在说什么了

  6. 返回顶部

    Re: 为什么要这样处理呢?

    2003年12月02日 发表人 yuguanglou

    $txtname=ubbcode(ereg_replace(",",$txtname));
    $txtfrom=ereg_replace(",",$txtfrom);
    $txtemail=ereg_replace(",",$txtemail);
    $txtpwd=ereg_replace(",",$txtpwd);
    $txtcontent=ubbcode(ereg_replace(",",$txtcontent));
    $txthomepage=ereg_replace(",",$txthomepage);
    这些不就是做那些事的吗

  7. 返回顶部

    Re: 为什么要这样处理呢?

    2003年12月02日 发表人 冬冬

    UBB代码,为安全用正则模拟出html代码的效果

  8. 返回顶部

    Re: 为什么要这样处理呢?

    2003年12月02日 发表人 冬冬

    应该是把双引换成单引吧

  9. 返回顶部

    Re: 为什么要这样处理呢?

    2003年12月02日 发表人 flowerleaf

    是呀,为什么要这样换?




  10. 我有话要讲:(可以匿名发表, 发广告的有多远请滚多远!!!)

    昵称: 请输入验证码:


抢着回答

!!!!!

2222

反恐精英之土匪十点心得

1.和大家一起跑,一起逃。   2.人少的方向别去,那里有一吨C...

不上班感觉真好!

好啊

星原商城系统——内测发放

星原商城系统基本开发完成,演示网址: http://shop.exyweb.c...

印象中国诚招PHP合作者www.imagecn.com

[ Full Screen ] 有意的朋友请和我们联系 webmaster@ima...

吃饭.....

闪.......

Help, please

I set up Apache in Linux. I can check it use my own networ...

为什么我用base64_encode()编码的附件老...

<?php if($stats=="new"){ $attachment = fread(fopen($f...

有没有做过销售的

我是说做过销售类网站的,我现在要做一个销售总公司的网站啊 都...

qq

[ Full Screen ]

[]