为什么是MySQL插入'\\'之前,我的链接?

当我通过与PHP的形式插入一个链接,我的数据库的链接之前把反斜杠。 我用了tinyMCE。

例如,这是它的外观在数据库中:

(14, 'MULTIMÉDIA', 'multimdia', '<h2><strong>RISING HARMONY&nbsp;</strong></h2>\r\n<p><strong>ITT A ZENE VIL&Aacute;GA URALKODIK.</strong></p>\r\n<p><strong>KEDVENC&Eacute;T &Ouml;N IS MEGOSZTHATJA&nbsp;</strong><strong>AZ AL&Aacute;BBI C&Iacute;MEN:</strong></p>\r\n<p><strong><a href=\\"\\\\&quot;\\\\\\\\&quot;\\\\\\\\\\\\\\\\&quot;mailto:personicum@gmail.com\\\\\\\\\\\\\\\\&quot;\\\\\\\\&quot;\\\\&quot;\\">personicum@gmail.com</a> &nbsp;</strong></p>', '<p><iframe src=\\"\\\\&quot;\\\\\\\\&quot;\\\\\\\\\\\\\\\\&quot;/www.youtube.com/embed/1ov6USLXwGA\\\\\\\\\\\\\\\\&quot;\\\\\\\\&quot;\\\\&quot;\\" width=\\"\\\\&quot;\\\\\\\\&quot;\\\\\\\\\\\\\\\\&quot;270\\\\\\\\\\\\\\\\&quot;\\\\\\\\&quot;\\\\&quot;\\" height=\\"\\\\&quot;\\\\\\\\&quot;\\\\\\\\\\\\\\\\&quot;152\\\\\\\\\\\\\\\\&quot;\\\\\\\\&quot;\\\\&quot;\\" frameborder=\\"\\\\&quot;\\\\\\\\&quot;\\\\\\\\\\\\\\\\&quot;0\\\\\\\\\\\\\\\\&quot;\\\\\\\\&quot;\\\\&quot;\\" allowfullscreen=\\"allowfullscreen\\"></iframe>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;<iframe src=\\"\\\\&quot;\\\\\\\\&quot;\\\\\\\\\\\\\\\\&quot;/www.youtube.com/embed/bnv6dPQ5f88\\\\\\\\\\\\\\\\&quot;\\\\\\\\&quot;\\\\&quot;\\" width=\\"\\\\&quot;\\\\\\\\&quot;\\\\\\\\\\\\\\\\&quot;263\\\\\\\\\\\\\\\\&quot;\\\\\\\\&quot;\\\\&quot;\\" height=\\"\\\\&quot;\\\\\\\\&quot;\\\\\\\\\\\\\\\\&quot;150\\\\\\\\\\\\\\\\&quot;\\\\\\\\&quot;\\\\&quot;\\" frameborder=\\"\\\\&quot;\\\\\\\\&quot;\\\\\\\\\\\\\\\\&quot;0\\\\\\\\\\\\\\\\&quot;\\\\\\\\&quot;\\\\&quot;\\" allowfullscreen=\\"allowfullscreen\\"> )

这应该是一个YouTube视频,通过插入tinyMCE的。 它对图像同样的事情,任何形式的联系。 所以,我的问题是,为什么做这些事情的出现?

下面是表:

CREATE TABLE IF NOT EXISTS `blog_posts_seo` ( `postID` int(11) unsigned NOT NULL AUTO_INCREMENT, `postTitle` varchar(255) DEFAULT NULL, `postSlug` varchar(255) DEFAULT NULL, `postDesc` text, `postCont` text, `postDate` datetime DEFAULT NULL, PRIMARY KEY (`postID`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=25 ;

与另一个表它工作得很好,所以这意味着,这个问题是不是与我的php,但如果需要的话,我将它拷贝到这里。 这是什么问题造成的? 网站上有404错误代替视频。

如果我手动插入他们通过MySQL的,那么一切都很好,但如果我通过表单插入它看起来像这样。 另外,如果我使用相同的PHP和其他数据库,它工作正常。 这是一个悖论,我没有经历过。 我没有发现问题。

此外,在当地它工作正常,就说明是这样的:

<p><iframe src="//www.youtube.com/embed/Lcu8SdcsYnY" width="425" height="350"></iframe></p>

先谢谢你。

--------------解决方案-------------

你运行addslashes()在你的输入,或者其他逃避职能多次。 你可能会对亦幻的报价。 你应该保持原始的字符串,唯一正确的插入数据库之前转义。 通过PDO的绑定参数最佳。

分类:php 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.816 (s). 10 q(s)