通过 Ajax 将 Summernote 代码发布到 PHP,然后插入数据库

Posted

技术标签:

【中文标题】通过 Ajax 将 Summernote 代码发布到 PHP,然后插入数据库【英文标题】:Post Summernote code through Ajax to PHP and then insert into database 【发布时间】:2019-06-30 03:29:49 【问题描述】:

我有一个带有summernote编辑器的页面,当用户提交页面时,我通过jquery从编辑器中检索代码,然后将其发送到php页面,然后将html插入数据库。在我将它发送到 php 页面之前从编辑器中检索到的 html 是正确的,但是一旦它到达 php 页面,大部分 html 就会被剥离且不完整。

这是我的夏日笔记

<div class="summernote" id="decription" name="description"></div>

$('.summernote').summernote(
dialogsInBody: true,
toolbar: [
 ['style', ['bold', 'italic', 'underline', 'clear']],
 ['font', ['strikethrough']],
 ['fontsize', ['fontsize']],
 ['color', ['color']],
 ['para', ['ul', 'ol', 'paragraph']],
 ['table', ['table']],
 ['height', ['height']],
 ['undo', ['undo']],
 ['redo', ['redo']],
 ['help', ['help']]
],
placeholder: 'Describe the business here',
tabsize: 2,
height: 200
);

$('.dropdown-toggle').dropdown()

这是我在用户提交页面后从编辑器获取代码的方式

var description =  $("#decription").summernote('code');

然后我将此描述发布到我的 php 页面以将数据插入数据库

var dataString = 'desc=' + description;

alert(dataString); 
  $.ajax(
  type: "POST",
  url: "../scripts/add/addpro.php",
  data: dataString,
  cache: false,
  success: function(html) 
      alert(html);

);

我在发帖前做了一个警告,以确保发送到 php 的代码是编辑器中的所有内容(仅用于测试),这始终是正确和完整的,发送到 php 的代码就是编辑器中的所有内容。

在我的 addpro.php 页面中,我执行以下操作

$description = $_POST['desc'];

echo $description;

由 php 回显的 html 代码不完整且已被剥离。例如,当 html 代码中有逗号 (,) 时,php 只会向上跳转,然后跳过其余的标签和文本。

【问题讨论】:

【参考方案1】:

如图所示更新

var dataString = 'desc=' + description; 更新为var dataString = desc: description;

【讨论】:

我稍后会试一试,会更新结果。谢谢

以上是关于通过 Ajax 将 Summernote 代码发布到 PHP,然后插入数据库的主要内容,如果未能解决你的问题,请参考以下文章

如何使用summernote通过ajax同时传递内容和图片

如何使用 Ajax 将 Summernote 文本从 JSON 数据转换为纯文本?

无法使用 Javascript AJAX 从 Summernote textarea 获取价值发送帖子数据

使用ajax更新时无法从summernote获取价值

如何将通过summernote生成的大型base64图像保存在我的数据库中?

在数据库中保存summernote的问题