将输入框的输入的hrml代码写入数据库当读取数据库的时候在页面上显示的就不是原来的html代码了请问如何使数据库中的代码不被浏览器解释,将其原样输出

解决方案 »

  1.   

    htmlentities方法对数据中的 < > " ' 转义,这样浏览器就不会解析出代码了
      

  2.   

    1楼的正解,你也可以麻烦点自己写个字符串解析函数,把数据从MYSQL中读出,把“<”和“>”解析成字符实体输出,其余的字符不变,应该也可以输出html的代码。
      

  3.   


    我的代码htmlentities($content, ENT_QUOTES,UTF-8);为什么$content里的汉字是乱码显示的错误提示是:charset `-8' not supported, assuming iso-8859-1 这是怎么回事
      

  4.   

    htmlentities($content, ENT_QUOTES, "UTF-8");
      

  5.   


    我改用了htmlspecialchars直接使用htmlspecialchars($content);就没有出现乱码htmlspecialchars函数与htmlentities有什么不同
      

  6.   


    The translations performed are:‘&’ (ampersand) becomes ‘&’‘”‘ (double quote) becomes ‘”‘ when ENT_NOQUOTES is not set.”’ (single quote) becomes ”’ only when ENT_QUOTES is set.‘<’ (less than) becomes ‘<’‘>’ (greater than) becomes ‘>’
    功能差不多 但是htmlspecialchars只处理上面这几个html代码,而htmlentities却会转化所有的html代码.所以有的无法识别的中文它会把它转换成一堆乱码.看你自己的情况选用吧,建议是使用 htmlspecialchars