你按格式插入那出来自然不变啊。
insert tb (name,message) values ('doodoo','<font>hahaah.</font>');

解决方案 »

  1.   

    如果那文字是用textarea来输入的,那得到的应该是一段string,怎么保持它的
    格式来存入数据库??
      

  2.   

    PHP中的处理方法(转):
    入库时
    $str=addslashes($str);
    $sql="insert into `tab` (`content`) values('$str')";
    出库时
    $str=stripslashes($str);
    显示时
    $str=htmlspecialchars(nl2br($str)) ;
      

  3.   

    有些不明白你在说什么,在MYSQL中,你写入什么提出的就是什么,一般数据库不会给你改数据的。
    我猜是不是想保留输出文本中的回车和换行啊,如果是的话,在PHP中有nl2br函数,可以将回车换行替换成<br>,从数据库中提出数据后,用它处理一下,输出的时候看上去就是有格式的了。
      

  4.   

    那怎么保存文本中的tab呢?取出来的时候tab不变呢?
      

  5.   


    没必要考虑那么细致吧只要入库的时候考虑到危险字符的过滤,引号的处理,对其他非危险字符的保留显示的时候
    $detail = specialhtmlchars($detail);
    $detail = str_replace("\n","<br>",str_replace("  ","&nbsp;&nbsp;",$detail));
    这样就差不多了关于这个问题我也想讨论讨论呢
      

  6.   

    呵呵,楼上的写的不错!
    具体tab字符有没有保存,我就不清楚了,你可用str_replace试着把ASCII码为9的字符换成几个'&nbsp'。
    可以一试,不保成功哦!