简单的验证码图片生成器

下面的PHP程序可以生成如  这样的简单验证码。把它存成一个PHP文件,例如captcha.php,使用<img src=’captcha.php’ />显示它,然后,你在服务器端把用户的输入和$_SESSION[‘captcha’]做比较即可:

<?php
    session_start();

    $charset = 'ABCDEFGHJKLMNPQRSTUVWXY3456789';
    $maxpos = strlen($charset) - 1;
    $captcha = '';
    $im = imagecreate(60, 24);
    $white = imagecolorallocate($im, 0xff, 0xff, 0xff);
    for ($i = 0; $i < 4; $i++) {
        $imchar = imagecreate(15, 24);
        $white = imagecolorallocate($imchar,mt_rand(0xe0, 0xff), mt_rand(0xe0, 0xff), mt_rand(0xe0, 0xff));
        $color = imagecolorallocate($imchar, mt_rand(0x00, 0x70), mt_rand(0x00, 0x70), mt_rand(0x00, 0x70));
        $captcha .= substr($charset, mt_rand(0, $maxpos), 1);
        imagestring($imchar, 5, 0, 0, $captcha[$i], $color);
        $imchar = imagerotate($imchar, mt_rand(-10, 10), $white);
        imagecopymerge($im, $imchar, mt_rand(1, 5) + $i * 15, mt_rand(0, 8), 0, 0, 15, 24, 100);
    }
    for ($i = 0; $i < 15; $i++) {
        $x1 = mt_rand(0, 59);
        $y1 = mt_rand(0, 23);
        $x2 = $x1 + mt_rand(-2, 2);
        $y2 = $y1 + mt_rand(-1, 1);
        imageline($im, $x1, $y1, $x2, $y2, mt_rand(0x000000, 0xffffff));
    }
    $_SESSION['captcha'] = $captcha;
    header('Content-type: image/gif');
    imagegif($im);
?>

使用的字符集里没有I、O、1、0、Z、2,因为担心它们互相混淆。思考:S和5是不是也挺像的?纠结。

为了让验证码有“看不清,换一个”的功能,现实中的<img>写得要稍微复杂些,下面代码里的’captcha.php?’+now.getTime()是为了欺骗浏览器,让它以为是一张新的图片进来了,强迫它刷新captcha.php产生的图片,而不是从缓存里获得:

<img src="captcha.php" title="click for a new one"
onclick="now=new Date();src='captcha.php?'+now.getTime();" />

名单

截至2012年7月26日,已经确认逝者身份的:

8月3日,确定1名逝者身份,新发现1名遇难者,并确认身份:

8月5日,确定2名逝者身份,新发现1名遇难者,并确认身份:

尚有8位,未确定身份。

另有因公殉职基层干部5位:

  • 房山区韩村河镇副镇长高大辉(男40岁)
  • 燕山公安分局向阳路派出所所长李方洪(男45岁)
  • 房山区周口店镇新街村干部冷永成(男58岁)
  • 房山区长阳第二供水厂抢险队队长郭云峰(男29岁)
  • 密云县大城子镇党委副书记镇长李建民(男46岁)

截至2012年7月26日,共77位遇难者。

截至2012年8月5日,共79位遇难者。

学会游泳很重要

以前常听一句话:开车一定要眼观六路耳听八方,你不去撞人家,保不齐人家来撞你。现在惊恐地加一条,开车人学游泳也很必要,不要以为自己不会主动往河里开就万事大吉了。你不去找河,河会来找你。

变色的公司内刊

公司的内刊杂志:上面一本(被压着的那本)是放在天井大厅里的,下面一本是锁在我抽屉里的。五个月之后,兄弟俩的颜色对比。有机物的展品为什么怕闪光灯,你知道了么?

变色的公司内刊

变色的公司内刊

《寂静之道》

寂静之道

寂静之道

从淘宝上订的《寂静之道》书到了。

书分两大部分,第一部分讲述四法印和四圣谛,树立“正见”,即在终极目标的地方,为读者立一个标杆,以免走迷了路。第二部分介绍的,是为了达到上半部所介绍的终极目标,可以采取的路径。用行话来说,上半部是闻思,下半部是修行。用《论语》的话说,上半部是思,下半部是学。学而不思则罔,思而不学则殆。

书的内容结构很新颖,有点像微博,有点像《吉檀迦利》,每段五、六行话,讲一个单独的道理,而整个连下来看,又是贯通一气的。堪布的文字般若真是令人钦佩不已。

我打算在两天内看完这本书,用几年去读懂它,用一辈子去印证它。

为什么哭用来表示悲伤

为什么哭用来表示悲伤?

俺的猜想:人刚出生时,哭是一种本能,表示“我是活的,别丢下!”的意思,母亲听到这个信号,即对会啼哭的个体哺乳。这时的哭是一种反射,但不是条件反射,它和情绪无关。人再长大些,还不会说话,能发出的声音还是只有哭,于是用哭来表示“我有需求”。醒了,饿了,尿了,拉了,哼哼两声。母亲听不见的,就加大音量哼哼,进而哭,进而嚎,直到母亲听到为止,母亲对孩子的照料,会进而强化这种反射。这时,哭就和“索取”挂上钩了。再长大些,孩子向大人要东西,要不到,就顺理成章地哭,哭就和“欲求不满”沾边了。最后就演变成用哭声表示负面的情绪,特别用来表达“失去”——同样是负面情绪,愤怒就不一定用哭来表达。

推论:爱哭的人,特别是爱嚎哭的,必定有个粗心大意的老妈。

毛子强

糟了,连北京市交管局车管所都给我发短信,提醒“毛子强”先生的某牌号的奥迪车将过年检。看来“毛子强”的身份已经从民间流传到官方了。我为这位素未谋面的毛子强先生祈祷,千万别赌博吸毒负债累累啊,千万别酒驾肇事啊……

问了一下车管所(12122),接线员说,毛子强留错的电话删不掉了,不过,既然这车实际上不是我的,我还是可以尽情忽略包括车管所的信息,毛子强先生犯的事儿跟我没关系。

《寂静之道》

淘宝上订购了七本《寂静之道》,希阿荣博堪布仁波切的作品。堪布仁波切的书的风格十分平实,从不讲不着边际的大道理,也不讲神神道道的东西,是我学习的榜样。

和老板聊天,她对我的精神状态很是担心,觉得我和刚来公司的时候那种快快乐乐的状态很不相同。她担心信仰“这玩意儿”控制我的身心,让我走火入魔。其实我一直有信仰“这玩意儿”,也是它成就了我初来公司时的快快乐乐的状态。不过那个状态只是前进路上的一步。

不是说,我追求的是不快乐,而是说,那个快乐本身是无常的,不值得拥有也无法恒常拥有。她看到的是工作上的状态,在生活里,我还是快快乐乐的,虽然这个快乐本身并不究竟,但我不打算改变。当它和工作冲突时,我会放弃工作。当它和精神上的寂静冲突时(这样的冲突,从理论上说是自我矛盾的,因此是无可能的),我会把它也放弃掉。

颐和园随意拍

太阳黑子

刚刚拍到的太阳黑子,还挺显著的。

拍摄参数:巴德膜(太阳滤光膜),光圈f/22,曝光1/6400秒。巴德膜很重要!如果不用,有立即失明和毁坏相机之虞。

太阳黑子

太阳黑子,2012年7月14日