文章分类

月份存档: 2009年05月

GROUP BY和HAVING语句应用实例

2009年05月27号
12条评论 790次浏览

SELECT    * FROM    result   
   WHERE    sid    IN     
   (SELECT    sid    FROM    result   where c_sclassid=4    GROUP    BY   sid    HAVING    COUNT(*)    >1)
order    by    sid    desc

阅读全文

类别数据库 标签

mysql中char和varchar的区别

2009年05月25号
4条评论 605次浏览

char是一种固定长度的类型,varchar则是一种可变长度的类型,它们的区别是:

char(M)类型的数据列里,每个值都占用M个字节,如果某个长度小于M,MySQL就会在它的右边用空格字符补足.(在检索操作中那些填补出来的空格字符将被去掉)在varchar(M)类型的数据列里,每个值只占用刚好够用的字节再加上一个用来记录其长度的字节(即总长度为L+1字节).

在MySQL中用来判断是否需要进行对据列类型转换的规则

1、在一个数据表里,如果每一个数据列的长度都是固定的,那么每一个数据行的长度也将是固定的.
2、只要数据表里有一个数据列的长度的可变的,那么各数据行的长度都是可变的.
3、如果某个数据表里的数据行的长度是可变的,那么,为了节约存储空间,MySQL会把这个数据表里的固定长度类型的数据列转换为相应的可变长度类型.
例外:长度小于4个字符的char数据列不会被转换为varchar类型

类别数据库 标签

总结PHP中文乱码解决办法

2009年05月15号
5条评论 529次浏览

 

一.         首先是PHP网页的编码

1.     php文件本身的编码与网页的编码应匹配

a.     如果欲使用gb2312编码,那么php要输出头:header(“Content-Type: text/html; charset=gb2312″),静态页面添加<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>,所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文件。

b.     如果欲使用utf-8编码,那么php要输出头:header(“Content-Type: text/html; charset=utf-8″),静态页面添加<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>,所有文件的编码格式为utf-8。保存为utf-8可能会有点麻烦,一般utf-8文件开头会有BOM,如果使用session就会出问题,可用editplus来保存,在editplus中,工具->参数选择->文件->UTF-8签名,选择总是删除,再保存就可以去掉BOM信息了。

2.     php本身不是Unicode的,所有substr之类的函数得改成mb_substr(需要装mbstring扩展);或者用iconv转码。 阅读全文

类别PHP 标签

call_user_func和call_user_func_array

2009年05月13号
15条评论 1,625次浏览

call_user_func函数类似于一种特别的调用函数的方法,使用方法如下:
<?php
function a($b,$c)
{
    echo $b;
    echo $c;
}
call_user_func(‘a’, “111″,”222″);
call_user_func(‘a’, “333″,”444″);
//显示 111 222 333 444
?>
调用类内部的方法比较奇怪,居然用的是array,不知道开发者是如何考虑的,当然省去了new,也是满有新意的:
<?php
class a {
    function b($c)
    {
        echo $c;
    }
}
call_user_func(array(“a”, “b”),”111″);
//显示 111
?> 阅读全文

类别PHP 标签

使用jQuery实现局部刷新

2009年05月11号
52条评论 6,805次浏览

实现
真的是太简单了,让我忍不住再次感慨一下jQuery的宗旨:Write Less Do More。看一下实现代码

01.<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"
02.type="text/javascript"></script>
03.<script type="text/javascript" language="javascript">
04.setInterval(function(){$("#cnt").load(location.href+" #cnt");},3000);
05.</script>
06.<body>
07.<div id="cnt">
08.<?php echo date('y/m/d H:i:s').' <span style="color:red">memory usage:</span> '.memory_get_usage()?>
09.</div>
10.</body> 阅读全文

类别PHP 标签

ajax框架:GreyBox 弹出层-用户体验非常不错的遮罩层组件

2009年05月09号
15条评论 1,513次浏览

GreyBox是一个遮罩层的组件,它运行以后可以产生不错的界面。类似于thinkbox,lightbox等。

night_valley

下载GreyBox源码到本地: 下载地址

类别PHP 标签

AJAX中文乱码PHP完美解决(IE和Firefox兼容)

2009年05月09号
20条评论 1,080次浏览

众所周知,使用AJAX传送和接收中文参数时,如果不在客户端和服务器做相应的处理就会出现乱码问题,在网上相应的文章也不少,但是有的情况下很难从中找到符合自己理想的答案,我今天就是在网上找了很多,但是都差不多,讲ASP和JSP的比较多(我是用的PHP),所以到最后都没找到自己满意的答案。

  阅读全文

类别PHP 标签

php+ajax实现分页

2009年05月09号
8条评论 608次浏览

主要要点:
1.用ajax post数据到后台页面后,接着要重新连接数据库,别以为用之前的session连接过就可以了
2.为了处理返回乱码的问题,我添加了header(“Content-Type:text/html;charset=GB2312″);就可以正常显示了,后来在firefox下检验,却提示我下载这个网页,上网搜了不少资料,得到一个模糊的认识就是网页代码有语法错误,firefox为了安全起见不会直接显示而是提示下载,我重新检查了刚才那条语句,发现自己多写了个“\”,把它去掉后问题就解决了,哈哈,所以遇到这样的问题,好好检查一下html tag吧,毕竟firefox可不像ie那样smart
3.最后说一句,做web site的开发者,要负责任,别以为在ie下测试通过就万事大吉,毕竟不是所有人都用ie,还得要在别的浏览器下多做测试,这样才显示出你的专业水准 阅读全文

类别PHP 标签