今天为 MiniFramework 新增了一个名为 Captcha 的类,用于图片验证码的输出和校验。
具体用法如下:
用 MiniFramework 新建一个名为 Example 的控制器,例如:
<?php namespace App\Controller; use Mini\Action; use Mini\Captcha; /** * Example */ class Example extends Action { function captchaAction() { if (!empty($_POST['code'])) { $captcha = new Captcha(); $res = $captcha->check($_POST['code']); if ($res) { $this->view->assign('info', 'success'); } else { $this->view->assign('info', 'fail'); } $this->view->assign('code', $_POST['code']); } $this->view->display(); } function getcaptchaAction() { $captcha = new Captcha(); $captcha->create(); } }
同时创建视图,代码如下:
<?php if (isset($this->code)) echo '<p>input code: ' . $this->code . '</p>';?> <?php if (isset($this->info)) echo '<p>check result: ' . $this->info . '</p>';?> <img src="getcaptcha" onclick="this.src='getcaptcha?t='+Math.random()" /> <form method="post" action="captcha"> <p>code:<input type="text" name="code" value="" /> <input type="submit" value="check" /></p> </form>
创建完成后,访问 http://你的域名/example/captcha 即可看到效果。
上边的代码已经包含在 MiniFramework 位于 GitHub 的 master 主线上。
GitHub源代码地址:https://github.com/jasonweicn/MiniFramework