进入http://localhost/phpmyadmin,在创建数据库前
1、把mysql连接校对的选项改为gb2312_chinese_ci
2、而且把整理这个选项也改为gb2312_chinese_ci
然后在php连接MYSQL的语句加上 mysql_query("set names 'gbk'");

如:
include("settings.inc.php");
$conn=mysql_connect($hostname,$username,$password);
if(!$conn) die("mysql error:".mysql_error());
mysql_query("set names 'gbk'"); //这就是指定数据库字符集,一般放在连接数据库后面就系了
mysql_select_db($database,$conn);

大家喝的是啤酒。这时你入座了。
   你给自己倒了杯可乐,这叫低配置。
   你给自已倒了杯啤酒,这叫标准配置。
   你给自己倒了杯茶水,这茶的颜色还跟啤酒一样,这叫木马。
   你给自己倒了杯可乐,还滴了几滴醋。不仅颜色跟啤酒一样,而且不冒热气还有泡泡,这叫超级木马。
   你的同事给你倒了杯白酒,这叫推荐配置!

人到齐了,酒席开始了。
   你先一个人喝了一小口,这叫单元测试。
   你跟旁边的人说哥们咱们随意,这叫交叉测试。
   但是他说不行,这杯要干了,这叫压力测试。
   于是你说那就大家一起来吧,这叫内部测试。
   这个时候boss向全场举杯了,这叫公开测试。

菜过三巡,你就不跟他们客气了。  
   你向对面的人敬酒,这叫p2p。
   你向一桌人挨个敬酒,这叫令牌环。
   你说只要是兄弟就干了这杯,这叫广播。
   可是你的上司jj听了不高兴了,只有兄弟么,罚酒三杯。这叫炸弹。
   可是你的下级mm听了不高兴了,我喝一口,你喝一杯,这叫恶意攻击。
   有一个人过来向这桌敬酒,你说不行你先过了我这关,这叫防火墙。
   你的小弟们过来敬你酒,这叫一对多。
   你是boss,所有人过来敬你酒,这叫服务器。

酒是一样的,可是喝法是不同的。  
   你喝了一杯,你大哥喝了半杯,这叫c++。
   你喝了半杯,你小弟喝了一杯,这叫汇编 。
   你喝了一杯,你的搭档也喝了一杯,这叫c语言。

酒是一样的,可是喝酒的人是不同的。
   你越喝脸越红,这叫频繁分配释放资源。
   你越喝脸越白,这叫资源不释放。
   你已经醉了,却说我还能喝,叫做资源额度不足。
   你明明能喝,却说我已经醉了,叫做资源保留。

酒过三巡,你也该活动活动了。
   你一桌一桌地走,这叫轮巡。
   你突然看到某一桌的漂亮mm,走了过去,这叫优先级。
   你去了坐下来就不打算走了,这叫死循环。
   你的老大举杯邀你过去,你只好过去,这叫激活事件。
   你向一桌敬酒,他们说不行不行我们都喝白的,于是你也喝白的,这叫本地化。
   你向boss敬酒,可是boss被围了起来,你只能站在外圈,这叫排队。
   你终于到了内圈,小心翼翼地向前一步,这叫访问临界区。
   你拍着boss的肩膀说哥们咱们喝一杯,这叫越界。
   可是还有人拿着酒瓶跑过来说,刚才都没跟你喝,这叫丢包。

喝酒喝到最后的结果都一样!
   你突然跑向厕所,这叫捕获异常。
   你在厕所吐了,反而觉得状态不错,这叫清空内存。
   你在台面上吐了,觉得很惭愧,这叫程序异常。
   你在boss面前吐了,觉得很害怕,这叫系统崩溃。
   你吐到了boss身上,只能索性晕倒了,这叫硬件休克。
   你找boss喝酒,boss说我喝不下了,这叫超过最大连接数。
   你继续劝boss喝酒,这叫刷新。
   boss说喝不了了,不喝了,这叫访问拒绝。
   然后boss说:小伙子,我们换个话题,这叫页面重定向。
   boss问你:小伙子,你叫什么?这叫登录验证。
   boss说:你等等,我去下wc。结果左等右等就是等不回来,这叫连接超时。
   你到处找boss,结果就是找不到,这叫该页无法显示。

