GVKun编程网logo

将 Android 中 WYSIWYG 编辑器的输入发送到 PHP 服务器的最可靠方法?

1

对于将Android中WYSIWYG编辑器的输入发送到PHP服务器的最可靠方法?感兴趣的读者,本文将会是一篇不错的选择,并为您提供关于Bootstrapwysiwyg,将富文本数据保存到mysql、b

对于将 Android 中 WYSIWYG 编辑器的输入发送到 PHP 服务器的最可靠方法?感兴趣的读者,本文将会是一篇不错的选择,并为您提供关于Bootstrap wysiwyg,将富文本数据保存到mysql、bootstrap-wysiwyg--富文本编辑器使用教程、bootstrap-wysiwyg: 迷你的Bootstrap的所见即所得的HTML富文本编辑器、C#winfom htmleditor – WYSIWYG的有用信息。

本文目录一览:

将 Android 中 WYSIWYG 编辑器的输入发送到 PHP 服务器的最可靠方法?

将 Android 中 WYSIWYG 编辑器的输入发送到 PHP 服务器的最可靠方法?

如何解决将 Android 中 WYSIWYG 编辑器的输入发送到 PHP 服务器的最可靠方法?

我在 Android 中创建了一种 WYSIWG 编辑器。要发送的数据具有以下示例结构:

  1. text
  2. image
  3. image
  4. text

第一个想法是通过 JSON 以这种方式发送它:

  1. {"1": {"text": "Text 1"},"2": {"image": "Image 1"},"3":{"image": "Image 2"},"4": {"text": "Text 2"}}

图像将是一个 base64 字符串。我认为这不是最好的主意,因为 JSON 字符串的长度是有限的。

想法 2: 创建 PHP 套接字服务器并创建基于 TCP 的客户端服务器应用程序。

想法 3: 创建一个 PHP 网络服务器并通过 post 请求发送数据。

哪种方式是将图像和文本数据传输到网络服务器的最快、最可靠的方式?还有其他快速可靠的方法吗?是否有限制(例如数据传输的大小)? PHP Socket Server 可以工作吗?最多有 100 个客户端和一个服务器。

Bootstrap wysiwyg,将富文本数据保存到mysql

Bootstrap wysiwyg,将富文本数据保存到mysql

Bootstrap提供了一个叫wysiwyg的富文本组件,用来显示和编辑富文本数据,但如何将编辑后的数据保存到MysqL数据库,却不得而知。另外,如何将MysqL数据库中的数据显示到wysiwyg也不得而知,对于这两个问题,让我来告诉你解决方案!

###一、效果展示
首先,我们先来看看效果如何:


  1. 富文本中有一张图片,还有一个数字列表
  2. 我们可以看到编辑后的数据保存成功,以及保存后对应的展示。

###二、富文本
度娘对于富文本的解释如下:

富文本格式(Rich Text Format, 一般简称为RTF)是由微软公司开发的跨平台文档格式。大多数的文字处理软件都能读取和保存RTF文档。RTF是Rich textformat的缩写,意即多文本格式。这是一种类似DOC格式(Word文档)的文件,有很好的兼容性,使用Windows“附件”中的“写字板”就能打开并进行编辑。RTF是一种非常流行的文件结构,很多文字编辑器都支持它。一般的格式设置,比如字体和段落设置,页面设置等等信息都可以存在RTF格式中,它能在一定程度上实现word与wps文件之间的互访。

如果说富文本不包含图片,我们可以使用普通的html转码方法,见标题四;如果富文本包含图片,普通的html转码已经满足不了我们了,就需要用到jquery.base64.js,见标题三。

那么同时,我们看一看MysqL字段的定义:

`description` longtext NOT NULL COMMENT ''项目详细描述'',

字段类型为longtext(LongText 最大长度4294967295个字元 (2^32-1),虽然我也不知道到底有多大)。

###三、jquery.base64
####①、引入jquery.base64.js

<script type="text/javascript" src="${ctx}/components/jquery/jquery.base64.js"></script>

同时设置utf-8编码,确保中文不乱码.

$.base64.utf8encode = true;

####②、富文本表单提交

var editor = "<input type=''hidden'' name=''" + $this.attr("name") + "'' value=''"
                        + $.base64.btoa($this.html()) + "'' />";

关键代码:将富文本对象的html值转换为base64,然后封装到表单form中。
详细见如下(一整个form提交的表单封装,参照与dwz框架):

/**
 * 带文件上传的ajax表单提交
 * 
 * @param {Object}
 *            form
 * @param {Object}
 *            callback
 */
