- 浏览: 690297 次
- 性别:
- 来自: 北京
最新评论
-
lanshui777:
压缩文件里面是空的....
Chrome扩展开发教程 -
seraph炽:
成功!多谢
windows 运行java出现错误:Could not find Java SE Runtime Environment -
canlynet:
应该是国外的网站,被过滤了无法访问。你百度一下就可以看到很多教 ...
python unittest用法 -
草原狙击手:
http://pyunit.sourceforge.net/p ...
python unittest用法 -
fantaxy025025:
现在可以了。thanks!lllt 写道这位哥们,这个写法根本 ...
表格中强制换行和强制不换行(兼容firefox)
文章列表
如果要求进度条显示上传进度,那么利用webuploader来实现一个不刷新页面上传图片或文件是最合适的了,这个可以兼容IE8。
见附件。
对于IE8,IE9来说,不支持formData,导致上传文件必须用post页面的方式才可以。那么怎样做到不刷新当前页面,上传一张图片呢?
除了用webuploader以外,如果不需要显示进度条(小文件、图片上传都是这样的需求),那么可以用我这个方法。
在当前页面引入一个隐藏的iframe,iframe的src指向一个上传文件的页面,点击当前页面的某个按钮或图片,触发iframe中的上传文件的input的click,那么选择一个文件以后,让iframe中的页面进行post,再让post到的php页面在将文件妥善存放后,以get参数带回iframe中的原页面(上传文件那个),这时候,那个页面利 ...
在有些项目中,或许用户希望上传的word文档,excel表格,ppt演示,可以在线预览,但是office文档无法在线预览。
但是,我们可以利用Libreoffice这个开源软件,将office文档转换成pdf文件,然后利用pdf.js就可以进行在线预览了。
当然,如果ppt要做成也像幻灯片那样播放,那么我们还可以利用ImageMagick将pdf文件转成图片,然后再利用各种js轮播图工具来做。
命令使用方式如下:
Libreoffice将office文档转ppt文件:
写道
export DISPLAY=:0.0 && libreoffice --headl ...
thinkphp5数据库操作总结
- 博客分类:
- php
thinkphp5对数据库操作做了很多细致的封装,跟thinkphp3对比的话,在查询数据方面保留的最好,还支持where,order,find,select等基本的操作,但是getField等却不支持了。下面从数据增改删查方面进行总结:
1、增加数据:
去掉了add方法,用insertGetId代替了,即插入成功返回自增id(string类型),否则返回false。
Db::name('user')->insertGetId(['username' => 'admin']);
还可以使用insert,但成功返回1,失败返回false。此时要取得自增id,需要用getLa ...
// 让IE8支持trim方法
if (!String.prototype.trim) {
String.prototype.trim = function() {
return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
};
}
// 让IE8支持placeholder方法
jQuery('[placeholder]').focus(function() {
var input = jQuery(this);
if (input.val() == input.attr ...
ztree是我在项目中使用了很多次的一个树形js控件,它的文档比较规范。
地址:http://www.treejs.cn/v3/main.php#_zTreeInfo
我在项目中的js做了比较好的包装。
思路则是在设置角色权限的页面,点击某个按钮,获取该角色的id,然后利用js弹窗,打开一个iframe,剩下的事情都在iframe中的页面来做,这样将角色设置页面和权限选择和保存界面解耦,降低了代码的复杂度。这个角色id传入iframe可以通过iframe的src网址传入,但设置了权限以后,因为确认按钮做到了iframe的页面中,所以只能利用window.postMessage来将设置好 ...
下载地址:http://mozilla.github.io/pdf.js/
上面的地址可以下载到编译好的压缩包2.6MB左右。
github地址:https://github.com/mozilla/pdf.js/
上面地址只能下载到开发包,里面也有编译好的压缩包,但是整个包很大。
因为两个地址都是国外的,可能需要墙,或者下载很慢,所以我把精简的压缩包放到附件里了。
用法很简单,只要将整个目录放到网站目录下,访问web中的viewer.html?file=pdf文件的路径,就可以了,没必要自己去集成,或改写代码什么的。
memcached在windows中安装服务运行
- 博客分类:
- 服务器
windows中将memcached添加到系统服务的方式是:
管理员方式打开终端,切换到memcached所在目录,运行memcached.exe -d install即可。
安装成功后,可以从我的电脑右键管理--服务中看到memcached的服务,并将其启动。
注意服务应为自动启动,这样下次重启电脑就可以自动运行了。
注意:如果是windows10,一定要以管理员方式运行终端,否则是无法添加服务的。
附件中我上传了memcached程序和php5.2,5.3,5.4的phpmemcached.dll。
mysql注入之系统操作系统文件
- 博客分类:
- 数据库mysql
mysql注入最典型的的场景莫过于不对参数进行过滤,比如典型的语句,选择一个用户信息显示php代码:
$sql = "select * from user where id={$_GET['id']}";
用户只需要在浏览器地址栏中网址后面的比如:id=23修改一下:
http://xxx.com/xxx?id=23 union all select * from user;
这就能筛选出所有用户了。
避免这类事情出现的方法自然是使用参数过滤,用数据库驱动接口中的mysql_real_escape_string可以解决这个问题。当然最稳妥的还是使用框架来写代码 ...
mongodb安装和使用
- 博客分类:
- 服务器
mongodb的优缺点本文就不描述了,百度搜索一大堆。我这里主要总结了mongodb的安装方法和使用方法。
安装:
官网:https://www.mongodb.com/
可以下载到mongodb对应操作系统的版本。
下载后,除了windows以外,都是解压缩以后,重命名目录,删除除了bin目录以外的所有文本文件,放到任何位置就可以使用了,只不过使用之前,进行一下配置,再运行比较方便,比如设置守护进程、设置数据库以单独目录存放、设置数据库路径等。
配置参考:http://docs.mongoing.com/manual-zh/reference/configuration-opt ...
做网站开发,免不了要兼容IE8,如果用户要求播放视频还能在IE8上有良好的表现,或者针对MP3有良好的表现,我这里发现一个好用的js插件,html5media,亲测在chrome、ie11,ie8下都好用。
github项目地址:https://github.com/etianen/html5media
当然百度一下可以发现很多介绍比如:http://www.oschina.net/p/html5media
但是下载源码很费劲,我这里测试的代码放到附件里了。
一般我们做文本对话框,都考虑使用textarea,其实,用div也可以实现,用div的好处就是可以往里插入图片、表情等,不必都显示为字符。
但是在插入表情图片或插入图片时就面临一个问题,图片怎么才能放到我输入文本的中间位置,而不是每次都追加到最后面,百度搜索了很多资料,自己试过,包装好了两种方法,一种是针对div的,一种针对textarea,当然,textarea没法显示图片,只适用于插入表情后将代表表情的字符串插入到文本中间。
代码如下:
// 在光标位置插入内容(仅适用于textarea文本输入框)
function insertValueAtCursor(myField, ...
js获取URL的GET
- 博客分类:
- Javascript
在pdf.js项目中看到的一个函数,感觉应该是很靠谱的,自己试了试,调整了一下,现在好使,代码如下:
/**
* Helper function to parse query string (e.g. ?param1=value&parm2=...).
*/
function parseQueryString(query) {
query = query ? query : document.location.search.substring(1);
if (!query) return {};
var parts = query.spl ...
mysql设置utf8字符集
- 博客分类:
- 数据库mysql
因为网上的资料中命令大多都包含有中文或空格,导致我每次复制粘贴还要编辑才能运行,所以我整理一下。
首先连接到mysql,查看字符集:
mysql> show variables like "%character%";
+--------------------------+---------------------------------------------------+
| Variable_name | Value |
+---------- ...
在mysql5.1的时候,我们设计数据表可能忘记给某个字段一个默认值,比如int型数据就给0,varchar类型数据就给空字符串,float类型就是0.0,datetime就是0000-00-00 00:00:00,但php写入数据到表时这个字段也可能没有给值,这时候数据库会自动根据数据类型填充空值。
但是,当这段php代码放到mysql5.6上运行时,就经常报错了,典型提示如下:
ERROR 1364 (HY000): Field 'name' doesn't have a default value
就是报错,提示某个字段没有默认值。
其实对于写代码来说,这个自动根据类型填充空值是 ...