大家学习PHP大部分都靠自学,我也不例外,不乏和我一样过去是做ASP的,刚看到PHP代码,我就感到奇怪,怎么里面这么多$啊?好奇怪啊,潜意识我觉得这东西肯定比ASP难多了,可是当我领略了PHP的神奇后(同样功能的ASP,PHP程序在我过去的C2古董机上一跑,肉眼都看看出速度的差别),我顿时被PHP的魅力吸引了(虽然现在在我的HP本本上是感觉不出差别了),同时吸引我的还有LAMP组合。于是,我的PHP学习历程开始了。。。。。。
  呵呵,不知道大家学习PHP做的第一个功能是什么,我做PHP的第一个程序是接收一组表单数据,然后回显它们,成功后想到,如果是URL参数PHP怎么接受呢?查了手册,翻了书本,哦!用$_GET,也许许多从ASP过来的程序员一开始也会受ASP思路的影响,其实没有关系,一段时间就适应了,你也许会说,早知道不学ASP了,不会受影响,你错了,做久了你就会发现,过去积累的ASP经验在很大程度上帮助你更快的掌握了PHP,所谓一理通,百理明,程序都有相似,ASP可以说和PHP是很接近的,所以ASP程序员转PHP是很快的,有多快呢?下面再讲^_^,读到这里过去没学过ASP的,或者0基础的朋友可别不看了,什么?我这分明是写给过去做过ASP的人看的嘛,其实都一样,我强调的是学习的方法和思路,不管学什么语言,这都是最重要的。
   嗯,你学会了基本语法,了解了内部函数,书本上的例子都能看懂了,肯定想试试自己的身手了吧?对,这是我强调的第一点,学习程序,就要不断写代码,这样是最快的学习方法,也是最有效的,可是忽然离开书本了,自己动手编,可能有种不知从哪开始的感觉,怎么办???我的方法是--站在巨人的肩膀上。优秀的代码永远是最好的学习工具,你建议先下个留言本看,WHY?留言本简单,且具备了一个完整系统所必须的全部条件。数据库,前后台。咱们就先从数据库部分开始,看他如何设计,分析它为什么这样设计,我能不能有更好的设计,明白了以后,看他如何和PHP交互,这里我建议大家最好学习些软件工程的知识,学会做系统分析,能划分系统模块,这样有助于大家独立设计系统。当你明白了原理之后,你就可以开始做程序,按照你想好的思路做,其中肯定会遇到种种困难,你要翻手册,找GOOGLE,问网友,甚至还有调试程序时的烦躁,但是请千万不要放弃,成功和失败只在一念之间,往前一步,或许你就成功了,退后一步,则肯定失败。当你克服了期间困难之后,你会发现通过做这个程序,你又学会了好多东西,经验得到积累,没错,你进步了。接着干什么,留言本是不够的,把它扩展成CMS试试,做成BBS试试,如果你的系统越做越大,那么恭喜你,你一定有希望成为优秀的PHPer!
  这里当然还是要介绍下调试程序的技巧,记住,如果一段程序调试不过,先判断单词拼写,在判断语法,有没漏{};之类的,可以分段echo结果,缩小调试范围,特别是数据库交互的程序,先输出个SQL语句看看,对了,再分析怎么会插入/删除不成功呢,之类的。调试程序可能会占用编程很多的时间,我们当然还是要总结自己的调试经验。当然我自己有个习惯,上网的时候看到网站有些功能不错,我就想这是怎么实现的?我能做到码?于是我就自己动手试试,无论成功与否,我觉得都会有些帮助,有助于提高水平,我这人不喜欢老重复书中那些无聊的example,在自己的动手实践中学习,我觉得效率更高,且我享受那种代码成功实现的喜悦,这也是我学习的动力。当然作为程序员,必须时刻关注程序的发展,当你入门后,你就得考虑些高级应用,你如提高下程序效率,用下模板,AJAX什么得,要时刻关注业界得动态。
 最后,谈下之前说的我从ASP转PHP花多长时间,也就是我学习PHP花多长时间,老实告诉大家,半年多,其中包括学习AJAX,smarty,XAJAX得时间。也许大家有疑问,怎么可能啊???忽悠人吧,不错,我是学PHP半年多,可是请大家注意,之前学习HTML,数据库,软件工程,ASP,我花了1年多,所以大家看看,其实学习编程是没有捷径的,我们能做的就是一步一个脚印,打好基础,提高水平,充实自己,最后祝各位新手学习愉快,都能成为优秀的PHPer,壮大中国的IT力量!^_^

我在夏天前一定把肚子减下来,。增加运动。合理进食!

i can’t believe   I’m standing here   Been waiting for so many years and Today

阅读全文

[p align=null]歌曲:潇洒走一回
歌手:卓依婷

LRC歌词 HOT
• 搜索 "潇洒走一回"mp3
打印预览
天地悠悠过客匆匆潮起又潮落
恩恩怨怨生死白头几人能看透
红尘呀滚滚痴痴呀情深聚散终有时
留一半清醒留一半醉至少梦里有你追随
我拿青春赌明天你用真情换此生
岁月不知人间多少的忧伤
何不潇洒走一回

天地悠悠过客匆匆潮起又潮落
恩恩怨怨生死白头几人能看透
红尘呀滚滚痴痴呀情深聚散终有时
留一半清醒留一半醉至少梦里有你追随
我拿青春赌明天你用真情换此生
岁月不知人间多少的忧伤
何不潇洒走一回

红尘呀滚滚痴痴呀情深聚散终有时
留一半清醒留一半醉至少梦里有你追随
我拿青春赌明天你用真情换此生
岁月不知人间多少的忧伤
何不潇洒走一回
岁月不知人间多少的忧伤
何不潇洒走一回

[/p]

歌曲:海阔天空
歌手:beyond 专辑:海阔天空

LRC歌词 HOT
• 搜索 "海阔天空"mp3
• 下载"海阔天空"铃声
打印预览
beyond:海阔天空
今天我寒夜里看雪飘过
怀著冷却了的心窝飘远方
风雨里追赶
雾里分不清影踪
天空海阔你与我
可会变(谁没在变)

多少次迎著冷眼与嘲笑
从没有放弃过心中的理想
一刹那恍惚
若有所失的感觉
不知不觉已变淡
心里爱(谁明白我)

原谅我这一生不羁放纵爱自由
也会怕有一天会跌倒
被弃了理想谁人都可以
那会怕有一天只你共我

仍然自由自我
永远高唱我歌
走遍千里







mysql 5.0的就必须指定校验字符
(解放牌)  2007-04-07 16:25:47
config t(10202001) 10:43:16
mysql 5.0的就必须指定校验字符

怎么指定?
(ō雲下遮雨)  2007-04-07 16:26:27
mysql_query("SET NAMES UTF8")
(☆風)  2007-04-07 16:38:06
不一定是 utf8 啊

[p align=null]离歌
演唱:信乐团

以下为离歌歌词
把 [离歌] 免费点歌给朋友!
一开始我只相信伟大的是感情
最后我无力的看清强悍的是命运

你还是选择回去
他刺痛你的心但你不肯觉醒
你说爱本就是梦境
跟你借的幸福我只能还你
想留不能留才最寂寞
没说完温柔只剩 离歌
心碎前一秒用力的相拥著沈默
用心跳送你辛酸 离歌

原来爱是种任性不该太多考虑
爱没有聪不聪明只有愿不愿意

看不见永久听见 离歌

[/p]
这几天不小心被抓壮丁去做面试,悦人有数,但是感慨万千。
”找到好工作,工作才快乐“,但是如何才能找到好工作呢?有好的工作你是不是能抓住机会呢?不去面试,可能你就不知道被面试的时候应该怎么做,就像不做黑客,你就不知道怎么做安全;不去开发搜索引擎,你就不知道怎么做SEO。
这里我把我认为一个人在面试的时候应该注意的问题列举一下,希望能对看到的人有些帮助,也随时给自己提个醒。
首先,一份好的简历是必须的。简历的好坏不完全取决于你的经历有多NB(当然如果你有NB的经历更好),只要清楚具体(具体很关键)的告诉别人你做过什么你能做什么基本就OK了,一定要谨慎使用”精通,超凡,极其”等有些绝对的词.除非你十分自信你已经达到了这样的境界,不然真的很容易让看简历的人反感. 精通是很恐怖的事情.
然后,面试的时候要注意礼貌。比如要穿的整洁,虽然不必西装革履的正装,但是一定要干净,得体。面试官进来的时候要起立问好,回答问题的时候尽量坐姿不要太拽等等,虽然这些是小问题,但是占相当大的印象分,很有可能就因为这个让面试官很不爽而影响你的录取。这些只要稍微注意就可以了,也不必因为这个而过分紧张。其实通过不通过真的只是面试官一句话的事--如果你的水平离要求不是太远。
再然后,要听清楚面试官问题的问题,最好了解面试官问你问题的目的,然后简洁明了的回答,慢慢的说,迅速的想,一定要慢慢的说,一来让别人听清楚,二来不会让别人觉得你很紧张,而且你也可以有充分的时间想。如果一下子不知道怎么回答,可以说“对不起,我想一想”,如果不会就直接说不会,任何人都不可能都会,不会很正常,但是千万不能瞎编。笔试只是一部分,很有可能正好都是考的你不会的,所以不用过分担心笔试的结果,描述自己经历的时候尽量说的具体,把自己负责的部分有哪些功能,都解决了什么问题说清楚,这是了解你的能力的最好途径,也是面试官最想听的,要让面试官觉得录取你之后很快就可以开始干活。
再再然后,一般面试都有向面试官询问的流程,我认为这个部分也很关键。我认为应该多关心一下自己应聘的职位的情况,而关于公司的一些信息(比如规模,注册资金,方向等等)都是你应该在来面试之前就了解的,不然你干吗投简历呢?
当然我不是专业做面试的,每个面试官都有自己的习惯,这里说的仅供参考。如有雷同,实在是tmd巧合。
祝各位兄弟姐们大爷大妈爷爷奶奶都能快乐的找到好工作。
    既然是游戏公司,那不管是谁就要会玩游戏,呵呵,昨天和他打他,赢了两局,今天和另外一个美美合作,输了两局,感慨良久。。。主要是没有配合,在游戏的矛盾中,就去打怪,在对打中也会死得很惨的,上班了。。。。
大家可能觉的很奇怪!公安部门的是怎样去抓到黑客的呢?其实除了和电信部门取得合作以外很大程度上他们都把抓黑客的事情交给所谓的"技术部门"这些技术部门不像你相象的那么厉害![当然也不能笼统的说] 其中一个最老套也命中率最高的办法就是通过日志记录的IP来排查。

  可能有人会问:我已经删除了日志文件还会被抓?告诉你:89。5%会的![这个百分比可不是我编出来的哦]。不废话了!

  技术部门的办法:例如我2004年7月19日晚8:39分31秒用小榕的日志擦写软件擦掉了全部IP或者指定IP.技术部门拿到这家倒霉公司的硬盘先做备份,然后用类似FinalData. EasyRecovery 或者别的什么磁盘恢复软件按时间表来恢复前一小时或者前一分钟的所有文件,然后就.......!你是不是叫***你被捕了,你有权保持沉默但是你所讲的将回成为....

  所以大家如果入侵的是比较棘手的地方或者什么部门的话!两个字:小心!

解决办法:用类似改写扇区删除软件来删除日志文件!因为WINDOWS里的都是模拟删除!即使你用format c:如果你不加参数还是可以恢复的!

网络上找了一下!发现了这个!

3. SecWiper V1.0

[简要说明]

SecWiper是一个运行在Windows上的安全地擦除文件的控制台小工具,一旦擦除,永远丢失,风险自负责!

功能简列如下:

1、支持Windows 9x/me/nt/2000/...

2、严格按照国际安全擦除标准执行动作

3、可彻底删除文件,并且支持通配符

4、可彻底删除目录,可包含所有子目录

5、可彻底清除空闲磁盘里所有可能被恢复的文件

6、确保清除后的文件用FinalData、RecoverNT、EasyRecovery等数据恢复工具无法恢复


  你们会问你怎么知道这些的,难道.........[放心我还没有被抓进去过@@~!]