function iframeCallback(form, callback) {
	YUNM.debug("带文件上传处理");

	var $form = $(form), $iframe = $("#callbackframe");

	// 富文本编辑器
	$("div.editor", $form).each(
			function() {
				var $this = $(this);
				var editor = "<input type=''hidden'' name=''" + $this.attr("name") + "'' value=''"
						+ $.base64.btoa($this.html()) + "'' />";
				$form.append(editor);
			});

	var data = $form.data(''bootstrapValidator'');
	if (data) {
		if (!data.isValid()) {
			return false;
		}
	}

	if ($iframe.size() == 0) {
		$iframe = $("<iframe id=''callbackframe'' name=''callbackframe'' src=''about:blank''display:none''></iframe>")
				.appendTo("body");
	}
	if (!form.ajax) {
		$form.append(''<input type="hidden" name="ajax" value="1" />'');
	}
	form.target = "callbackframe";

	_iframeResponse($iframe[0], callback || YUNM.ajaxDone);
}
function _iframeResponse(iframe, callback) {
	var $iframe = $(iframe), $document = $(document);

	$document.trigger("ajaxStart");

	$iframe.bind("load", function(event) {
		$iframe.unbind("load");
		$document.trigger("ajaxStop");

		if (iframe.src == "javascript:''%3Chtml%3E%3C/html%3E'';" || // For
		// Safari
		iframe.src == "javascript:''<html></html>'';") { // For FF, IE
			return;
		}

		var doc = iframe.contentDocument || iframe.document;

		// fixing Opera 9.26,10.00
		if (doc.readyState && doc.readyState != ''complete'')
			return;
		// fixing Opera 9.64
		if (doc.body && doc.body.innerHTML == "false")
			return;

		var response;

		if (doc.XMLDocument) {
			// response is a xml document Internet Explorer property
			response = doc.XMLDocument;
		} else if (doc.body) {
			try {
				response = $iframe.contents().find("body").text();
				response = jQuery.parseJSON(response);
			} catch (e) { // response is html document or plain text
				response = doc.body.innerHTML;
			}
		} else {
			// response is a xml document
			response = doc;
		}

		callback(response);
	});
}

####③、富文本数据展示

$(''#editor'').html($.base64.atob(description, true));

通过base64对数据库中保存的HTML代码进行解码。

####④、wysiwyg组件
关于wysiwyg组件封装代码,我已上传到CSDN的代码库,可详细参照。

###四、普通html转码做法

function html_encode(str) {
	var s = "";
	if (str.length == 0)
		return "";
	s = str.replace(/&/g, "&gt;");
	s = s.replace(/</g, "&lt;");
	s = s.replace(/>/g, "&gt;");
	s = s.replace(/ /g, "&nbsp;");
	s = s.replace(/\''/g, "&#39;");
	s = s.replace(/\"/g, "&quot;");
	s = s.replace(/\n/g, "<br>");
	return s;
}

function html_decode(str) {
	var s = "";
	if (str.length == 0)
		return "";
	s = str.replace(/&gt;/g, "&");
	s = s.replace(/&lt;/g, "<");
	s = s.replace(/&gt;/g, ">");
	s = s.replace(/&nbsp;/g, " ");
	s = s.replace(/&#39;/g, "\''");
	s = s.replace(/&quot;/g, "\"");
	s = s.replace(/<br>/g, "\n");
	return s;
}

一般情况下,使用上面两个方法对html数据进行编码和解码,但是对于图片的保存却无能为力。

总结

以上是小编为你收集整理的Bootstrap wysiwyg,将富文本数据保存到mysql全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

原文地址:https://blog.51cto.com/u_2324584/2935278

bootstrap-wysiwyg--富文本编辑器使用教程

bootstrap-wysiwyg--富文本编辑器使用教程

总结

以上是小编为你收集整理的bootstrap-wysiwyg--富文本编辑器使用教程全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

bootstrap-wysiwyg: 迷你的Bootstrap的所见即所得的HTML富文本编辑器

bootstrap-wysiwyg: 迷你的Bootstrap的所见即所得的HTML富文本编辑器

日期:2013-5-1  来源:GBin1.com

在线演示

如果你寻找一款boostrap的HTML富文本编辑器的话,这里推荐一款超简单的富文本编辑器 - bootstrap-wysiwyg。

主要特性

  • 超小5kb
  • 自动的热键支持(MAC和windows)
  • 拖放的插入图片,支持图片上传(支持手机拍照)
  • 支持声音输入(chrome支持)
  • 允许自定义的工具条,可以使用所有的bootstrap内容,字体
  • 不使用任何强制的样式
  • 使用标准的浏览器特性,没有非标准的使用代码,工具条和按键可以执行任何支持浏览器的命令
  • 不创建任何的iframe,textarea,使用简单的行内div
  • 可选的清楚空白和空div和span
  • 支持现代浏览器(Chrome 26, Firefox 19, Safari 6,  IE10)
  • 支持移动设备( IOS 6 Ipad/Iphone and Android 4.1.1 Chrome)

如何使用

$(''#editor'').wysiwyg();

保证样式如下:

#editor {overflow:scroll; max-height:300px}

网站地址:http://mindmup.github.io/bootstrap-wysiwyg/

来源:bootstrap-wysiwyg: 迷你的Bootstrap的所见即所得的HTML富文本编辑器

C#winfom htmleditor – WYSIWYG

C#winfom htmleditor – WYSIWYG

对于C#winform应用程序,我需要一个WYSIWYG html编辑器,如 ckeditor或 niceedit.这样用户可以编辑html然后我将其插入数据库.

C#winform应用程序有什么WYSIWYG?
TNX

解决方法

只需将上述编辑器之一放入 WebBrowser控件中即可完成.

关于将 Android 中 WYSIWYG 编辑器的输入发送到 PHP 服务器的最可靠方法?的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于Bootstrap wysiwyg,将富文本数据保存到mysql、bootstrap-wysiwyg--富文本编辑器使用教程、bootstrap-wysiwyg: 迷你的Bootstrap的所见即所得的HTML富文本编辑器、C#winfom htmleditor – WYSIWYG的相关信息,请在本站寻找。

本文标签: