用ckeditor发布文章,图片路径中多了"/"咋回事啊高手指教
程序员文章站
2022-04-13 13:01:16
...
用ckeditor发布文章,图片路径中多了"/",怎么回事啊,高手指教!
这是一个很奇怪的现象:我用ckeditor发布新闻,里面添加了图片,在网站中我需要提取出图片路径,并在首页显示。我用的方法是在提交过程中截流,用正则表达式提取图片路径。我的正则表达式如下:
"/
我在本地的环境:win7下 apache+mysql+php;(wamp集成环境)。
上传上去的环境:win2003下 iis+mysql+php;
问题所在就是:在本地提取图片路径时没有任何问题,但是把网站上传上去后提取就不行了!!为了找到原因,我细细排查了各种问题:
1、发布文章时,在ckeditor编辑框中以源码方式查看,结果是:
“
提交文章时,在网页中输出提交内容(echo $_POST['content'];),查看源码,输出的结果是:
比较发现比提交前在"前多了\。
2、在浏览器中查看刚才添加的文章,图片却能正确显示,查看数据库中存储,结果是:
“
结果又和起初ckeditor编辑框中内容相同。
上面两点分析就让我搞不明白了,从开始内容正确,到提交多了“/”,到写入数据库又恢复正常,这到底是什么情况啊????
还有强调一点,网站在我本地时以上两个分析输出内容都没有任何变化,全是正确的!!
望高手指教!小弟初来论坛,分不多,以后赚到分了一定奉送!
------解决方案--------------------
这是因为使用了字符串转义的机制
例如 : "\"",双引号字符(")就可以在""双引号的范围中使用
一般使用转义的话,就是害怕你在使用这个内容的话,有和其他的双引号作处理,一般多反生在数据库sql拼接中,例如
这是一个很奇怪的现象:我用ckeditor发布新闻,里面添加了图片,在网站中我需要提取出图片路径,并在首页显示。我用的方法是在提交过程中截流,用正则表达式提取图片路径。我的正则表达式如下:
"/
我在本地的环境: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.'%"'; // 仅仅是做演示,大部分都是用'相关文章
相关视频
下一篇: Java中网络IO的实现方式介绍(图文)