至少现在还没有.


  还是一句话!没有事情不要乱搞别人的主机!我一般也就利用一下他们的宽带空间什么的从来没有覆盖过**公司的主页或者format c:等行为!因为我做事考虑的是后果,好处坏处占的比例。
“武汉男生”,俗称“熊猫烧香”,这是一个感染型的蠕虫病毒,它能感染系统中exe,com,pif,src,html,asp等文件,它还能中止大量的反病毒软件进程并且会删除扩展名为gho的文件,该文件是一系统备份工具GHOST的备份文件,使用户的系统备份文件丢失。

瑞星熊猫烧香专杀工具
http://download.rising.com.cn/zsgj/NimayaKiller.scr

江民熊猫烧香专杀工具
http://www.jiangmin.com/download/zhuansha04.htm

金山熊猫烧香专杀工具
http://tool.duba.net/zhuansha/253.shtml阅读全文
时下视频网站实在是太火了,而其用到的技术也一直是处于半公开状态,我在大概3个月前,开始接触这个技术,当时的资料并不多,在经过一个多星期的研究之后,终于大功告成!

起初,看到一些视频网站,觉得挺新奇的,能够把上传的视频文件转成FLV格式,而且还会有几张截图出来,当时在想,是不是网站专门请了一批人处理这些上传的文件,然后把图截出来,现在想想这念头确实挺幼稚的。

其实说白了,也挺简单的,就是通过php的执行函数,比如exec,然后调用服务器的转换程序,转换结束后将文件生成到指定的文件夹,更新数据库记录,并转到相应的页面。

因为要上传比较大的文件,所以要先设置最大上传文件的大小,打开php.ini,找到upload_max_filesize,这一行,将值改为50M或更大。

至于转换程序的选择,我最初是用ffmpeg的,但是发现转换经常失败,不得不放弃,后来发现另一款非常棒的转换软件,mencoder,也是linux下的,但我的环境是windows,所以找到了一个绿色的以mencoder为核心的应用软件wisMencoder,里面有mencoder,如果是从网上下的话,应该有三个相应的mencoder,分别是对应不同的处理器的。

如果要生成截图,可以通过ffmpeg来生成。

下面是核心代码:
程序代码

exec ("$cgi_url $source_url -o $dest_url -of lavf -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:dia=4:cmp=6:vb_strategy=1 -vf scale=320:240,expand=320:240:::1,crop=320:240:0:0 -ofps 30 -srate 22050 -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames",$arr,$sta);
if($sta!=0){
   die ("转换出错!");
}
//优化生成的flv
exec("flvmdi.exe $dest_url");
$imgW="160";
$imgY="120";
exec("ffmpeg.exe -i $dest_url -ss 10 -vframes 1 -r 1 -ac 1 -ab 2 -s $imgW*$imgY -f image2 $pic_url");
echo "文件转换完毕";
if(filesize($pic_url)=="0"){
   echo "文件转换出错";
}

这里解释一下,上面的$cgi_url,指的是要调用的转换程序的url,$source_url指的是上传的文件的url,$dest_url,是生成的flv的存放路径,后面的参数比较复杂,就不具体解释了,网上应该有相应的文章,最后的$sta,是判断是否转换成功
调用flvmdi.exe是因为mencoder生成的flv不能拖放,用这个程序来修复一下
最后调用ffmpeg来生成截图
当然转换生成结束后还要更新一下数据库记录

顺便提一句,由于上传的文件可能比较大,所以最好将php的执行时间相应延长,比如延长到300秒
set_time_limit(300);

至此视频网站的最核心技术就完全捅破了,如果还有什么问题,欢迎和我交流。
Mplayer是Linux下功能超强的电影播放器,当然它也可以播放mp3,wma等声音格式文件.
以下流程在RedHat9下通过,适合对Linux有初步了解的朋友:

1、下载安装所需文件:
(1)主程序: http://www1.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre5.tar.bz2
(2)字体文件: http://www1.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz2
(3)Skin文件(支持GUI): http://www1.mplayerhq.hu/MPlayer/Skin/plastic-1.2.tar.bz2

当然也可以下载其他皮肤文件
(4)支持avi等w32多媒体格式插件:

http://www1.mplayerhq.hu/MPlayer/releases/codecs/win32codecs-20040703.tar.bz2

