Submitted by gouki on 2010, July 7, 9:49 AM
张宴遇到的问题,我没有遇到过,只是以前知道,mysql在varchar类型插入的时候,会把字符串末尾的空格取消的(难道我记错了?),char的没记。不过按照char的类型,他是会用空格补全长度。所以,即使没空格也会多出空格。但,用PHP取出来后,我就没有注意过了。。。
下面是张宴遇到的问题,不过我觉得还是有必要用PHP实现一下看看究竟怎么回事。。。
同事下午遇到一问题,MySQL 和 Memcached 对于同一个key,不能对应起来。最终原因是:PHP将key写入MySQL数据库之前,没有经过trim()过滤首尾空格(关键是尾部空格),结果:
1、MySQL的varchar、char类型字段,SELECT .... WHERE 查询时忽略字段的尾部空格。例如varchar类型字段uidcode中,存储的含有尾部空格的内容“rewinx ”,通过以下三种方式均可查询到:

在MySQL手册第“11.4.1. CHAR和VARCHAR类型”节中写道(http://dev.mysql.com/doc/refman/5.1/zh/column-types.html#char): 请注意所有MySQL校对规则属于PADSPACE类。这说明在MySQL中的所有CHAR和VARCHAR值比较时不需要考虑任何尾部空格。请注意所有 MySQL版本均如此,并且它不受SQL服务器模式的影响。
2、PHP 的 Memcache 扩展,则在set、get时,自动将key中的空格,转换成了半角下划线“_”。当然,直接通过 Memcached 协议来读取,key值“rewinx ”就要写成“rewinx_”了。
示 例:testmc.php
PHP代码
- <?php
- $memcache_obj = new Memcache;
- $memcache_obj->connect('192.168.8.34', 11211);
- $memcache_obj->set('rewinx ', 'hello world');
- echo $memcache_obj->get('rewinx ')."\r\n";
- ?>

Tags: mysql, memcached
PHP | 评论:1
| 阅读:21805
Submitted by gouki on 2010, July 7, 9:37 AM
一大早小茗就在QQ上告诉我他的四季网终于开始折腾并部分上线了。兴冲冲的走过去一看,原来他的四季网目前就提供了手机软件下载。
略微瞅了一下,内容还并不是太多,不过已经有点框架在了,主要还是针对一些智能机了(旁白:废话,不是智能机有必要下载手机软件吗)。默认是HTC品牌,难道是想乘着HTC最近高调进入国内而开始主打这个分类?
不过据我知道的,小茗的手机本身也就是HTC的,当然,我的也是。只是他是WM系统而我是android系统。
正因为我是HTC android的系统,找到左边的G2分类,看了看软件,嗯。还是有一些值得看看的,平时不太注意,但有可能有用的软件上面还是不少【虽然market上有分类,但毕竟不象下载站那些会分的很细】
点开每个软件的页面,还是比较简陋。不过小茗也说了最近公司在忙,忙完这段时间就开始折腾页面了。对于一个专业人士来说,做点页面当然不是问题。。
最后看了一下博客,本以为他会把最新更新和想法之类的写在博客里。却看到了typecho这个。用的是m4的模版。额,大吃一惊。
不管怎么样,还是希望小茗这个暂时只有手机软件下载的四季网能够发展起来吧。要知道如今有想法想做一个站的人已经是越来越多,但真正能够成功的却廖廖无已了。
Tags: 四季网, 4gcn, typecho
Misc | 评论:0
| 阅读:21571
Submitted by gouki on 2010, July 6, 9:22 AM
对秀才的demo做了点简单的修正。
1、index.html中的
var _menus = { menu object };
改为
var _menus = [{xx}];
这样的好处是,如果json是生成而来的也不受影响
2、修改outlook.js
在 InitLeftMenu()方法 增加一个判断:
if( typeof _menus[0] != 'object'){
alert('左侧菜单加载失败,请检查菜单数据来源');
return ;
}
搜索 _menus,改为_menus[0]
--------------------------
理由,因为大多数时间菜单是用程序生成的。如果不用[]包住就可能会出现
var _menus = ;
function test(){}
这样,语法是错误的。用[]进行一下容错。
-------------------------
demo也不错,提供下载,但我在这个压缩包里没有进行修正【请需要的朋友自己修正吧】
作者:疯狂秀才
网站:http://hxling.cnblogs.com
Demo:jquery-easyui 1.1 demo 修正.rar
Tags: jquery, easyui, demo, 修正
Javascript | 评论:0
| 阅读:26446
Submitted by gouki on 2010, July 5, 1:11 PM
Tags: 房
Misc | 评论:0
| 阅读:15634
Submitted by gouki on 2010, July 5, 7:20 AM
PHP的新手在开发的时候不可避免的会遇到SQL注入的问题,很多老手在介绍的时候是叮嘱叮嘱再叮嘱啊。其实有个简单的方法就可以减少这种问题的过失。
1、rewrite 规则
2、很多框架的路由
这两种方式都是将GET方法做了一个简单正则处理,也只有符合规则的情况下,GET值才会被赋值到变量中。如果将ID等做一个\d的判断,那么非数字的已经经过一次过滤了。
而且,你在采用rewrite规则的时候,很多sql语句就无法通过URL被传递进来,因为他们不能被正则正常解析。
当然,你也可以想象,如果你的URL是1-0-0-1-0-1-0-1-1-1.html你能知道这些位数是干嘛的不?这种情况用于搜索比较常见,因为搜索的条件会比较复杂,也会比较容易被用来做注入。
如果根据ID取文章之类的,你show-1-1.html别人是知道你的ID为多少,但已经不太容易注入了吧?
新手只是要学习一下rewrite规则了。了解一下正则也好HOHO
Tags: 注入, rewrite
PHP | 评论:0
| 阅读:16866