Text_CAPTCHA (Previous) (Next) Text_Figlet

View this page in Last updated: Sun, 05 Oct 2008
English | French | German | Hungarian | Japanese | Polish | Spanish | Plain HTML

Text_CAPTCHA_Numeral

算数の計算による CAPTCHA (Completely Automated Public Turing tests to tell Computers and Humans Apart : コンピュータと人間を 区別するための、完全に自動化された公開チューリングテスト) を実装したものです。

導入

このパッケージは、数字の CAPTCHA (Completely Automated Public Turing tests to tell Computers and Humans Apart : コンピュータと人間を 区別するための、完全に自動化された公開チューリングテスト) を作成する機能を提供します。以下のような機能が含まれます。

このパッケージは、数字の CAPTCHA を作成します。 HTTP はステートレスなプロトコルなので、Web ページの安全性を 確保するために、このパッケージを使用してきちんと実装する 必要があります。 詳細な情報は 使用例を参照ください。

以下の例では CAPTCHA の一般的な使用法を説明します。 CAPTCHA が正しく解決された場合にのみ、フォームから送信された内容を 処理します。

例 64-4数字の CAPTCHA を使用してフォームのセキュリティを確保する

この例では、数字の CAPTCHA を使用してフォームのセキュリティを確保する方法を示します。 作成した計算式を、セッション変数に格納しています。


<?php
require_once 'Text/CAPTCHA/Numeral.php';
$numcap = new Text_CAPTCHA_Numeral;

if (isset($_POST['captcha']) && isset($_SESSION['answer'])) {
    if ($_POST['captcha'] == $_SESSION['answer']) {
        $errors[] = 'Ok... おそらくあなたは人間ですね..';
    } else {
        $errors[] = 'あなたは間抜けか人間じゃないかのどちらかですね';
    }
}
    if (!empty($errors)) {
        foreach ($errors as $error) {
            print "<h1><font color='red'>$error</font></h1><br />";
        }
    }


    print '
        <form name="capter" action="index.php?page=liveExample" method="post">
         <table>
          <tr>
           <th>お客さん、この答えは何ですか?: '.$numcap->getOperation().'</th>
           <td><input type="text" value="" name="captcha" /></td>
          </tr>
          <tr>
           <th/>
           <td><input type="submit" value="私が人間であることを証明します!" /></td>
          </tr>
        </form>
    ';
    $_SESSION['answer'] = $numcap->getAnswer();
?>

Text_CAPTCHA (Previous) (Next) Text_Figlet

Download Documentation Last updated: Sun, 05 Oct 2008
Do you think that something on this page is wrong? Please file a bug report or add a note.
User Notes:
There are no user contributed notes for this page.