(5) 支持realplay(rm,ram等)等多媒体格式插件

http://www1.mplayerhq.hu/MPlayer/releases/codecs/essential-20040704.tar.bz2



如果只是在控制台(文本)下运行,只用下载(1)(4)(5),如果想要图形界面并支持中文,以上5个都要下载。


2、把以上5个文件拷入/root下(可以自己选择目录),解压:
[root@localhost root]# tar jxvf MPlayer-1.0pre5.tar.bz2
[root@localhost root]# tar jxvf font-arial-iso-8859-1.tar.bz2
[root@localhost root]# tar jxvf plastic-1.2.tar.bz2

[root@localhost root]# tar jxvf win32codecs-20040703.tar.bz2
[root@localhost root]# tar jxvf essential-20040704.tar.bz2



解压后的文件名比较长,可以考虑通过mv或ln等命令进行文件夹改名或连接,方便下面过程的进行。本文档没有做文件名处理。


3、拷贝w32codec支持库(win32codecs-20040703)及realplay支持库(essential-20040704)

一定要先执行这一步,而且拷入的目录一定要注意,如果你已安装了realplay8或realplay9也可不需拷入realplay的支持库,只是下面运行configure时要注意它所在的目录。
[root@localhost root]# mkdir /usr/lib/win32
[root@localhost root]# cp /root/win32codecs-20040703/* /usr/lib/win32
[root@localhost root]# cp -r /root/essential-20040704 /usr/lib


4、进入Mplayer安装目录并执行,注意参数:
[root@localhost root]# cd MPlayer-1.0pre5
[root@localhost MPlayer-1.0pre5]# ./configure --enable-gui --disable-gcc-checking --with-reallibdir=/usr/lib/essential-20040704 --language=zh_CN
(不建议加上 --disable-gcc-checking 参数----jiangtao9999)

#说明:--enable-gui是用来支持图形界面的播入器,--disable-gcc-checking是用来跳过对gcc版本的检查(但不保证在所有的linux下都能通过下面的操作。如有这种情况,请说明),--with-reallibdir=/usr/lib/essential- 20040704是用来指定realplay支持库所在的目录。如果你已安装了realplay 8那这个选项应该为:--with-reallibdir=/usr/lib/RealPlay8/codecs 如果你已安装了realplay 9(你可根据实际修改):--with-reallibdir=/root/Real/codecs, –-language=zh_CN是用来指定Mplayer的字体为中文。1.0版本已经支持rtsp流,所以不用 –-enable-live。


5、依次执行:
[root@localhost MPlayer-1.0pre5]# make
[root@localhost MPlayer-1.0pre5]# make install


6、拷入字体:
[root@localhost MPlayer-1.0pre5]# cp /root/ font-arial-iso-8859-1/font-arial-14-iso-8859-1/* /usr/local/share/mplayer/font/


7、拷入Skin:
[root@localhost MPlayer-1.0pre5]# cp -r /root/plastic /usr/local/share/mplayer/Skin/default



注意Skin的首字母要大写


8、拷入input.conf文件:
[root@localhost MPlayer-1.0pre5]# cp /root/ MPlayer-1.0pre5/etc/input.conf /usr/local/share/mplayer/


9、在X下运行gmplayer 可启动图形界面播入模式,控制台下运行mplayer可以启动字符播放模式。



关于Mplayer播放器的使用很简单,自己摸索一下就知道了。

反正你按照我的的方面一步一步做下去一定能装成功.
       工作了,一周了,走在校园,好像又回到原点,最后却离自己最远,我好吗?快乐吗,我闭上眼睛,梦里也欧尔想起从前,为了在爱的人面前太骄傲,不肯说太累,你好吗?快乐吗,你闭上眼,没什么感觉吗,梦里面是否想起重前,但我闭上眼睛,还想流泪,这四年,问自己千万编,人有时会变,原来是因为经过了时间。。。smile
         
