有关PHP、HTML单引号、双引号转义以及转成HTML实体的那些事!
作者:admin 日期:2015-11-12
关于 kindeditor提交空格问题的解决办法
作者:admin 日期:2015-11-12
版本4.1.10
问题反馈:后台编辑器段首空格无法正常保存到数据库。
变通办法:早期,通知用户使用全角空格,但后面发现提交后显示正常,再次编辑时未出现空格。
最终解决办法:
修改 kindeditor.js 725行
部分我公司调整后的js行数为 752行
将本行修改为:
var re = /([ \f\n\r\t\v]*)<(\/)?([\w\-:]+)((?:\s+|(?:\s+[\w\-:]+)|(?:\s+[\w\-:]+=[^\s"'<>]+)|(?:\s+[\w\-:"]+="[^"]*")|(?:\s+[\w\-:"]+='[^']*'))*)(\/)?>([ \f\n\r\t\v]*)/g;
就是把第一个和最后一个 \s 替换成 [ \f\n\r\t\v]
修改前请注意备份
kindeditor中单引号双引号转义问题的php解决方法
作者:admin 日期:2015-11-12
办法一:利用php自带函数解决。对于由kindeditor提交上来的数据用php中自带的函数 stripslashes 去除,但是这样是不是太浪费效率了,先转义,再去掉转义?
stripslashes() 函数删除由 addslashes() 函数添加的反斜杠。
办法二:利用服务器环境解决。产生转义符号,应该不是kindeditor的问题。这个和PHP的配置有关。magic_quotes_gpc = Off
偏方:最好是不要关闭魔术转义,那样就失去了过滤的意义了。如果用的smarty模版,可以选择在输出的时候使用smarty函数 {$article.content|stripslashes}
php读取和保存base64编码的图片内容
作者:admin 日期:2015-11-11
- header('Content-type:text/html;charset=utf-8');
- //读取图片文件,转换成base64编码格式
- $image_file = './4296762_165319032930_2.jpg';
- $image_info = getimagesize($image_file);
- $base64_image_content = "data:{$image_info['mime']};base64," . chunk_split(base64_encode(file_get_contents($image_file)));
- //保存base64字符串为图片
- //匹配出图片的格式
- if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
- $type = $result[2];
- $new_file = "./test.{$type}";
- if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){
- echo '新文件保存成功:', $new_file;
- }
- }
<img src=
"<?php echo $base64_image_content;?>"
/>
SQL Server 2008 收缩日志 清空删除大日志文件
作者:admin 日期:2015-11-10
SQL2008 的收缩日志
由于SQL2008对文件和日志管理进行了优化,所以以下语句在SQL2005中可以运行但在SQL2008中已经被取消:
(SQL2005)
BackupLog DNName with no_log
go
dumptransaction DNName with no_log
go
USE DNName
DBCC SHRINKFILE (2)
Go
--------------------------------------------------------------
(SQL2008):
在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。
方案一:完全命令模式
USE[master]
GO
AlterDATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT
GO
AlterDATABASE DNName SET RECOVERY SIMPLE --简单模式
GO
USE DNName
GO
DBCC SHRINKFILE (N'DNName_Log' , 11, TRUNCATEONLY)
GO
USE[master]
GO
AlterDATABASE DNName SET RECOVERY FULLWITH NO_WAIT
GO
AlterDATABASE DNName SET RECOVERY FULL --还原为完全模式
GO
方案二:部分命令模式 + 任务-收缩-文件(单个数据库)
AlterDATABASE DNName SET RECOVERY SIMPLE --简单模式
GO
右键-任务-收缩-文件-确定 下来数据库的日志只保留了1M
AlterDATABASE DNName SET RECOVERY FULL --还原为完全模式
GO
优点:此清除日志所运行消耗的时间短,90GB的日志在分钟左右即可清除完毕,做完之后做个完全备份在分钟内
即可完成。
缺点: 不过此动作最好不要经常使用,因为它的运行会带来系统碎片。普通状态下LOG和DIFF的备份即可截断日志。
此语句使用的恰当环境:当系统的日志文件异常增大或者备份LOG时间太长可能影响生产的情况下使用。
javascript判断浏览器是否允许弹窗
作者:admin 日期:2015-11-09
广告位