AzaAjaxChat笔记-实现

唔,继续整理笔记,这些是在代码编写中遇到的问题和解决办法的总结,不是 Turtial,问题有针对性,内容枯燥,路人可以直接忽略~ 一、Comet 服务器推技术 Comet 推技术,一句话概括,就是形成一个不断开的连接,使得服务器能主动向客户端发送信息。这种技术在交互性强的 Web 产品中应用的非常多,比如 GMail。Co met 的实现方式有两种:基于 AJAX 的长轮询(long-polling)方式和基于 Iframe 及 htmlfile 的流(streaming)方式,具体两种实现方式可以参考Comet:基于 HTTP 长连接的"服务器推"技术。 ...

2010-08-22 · alswl

AzaAjaxChat笔记-框架

Thumbnail

1个月没有动PHP了,新装的系统甚至还没有配置PHP环境,今天看到BooguNote上有一个boo是专门记录AzaAjaxChat开发时候遇到的问题和解决办 法。于是把一些东西整理记录一下。 1. 从ThinkPHP开始 最早的AzaAjaxChat是基于ThinkPHP的,我当时在OpenSouce上看到ThinkPHP的介绍,有很多优点,看的我很心动:MVC模型,Ajax 支持,详细的文档和案例,国人开发的框架。我作为一个PHP新人一下子就被他吸引住了,决定用ThinkPHP做框架。 ...

2010-08-12 · alswl

获取每日Bing图片

Thumbnail

在使用公司一个Redirect开发工具页面时候,想个性化一下,就想添加一个背景,最好每天能自动变化,我第一个想到的就是Bing。 放狗搜索,发现一篇文章 抓取每天必应bing背景图片 - huangct的专栏 - CSDN博客,文中提供了抓取程式的Python代码,我摘录如下。 import urllib import time def main(): url = 'http://www.bing.com' f = urllib.urlopen(url) html = f.read() f.close() a = html[html.index('/fd/hpk2'):] data = a[:a.index('',id:')] url = data.replace('\', '') url = 'http://www.bing.com'+url name=time.strftime("%Y%m%d", time.localtime()) name=name+".jpg" urllib.urlretrieve(url,name) if __name__ == "__main__": main() 关键的步骤是MS修改了jpg的url方式,用g_img={url:’/fd/hpk2/BambooBoat_ZH- CN1057817945.jpg’这样的字符串躲避机器人的抓取。简单的替换即可完成。 ...

2010-07-19 · alswl

7条大型网站设计和维护的关键技巧[译文]

Thumbnail

原文出处:[7 Crucial Tips for Designing and Maintaining a Large Site | Nettuts+](http://net.tutsplus.com/articles/general/7-crucial-tips-for- designing-and-maintaining-a-large-site/) 译者:alswl 以下为译文 项目范围和规模各不相同,他们带来的挑战各不相同一样。作为一个独立的网页设计师,我最大的职责就是负责FlashDen。随着成千上万的活动用户聊天,上传和购物, 网站处理着大额的金钱和巨大的流量。 设计,重构,维护和开发团队的工作给了我一些能使事情变得更容易的用用的见解和技巧。而且,就在昨天,我们开始了对网站最大的一次重构,着看上去是一次很好的机会来记 录我最有用的7个秘诀。 ...

2010-07-17 · alswl

char nchar varchar nvarchar 区别

在开发时候,发现数据库的一个字段用的是nchar(16),让我感觉很奇怪,我知道nvarchar可以变长,nchar会用空格填充,这在存取时候需要Trim( )操作,所以我一直不用nchar。而现在在产品中发现nchar的使用,不由觉得很奇怪。 私底下认为是效率的问题,一番Google之后发现一段文章详述了几种数据库文字类型存储的差异。 原文出处:char nchar varchar nvarchar 区别 - Rainbow - 博客园 联机帮助上的: char(n) 定长 索引效率高 程序里面使用trim去除多余的空白 ...

2010-07-16 · alswl

Cakephp的国际化和poEdit的使用

Thumbnail

原文出处:在Cakephp中使用i18n本地化程序,并使用poedit编辑语言文件 | 程序如此灵动! alswl: 官方的帮助手册都没有这篇文章来的详细,太赞了。这篇文章不仅介绍了CakePHP的使用,更多的介绍了PoEdit的使用,图文并茂,着实详细,感谢原作者苏南。 —– 以下为原文 —– Cakephp的很强大的i18n功能就是用来实现本地化和国际化的。他通过使用语言配置文件使得程序能够很好的适应变化进行本地化。通过新建locale/chi/ LC_MESSAGES/default.po文件,并指定语言选项为"chi"实现。本文中说的就是如何实现这个本地化过程,当然本文中的poedit并不是必须的 ,但是他可以使得工作效率更高。 ...

2010-06-03 · alswl

IE XML 缓存问题

明天开始上交毕业设计初稿,其中有一节是遇到的问题和解决办法。我把平时在BooguNote 中的琐碎片段整理出来,便有了此文。 PS:之前已经有过3篇相关毕设的文章: CakePHP的全局变量 FMS的80端口占用 SWFObject 一款JavaScript的Flash检测与插入模块 —- 正文开始 —- 问题背景 系统要实现一个操作,即每次向同一个url 请求一个GET方法获取一个xml文件,这个xml文件记录着聊天数据并且是即时生成的。当用FireFox或者Chro me请求时候都能获得正确的数据,而IE则常常出现无法获取实时的XML数据。 ...

2010-06-02 · alswl

SWFObject 一款JavaScript的Flash检测与插入模块

Thumbnail

今天开始AzaAjaxChat的视频聊天模块,拖FMS的福,实现起来很轻松,不过后来在JavaScript和Flash的交互上遇到了问题。 Flash在各个浏览器中的实现始终是个麻烦的事情,什么Object Embed~,似乎没有什么标准的格式,一般都要做一些浏览器Hack,我对这些深痛恶绝,在 泡了一下午前端相关的论坛后,偶然发现一款JavaScript交互的神器。 SWFObject: 基于Javascript的Flash媒体版本检测与嵌入模块 SWFObject是一个用于在HTML中方面插入Adobe Flash媒体资源(*.swf文件)的独立、敏捷的JavaScript模块。该模块中的JavaS cript脚本能够自动检测PC、Mac机器上各种主流浏览器对Flash插件的支持情况。它使得插入Flash媒体资源尽量简捷、安全。而且它是非常符合搜索引擎优 化的原则的。此外,它能够避免您的 HTML、XHTML中出现object、embed等非标准标签,从而符合更加标准。 ...

2010-05-23 · alswl

FMS的80端口占用

AzaAjaxChat 的语音聊天需要使用的Flex的流媒体传输,我在评估的方案有两套:1.使用原声Socket在客户端进行连接,2.使用FMS 流媒体服务器进行数据传输。 FMS (Flash Media Server)在安装时候,有一个选项是端口使用哪个,默认是1935 和 80端口,安装之后发现在使用两个Apache在80端口发生冲突(FMS使用的也是Apache服务器),需要将这个端口修改。 Google后,发现修改 Flash Media Server 3conffms.ini 删除80留下1935即可。 ...

2010-05-22 · alswl

CakePHP的全局变量

毕业设计AzaAjaxChat 中有一个功能,记录当前在线用户,直观的看,用Application对象就可以解决。 忙了一会发现,原来PHP没有Application对象这个概念,于是我想到了全局变量,噩梦便开始了。(Application 和全局变量其实完全不是同一个概念) 我使用的框架是CakePHP,查找资料后,找到了几种CakePHP中使用全局变量的方法。 一、使用bootstrap.php文件 在app/config 下面,有一个bootstrap文件,从名字就可以看出,这个是在控制器之前加载的文件,根据官方的描述,有下面几个用法。 ...

2010-05-17 · alswl