张国荣的歌曲,我喜欢。。。
class Page{//分页类
var $table;//表名
var $n;//每页显示条数
var $d;//当前页
var $num;//总条数
var $j;//一共几页
var $start;//起始位置
var $url;//当前文件
var $py;//偏移几个单位,以当前页为中心对称偏移
var $yc;//溢出多少个单位,以3,5,7.....
 
function Getallnum($sql){//得到总条数
 global $conn;
 $this->table=$table;
 $all=$conn->GetAll($sql);
 $this->num=count($all);
 return $this->num;
}
function Getallpage($n){//得到一共几页
 $this->n=$n;
 $this->j=ceil($this->num/$this->n);
 return $this->j;
}
function Getpage($d,$url){//分页
 $d=$_GET['page'];
 $this->d=$d;
 $this->url=$url;
 if (empty($this->d) || $this->d <0 || $this->d==0 || $this->d==1){
  $this->d=1;
  if(($this->j)>1){
   $str="首页";
   $str.=$this->mathurl(2,5);
   $str.="下一页";
  }
 }elseif(($this->d)>=$this->j){
  $this->d=$this->j;
  $str="上一页";
  $str.=$this->mathurl(2,5);
  $str.="尾页";
 }else{
  $str="上一页";
  $str.=$this->mathurl(2,5);
  $str.="下一页";
 }
 return $str;
 return $this->d;
 return $this->url;
}
function Getstart(){//起始位置
 if(empty($this->d)){
  $this->start=0;
 }else{
  $this->start=$this->n*($this->d-1);
 }
 return $this->start;
}
function Getend($e){//每页显示条数
 return $this->d=$e;
}
function options(){//跳转菜单
 $opt=" ";
 return $opt;
}
function mathurl($py,$yc){//数字导航
 $this->py=$py;
 $this->yc=$yc;
 $co=$_GET['page'];//当前页码
 $do=$this->j;//总页数
 if($this->j<=$this->yc){//总页数小于或等于$yc时
  for ($o=1;$o<=$this->j;$o++){
   $murl.=" ".$o." ";
  }  
 }elseif($co>($do-$this->py)){//页码超过总页数时
  $co=$do;
  for ($v=($co-($this->yc-1));$v<=$do;$v++){//往左偏移$yc个单位
   $murl.=" ".$v." ";
  }
 }elseif($co<=$this->py){
  $co=1;
  for ($v=$co;$v<($co+$this->yc);$v++){//往右偏移$yc个单位
   $murl.=" ".$v." ";
  }
 }else{
  for($k=($co-$this->py);$k<$co;$k++){//往左偏移$py个单位
  $murl.=" ".$k." ";
  }  
  for ($v=$co;$v<=($co+$this->py);$v++){//往右偏移$py个单位
   $murl.=" ".$v." ";
  }
 }
 return $murl;  
}
}/*
require_once("../class/Smarty.class.php");
include "../adodb/adodb.inc.php";
include "../connect.php";
$page=new Page();
$sql="select * from class";
$p['num']=$page->Getallnum($sql);
$p['page']=$page->Getallpage(10);
$p['link']=$page->Getpage(1,"class.inc.php?");
$p['start']=$page->Getstart(0);
$p['end']=$page->Getend(10);
$p['opt']=$page->options();
$a=$conn->GetAll("select * from class limit ".$p['start'].",".$p['end']."");
--------------------------上面的是数据库分页的例子-------------------------------
--------------------------下面的是搜索分页的例子--------------------------------------
$s=$_GET['s'];
$si=$_POST['s'];
if(empty($_GET['key'])){
$key=$si;
}else{
$key=$_GET['key'];
}
if($s=="s"){
$page=new Page();
$sqa="select cname from class where cname like binary  '%".$key."%'";
$p['num']=$page->Getallnum($sqa);
$p['page']=$page->Getallpage(6);
$p['link']=$page->Getpage(1,"class.inc.php?s=s&key=".$key."&");
$p['start']=$page->Getstart(0);
$p['end']=$page->Getend(6);
$sql="select cname from class where cname like binary  '%".$key."%' limit ".$p['start'].",".$p['end']."";  
$rs=$conn->GetAll($sql);
}
-------------------------下面的是smarty应用-------------------------------------------------
$smarty = new Smarty;
$smarty->assign("page",$p);
$smarty->assign("show",$a);
//$smarty->assign("se",$rs);
$smarty->display('class.inc.htm');
*/
?>
分页: 313/339 第一页 上页 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 下页 最后页 [ 显示模式: 摘要 | 列表 ]