Sina App Engine(SAE)入门教程(4)- SaeVCode(验证码服务)使用

参考资料

使用教程

所有的验证码原理都是生成一个vcode字符串,存到session中,和用户的输入进行比较判断,以下是一个使用验证码服务的完整实例:

首页index.html

<html>
<title>Sae Vcode demo</title>
<body>
        <form action="check.php">
                <input type="text" name="vcode"><img src="vcode.php">
                <input type="submit" value="Submit">
        </form>
</body>
</html>

生成验证码的脚本vcode.php

<?php
session_start();
$vcode = new SaeVCode();
if ($vcode === false)
        var_dump($vcode->errno(), $vcode->errmsg());

$_SESSION[‘vcode‘] = $vcode->answer();
$question=$vcode->question();
$imgdata = file_get_contents($question[‘img_url‘]);
header("content-type:image/jpg");
echo($imgdata);
?>

用户提交验证码判断脚本check.php

<?php
$vcode = $_REQUEST[‘vcode‘];
session_start();
if($_SESSION[‘vcode‘] != $vcode)
{
        echo ‘Vcode error‘;
}else{
        echo "Vcode right";
}

本实例演示地址

http://lazydemo.sinaapp.com/saevcode/

代码打包下载地址

http://lazydemo.sinaapp.com/saevcode/saevcode.zip

时间: 2024-08-02 11:03:09

Sina App Engine(SAE)入门教程(4)- SaeVCode(验证码服务)使用的相关文章

Sina App Engine(SAE)入门教程(2)-Mysql使用

如果你还没有SAE的账号,请在http://sae.sina.com.cn 注册新用户.具体的注册流程请参见:Sina App Engine(SAE)入门教程(1)在常规的环境下,我们可以通过http://php.sinaapp.com/manual/zh/ref.mysql.php中PHP的原生函数去操作Mysql,但是由于SAE的环境问题,使用了主从分离技术,因此我们对数据库的操纵做了一次封装,当然你也可以继续使用这种方式去操作mysql.你可以如下使用.首先得到数据库连接的主机名,账号,密

Sina App Engine(SAE)入门教程(8)- SaeFetchurl使用

fetchurl是什么? FetchURL是SAE为开发者提供的分布式网页抓取服务,用来同步的抓取http页面,FetchURL针对国内的网络的做了优化,内部有调度系统,尽可能保证用户快速的抓取到目标页面.在SAE上使用FetchURL非常简单,只需要调用sae_std_lib中的几个简单的函数即可. FetchURL是sae初期不支持curl时的替代方案,现在sae已经完全兼容 curl! fetchurl怎么用? 例如我想抓取百度的网页,那么代码如下: <?php $f = new SaeF

Sina App Engine(SAE)入门教程(3)-KVDB使用

简介 因为传统关系型数据库在分布式环境下表现的扩展性不足等缺点,近年来NoSQL的概念渐渐成为业界关注的焦点,越来越多的技术人员也习惯于使用NoSQL数据库进行日常开发,SAE为了应对这种新需求,也进行了NoSQL方向的研发. KV DB是SAE开发的分布式key-value数据存储服务,用来支持公有云计算平台上的海量key-value存储.KV DB支持的存储容量很大,对每个用户支持100G的存储空间,可支持1,000,000,000条记录,用户可以用KV DB存放简单数据,如好友关系等. 用

Sina App Engine(SAE)入门教程(1)

创建应用 在注册完账号之后,需要到 http://sae.sina.com.cn/?m=myapp&a=create创建一个应用. 接着点击应用列表http://sae.sina.com.cn/?m=myapp 选取你刚创建的应用.选择左侧“代码管理”,如下图所示: 创建版本 这时访问你的应用http://1.lazydemo.sinaapp.com/就可以看到: 编辑代码 点击“编辑代码进到在线编辑器”: 在以下红色标示的区域内编辑你的代码就可以使用SAE了. 另一种代码提交方式:SVN 如果

Sina App Engine(SAE)入门教程(7)- Storage使用

参考阅读 sae storage api 文档 Storage 说明文档 Storage 大文件上传说明 storage是什么? 因为sae禁用了代码环境的本地读写,但是在网站运行的过程中,必定会出现文件的读写,附件保存问题,此时就该存取storage出场了,storage代替了常规的upload目录~ 怎么在sae使用storage? 见下面的图示: 输入domain的名字,其他的建议不需要填写,特别是防盗链那块,对于不熟悉的人而言,设置可能导致storage内的资源无法访问,可以等彻底熟悉了

Sina App Engine(SAE)入门教程(9)- SaeMail(邮件)使用

参考资料: SAE mail api 文档 怎么使用? 参见代码: <?php $mail = new SaeMail(); $f = new SaeFetchurl(); $img_data = $f->fetch( 'http://ss7.sinaimg.cn/bmiddle/488efcbbt7b5c4ae51ca6&690' ); $mail->setAttach( array( 'my_photo' => $img_data ) ); $ret = $mail-&

Sina App Engine(SAE)入门教程(6)- memcache使用

Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果等.简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度.sae同样提供memcache 缓存服务. 如何开启SAE memcache服务? 注意:我们建议不要开始太大的memcache配额,因按照项目的需要酌情的选择,一般建议不需要开启超过20M. 以下就通过一个小例子和一个综合的例子说明SAE memcac

Sina App Engine(SAE)入门教程(10)- Cron(定时任务)使用

参考资料 SAE Cron说明文档 Cron能干什么? cron 可以定时的触发一个脚本,在sae上最大的频率是一分钟一次.你可以用其来完成自己需要的业务逻辑,例如定期的抓取某些网页完菜信息的采集,定期的触发一个清理数据库的脚本等等. Cron怎么用? Cron作业只能调用应用默认版本的URL,其添加和删除都需要通过代码发布完成.例如你的默认版本是1,那么你在版本2的config.yaml设置的cron将是无效的,不会被执行. 操作方法为:编辑 APPNAME/1/config.yaml (AP

Python Flask 在Sina App Engine (SAE)上安家

早就听说了Python的大名,随着的编程语言的理解加深,越发觉得动态语言的威力--真大呀. 趁这段时间不忙,我也用Python写了一个应用,并且将其部署到Sina App Engine (SAE).SAE确实是一个好地方,它支持Python,对于开发者,其使用费用几乎为0. 更重要的是,如果我的这个app不会半路夭折,等它长大后,这个平台也能给予足够的支持. 虽然,整个过程都很简单,但是对于一个新手,特别是从传统C#, Asp.net, IIS阵营过来的开发人员来说,什么都是第一次接触.希望我的