今天遇到一个挺有趣的字符编码转义,通过HTML的Textarea表单JQuery Ajax POST内容到PHP,然后存储到MySQL数据库,然后Ajax根据POST 的 DATA 回显,如果刷新页面,通过PHP 输出MySQL 存储的编码; 首先引用一下转义字符串的基础知识。 转义字符串 基本知识 转
今天遇到一个挺有趣的字符编码转义,通过HTML的Textarea表单JQuery Ajax POST内容到PHP,然后存储到MySQL数据库,然后Ajax根据POST 的 DATA 回显,如果刷新页面,通过PHP 输出MySQL 存储的编码;
首先引用一下转义字符串的基础知识。
转义字符串 基本知识
转义字符串(Escape Sequence),即字符实体(Character Entity)分成三部分:第一部分是一个&符号,英文叫ampersand;第二部分是实体(Entity)名字或者是#加上实体(Entity)编号;第三部分是一个分号。
比如,要显示小于号(
用实体(Entity)名字的好处是比较好理解,一看lt,大概就猜出是less than的意思,但是其劣势在于并不是所有的浏览器都支持最新的Entity名字。而实体(Entity)编号,各种浏览器都能处理。
提示:实体名称(Entity)是区分大小写的。 同一个符号,可以用“实体名称”和“实体编号”两种方式引用,“实体名称”的优势在于便于记忆,但不能保证所有的浏览器都能顺利识别它,而“实体编号”则没有这种担忧,但它实在不方便记忆。
JS 将HTML字符编码 转换到 特殊字符
定义一个函数decodeEntities将HTML字符编码 转换到 特殊字符:
function decodeEntities(s){
var str, temp= document.createElement(‘p’);
temp.innerHTML= s;
str= temp.textContent || temp.innerText;
temp=null;
return str;
}
这个函数,将会把' & 等直接转换为’ (单引号) 和 &
比如 you appreciate the driver's consideration , & 就会变成 you appreciate the driver’s consideration , &
PHP 将HTML字符编码 转换到 特殊字符
PHP 默认有函数将 HTML字符编码 转换到 特殊字符
html_entity_decode (PHP 4 >= 4.3.0, PHP 5)
string html_entity_decode ( string $string
[, int $flags
= ENT_COMPAT | ENT_HTML401 [, string $encoding
= 'UTF-8' ]] )
html_entity_decode — Convert all HTML entities to their applicable characters (转换所有的HTML字符编码到对应的特殊字符串)
注意这个函数的参数ENT_COMPAT 默认会转换双引号,不会转换单引号;
为了能够同时转换单引号和双引号,需要使用 int $flags = ENT_QUOTES
通过以下的这段PHP处理数据库中的值:
html_entity_decode($node->body, ENT_QUOTES | ENT_HTML401)
这个函数,将会把' & 等直接转换为’ (单引号) 和 &
比如 you appreciate the driver's consideration , & 就会变成 you appreciate the driver’s consideration , &
整个流程操作
假设在HTML文本框中输入这三行内容:
you appreciate the driver's consideration , &
you appreciate the driver's consideration , &
you appreciate the driver’s consideration , &
如下图:
点击“确定”按钮后,执行JQuery Ajax Post 操作 通过PHP插入到数据库;
(...)
Read the rest of HTML字符编码JS和PHP 转义 (108 words)
© lixiphp for LixiPHP, 2013. |
Permalink |
No comment |
Add to
del.icio.us
Post tags: html, JQuery, js, MySQL, PHP, 字符编码, 转义
Feed enhanced by Better Feed from Ozh

MySQL通过异步、半同步和组复制三种模式处理数据复制。1)异步复制性能高但可能丢失数据。2)半同步复制提高数据安全性但增加延迟。3)组复制支持多主复制和故障转移,适用于高可用性需求。

EXPLAIN语句可用于分析和提升SQL查询性能。1.执行EXPLAIN语句查看查询计划。2.分析输出结果,关注访问类型、索引使用情况和JOIN顺序。3.根据分析结果,创建或调整索引,优化JOIN操作,避免全表扫描,以提升查询效率。

使用mysqldump进行逻辑备份和MySQLEnterpriseBackup进行热备份是备份MySQL数据库的有效方法。1.使用mysqldump备份数据库:mysqldump-uroot-pmydatabase>mydatabase_backup.sql。2.使用MySQLEnterpriseBackup进行热备份:mysqlbackup--user=root--password=password--backup-dir=/path/to/backupbackup。恢复时,使用相应的命

MySQL慢查询的主要原因包括索引缺失或不当使用、查询复杂度、数据量过大和硬件资源不足。优化建议包括:1.创建合适的索引;2.优化查询语句;3.使用分表分区技术;4.适当升级硬件。

MySQL视图是基于SQL查询结果的虚拟表,不存储数据。1)视图简化复杂查询,2)增强数据安全性,3)维护数据一致性。视图是数据库中的存储查询,可像表一样使用,但数据动态生成。

mysqldiffersfromothersqldialectsinsyntaxforlimit,自动启动,弦乐范围,子征服和表面上分析。1)MySqluessLipslimit,whilesqlserverusestopopandoraclesrontersrontsrontsrontsronnum.2)

MySQL分区能提升性能和简化维护。1)通过按特定标准(如日期范围)将大表分成小块,2)物理上将数据分成独立文件,3)查询时MySQL可专注于相关分区,4)查询优化器可跳过不相关分区,5)选择合适的分区策略并定期维护是关键。

在MySQL中,如何授予和撤销权限?1.使用GRANT语句授予权限,如GRANTALLPRIVILEGESONdatabase_name.TO'username'@'host';2.使用REVOKE语句撤销权限,如REVOKEALLPRIVILEGESONdatabase_name.FROM'username'@'host',确保及时沟通权限变更。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

WebStorm Mac版
好用的JavaScript开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

禅工作室 13.0.1
功能强大的PHP集成开发环境