2016-07-16 97 views
3

我需要将html内容插入到mysql table.but脚本中去掉html内容的一部分。 Html内容如下。将html内容插入到mysql表中

 <div data-plugin-lightbox data-plugin-options='{"delegate": "a", "type": "image", "gallery": {"enabled": true}}'> 

我无法上传所有content.mysql表有 只有

<div data-plugin-lightbox data-plugin-options={" 

我如何可以插入任何HTML内容的MySQL表。

+0

什么是你保存html的mysql字段的数据类型? –

+0

不,我甚至不能回应外部php文件中的内容。(<?php echo $ _POST ['data'])我使用jquery ajax form submit。 –

回答

2

似乎是一个双引号相关的问题..你应该逃避双引号的JSON

<div data-plugin-lightbox data-plugin-options='{\"delegate\": \"a\", \"type\": ....... 

或问题可以在PHP

分配涉及到您的字符串赋值

$sql = "< <div data-plugin-lightbox data-plugin-options='{"delegate": " 

中断第二个双引号

2

HTML tegs c以纯文本形式插入到mysql中。但是,您应该回显您正确插入的内容。

2

在存储到数据库之前使用htmlspecialchars($ str)。

并从数据库读取后使用htmlspecialchars_decode($ str)。

2

尝试使用字符串上的htmlspecialchars()放入数据库,然后在将其拉出时使用htmlspecialchars_decode()。可能会有所作为。

1

在SQL查询中使用它们之前,您应该始终避开字符串,以避免您在此遇到的问题以及security reasons

PHP中的MySQLi extenstion自带mysqli_real_escape_string是这里只是为了这个目的,尊重的连接的字符集:

面向对象的风格:

$var = $mysqli->real_escape_string($var); 

程序风格:

$var = mysqli_real_escape_string($db_link, $var); 
0

我找到了解决方案。 原因是'& q u o t; ”。 用于避免 var NewString = text.replace(/ &/g,“xxx”);

谢谢大家