Home  >  Article  >  Backend Development  >  用ckeditor发布文章,图片路径中多了"/"咋回事啊高手指教

用ckeditor发布文章,图片路径中多了"/"咋回事啊高手指教

WBOY
WBOYOriginal
2016-06-13 10:23:29874browse

用ckeditor发布文章,图片路径中多了"/",怎么回事啊,高手指教!
这是一个很奇怪的现象:我用ckeditor发布新闻,里面添加了图片,在网站中我需要提取出图片路径,并在首页显示。我用的方法是在提交过程中截流,用正则表达式提取图片路径。我的正则表达式如下:
"/\"\w+|\"
我在本地的环境:win7下 apache+mysql+php;(wamp集成环境)。
上传上去的环境:win2003下 iis+mysql+php;

问题所在就是:在本地提取图片路径时没有任何问题,但是把网站上传上去后提取就不行了!!为了找到原因,我细细排查了各种问题:
1、发布文章时,在ckeditor编辑框中以源码方式查看,结果是:


请在这里添加文章内容!




提交文章时,在网页中输出提交内容(echo $_POST['content'];),查看源码,输出的结果是:


请在这里添加文章内容!



\"\"
\"width: 400px; height: 300px;\" />


比较发现比提交前在"前多了\。

2、在浏览器中查看刚才添加的文章,图片却能正确显示,查看数据库中存储,结果是:


请在这里添加文章内容!




结果又和起初ckeditor编辑框中内容相同。

上面两点分析就让我搞不明白了,从开始内容正确,到提交多了“/”,到写入数据库又恢复正常,这到底是什么情况啊????
还有强调一点,网站在我本地时以上两个分析输出内容都没有任何变化,全是正确的!!
望高手指教!小弟初来论坛,分不多,以后赚到分了一定奉送!

------解决方案--------------------
这是因为使用了字符串转义的机制

例如 : "\"",双引号字符(")就可以在""双引号的范围中使用

一般使用转义的话,就是害怕你在使用这个内容的话,有和其他的双引号作处理,一般多反生在数据库sql拼接中,例如

PHP code
$a = '我有一个双引号"';$sql = 'SELECT * FROM test WHERE title link "%'.$a.'%"'; // 仅仅是做演示,大部分都是用'<div class="clear">
                 
              
              
        
            </div>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn