Archive for » October, 2006 «

设置php的session分级存放后,phpMyAdmin运行不正常

  前一段把php的session进行了目录分级存放,详情见 http://www.toplee.com/blog/300.html ,总的来说效果不错,不过却在使用phpMyAdmin时遇到点小问题。

  首先是phpMyAdmin页面显示错位,然后是页面间_GET和_POST参数都不能正常传递,因为最近还修改了服务器上的一些别的配置,花了很长时间才定位到是session的问题,在phpMyAdmin的libraries/common.lib.php文件中进行debug,发现在session验证的地方总是出错,于是怀疑到php的session故障,不过由于其他应用中使用session都没有问题,应该是phpMyAdmin处理session方面的问题,打开 libraries/session.inc.php,可以看到一些处理session的ini设置项,在适当位置加入下面一行代码,问题得到解决。

ini_set('session.save_path',"your_session_save_path");

  由此可以引出一些通用的问题,就是如果在php代码里面改变了ini中session的设置项,则一些关键的项都需要重新设定,php.ini中原来定义的设置就不会继续生效了,今后需要多加注意。

xAjax简单使用范例

  xAjax是一个开源的基于PHP的Ajax解决方案,它使用简单,官方提供的帮助显示,只需要七步就可以了创建一个简单的ajax应用。

首先,在php文件头包含xajax类

require_once("xajax.inc.php");

接下来,创建xajax对象

$xajax = new xajax();

注册你的函数。这个函数用于在服务器端处理相应的客户端请求,并返回指定内容。

$xajax->registerFunction("myFunction");

编写上述函数的代码。根据你要执行的功能

function myFunction($arg)
{
 
// 在函数中使用从服务器或客户端得到的参数。
 
$newContent = $arg;
    
 
// 创建xajaxResponse对象。
 
// 这个是用于被客户端调用并返回相应内容的函数中所必须定义的。
 
$objResponse = new xajaxResponse();
    
 
// 使用xajaxResponse对象中的方法,执行不同的操作。
 
$objResponse->addAssign("SomeElementId","innerHTML", $newContent);
    
 
// 向客户端返回内容。
 
// 客户端的页面将在不刷新的情况下被重写。
 
return $objResponse->getXML();
}

打开请求控制器,所以请求都将交由xajax系统来处理。

$xajax->processRequests();

在”head”标签中加入下列代码,用于在页面中生成必要的Javascript脚本。

<?php $xajax->printJavascript(); ?>

最后,在页面中有事件发生时,调用你在服务器端定义的函数来进行处理就可以了。这里是名为myFunction的函数。注意,调用时,函数前必须加xajax_前缀。

<div id="SomeElementId"></div>
<button onclick="xajax_myFunction(SomeArgument);">

这样,一个具有流行的Ajax效果的页面的做好了。怎么样,不复杂吧? 实际上,xajax还提供大量的方法,利用它们,你就可以很容易对页面进行操作了。详细文档请见官方文档和范例说明: http://www.ajaxproject.org

RM、RMVB、RV、WMV9等媒体格式转换为FLV

原文作者: http://ken.bokele.com/?CH=8408&ViewID=24738
大家都知道用FFMPEG可以转FLV,可以抓图,但是不支持RM,WMV9等格式,有人说可以实现支持RM,WMV9等,要自己开发,俺们不会编程,可怜,自己开发的事就别想了。那有什么方法可以支持所有格式在线转FLV呢,用一个软件转FLV的我不知道,但是我知道用Mencoder可以支持所有格式转AVI,再用FFMPEG来转FLV,并抓图等,虽然这个方法麻烦,但是也是一个可行的方案。也有人说可以用Mencoder直接转FLV,但是我还不知道怎么弄,等我知道时我一定告诉大家。现在下面贴出这个方案,是我实验成功的,如有不对的地方,请指教。
more »

Category: 其他技术  6 Comments

PHP之xAjax参考手册

什么是xajax?
xajax如何工作?
为什么我要使用xajax代替其他PHP的Ajax库?
如何在我的PHP脚本之中使用xajax?
如何异步更新内容?
如何异步处理表单数据?
如何给xajax增加定制功能?
我能在私有或者收费产品之中使用xajax吗?
more »

再见了,永远的车王苏马赫

今天凌晨1点是F1巴西站,这是2006赛季F1收关之战,也是法拉力和雷诺两个车队冠亚军之战,最重要的,这场比赛是伴随我们多年的车王迈克尔.苏马赫的告别赛。

定好闹钟准时起来刚好看到发车,一口气看到比赛结束,虽然说结果并非那么完美,但是还算满意。虽然法拉力和苏马赫都未能最终拿到年度冠军,但是马萨的巴西本土夺冠以及苏马赫的有惊无险上演精彩超车,还是能为这场收关比赛划上圆满的句号。
more »

增加PHP的Session存储和处理能力

  可能很多PHPer都用到了PHP提供的Session功能,可以方便的进行会话功能处理,PHP服务端默认的session存储是文件存放方式,在Windows上PHP默认的Session服务端文件存放在C:\WINDOWS\Temp下,*NIX下默认存放在/tmp下,如果说并发访问很大或者session建立太多,在这两个目录下就会存在大量类似sess_xxxxxx的session文件,同一个目录下文件数过多会导致性能下降,并且可能导致受到攻击最终出现文件系统错误。针对这样的情况,PHP本身体提供了比较好的解决办法。
  不少朋友可能都没有注意到php.ini里面Session设置部分中有这样一项:

;     session.save_path = "N;MODE;/path"

more »

Category: PHP / Zend  10 Comments

和一个美女同事一起电梯里被困了一夜(结局)

  我万没想到蒋楠居然这样的神通广大,刚回来就把的犯罪证据掌握得一清二楚,现在想说什么也没有用了,当下我只好站着一言不发,心里面自暴自弃的想:管他呢,反正事情已经到了这一步,爱怎样就怎样吧!
“你太让我失望了!”蒋楠似乎还想说些什么,但是忍住了。她脸上的失望的悲伤要远远大于痛苦,我低着头,不敢再看她的神情。这时心里居然还想起那个讨厌的白琳了:我为她做了这么多事,她会知道吗?他知道了会笑我傻吗?

  “赵赶驴!”蒋楠又一次叫出我的名字,然后她顿了顿,像是在做出什么艰难的决定“你现在被解雇了!你收取的那一百肆意最好马上就交给公司,还有,我不能保证公司不会报案!”蒋楠这三句话无异三下闷棍,一下一下砸向我,而且一下比一下黑。开除?交钱?还要报案?蒋楠呀蒋楠。你也在狠了点儿吧!是的,这事我做的是不厚道,可是做完之后我就后悔了呀,而且我一分都没动呢!采购案我也没有帮马老板搞定,你就这样?交钱可以。解雇也没有什么,可是没必要从你嘴里说出来吧!以我们的交情,你就算不帮我。也不至于落井下石吧!还要报案?(我差点没哭了,我可不想坐牢啊!)
more »

PHP的Session验证总是失败,没想却是ZoneAlarm搞怪

  今天调试一个基于PHP的Session验证的程序,发现总是登陆失败,debug发现Session注册没有成功,也就是cookie没有生成,以前很少遇到这样的问题,因为PHP的配置肯定是没有问题的,更为奇怪的是,这样的问题在IE和FireFox上会遇到,在TT浏览器上确正常了,折腾了半天才总算发现的问题所在。

  经过对TT和FireFox上页面返回源代码的对比,发现两者之间有差异,在IE和FireFox访问后的页面中,HTML源代码的Header部分总会被加入类似这样的一行代码

<script language='javascript' src='http://127.0.0.1:1025/js.cgi?caw&r=27432'></script>

more »

10日凌晨天才少年保罗亨特癌症去世,送去天堂的祝福

  北京时间10月10日凌晨,英国著名斯诺克球手保罗-亨特因癌症病逝,年仅27岁。

  惊闻亨特病逝,斯诺克界的球手陷入无限悲痛中,斯诺克顶级比赛参赛选手不多,因此球手之间一般都保持者非常好的私人关系,对于亨特的突然离去,和他作战多年的战友们非常难过。

  前世锦赛冠军老将约翰-帕洛特说:“他的离去对斯诺克运动来说是个巨大的打击,不过更大的打击是他的家庭,亨特的家人是最悲痛的。亨特每次比赛都是面带笑容,我非常喜欢和他比赛,因为在比赛中你决不会听到他的抱怨,他一直是个乐观的人。”

  七次世锦赛冠军得主、苏格兰名将斯蒂芬-亨德利说:“我被这个消息震惊了,他拥有一个美满的家庭,同样也应该拥有一个美好的未来…… 这真是个糟糕透顶的夜晚。我实在不愿听到这样的消息。”

  斯诺克联盟发言人表示,在本周进行的所有的斯诺克比赛之前,都将为亨特默哀一分钟。斯诺克界的前辈威廉-索内遗憾的说:“我曾经预言亨特将会赢得世界冠军,但是,现在这无法实现,我真的很遗憾,我们大家都会怀念他。”

让我们为这位伟大的天才球员送去天堂的祝福吧!
故人居台球社区送祝福帖子: http://bbs.8zone.cn/viewtopic.php?t=5659

2005年中国公开赛和亨特的合影:
2005年中国公开赛和亨特的合影

中秋月圆之夜,接到好朋友来自印度的问候

  晚上吃饭,正为独在异乡黯然神伤之际,接到David从印度孟买打来的电话,心情很不错!

  跟David在大学认识至今有8年多了,毕业后我们见面时间不多,尤其这两年总在国外,每年都只能在春节才能见一次面,不过我们两个之间的朋友情谊却一直都是那么真挚和强烈,每每想起对方都有种很亲切的感觉,每次相聚感觉也是那么熟悉,就像昨天刚见过面一样,我想,这就是真正的朋友。

  给大家分享一下我正在品味的双黄月饼,哈哈:)
yuebing