Midari Create > webアプリケーション製品 > Wakarana > サンプルコード >

【Wakarana】シンプルなログインフォーム

Wakaranaで利用できる、TOTPによる2要素認証に対応したシンプルな1段階ログインフォームのサンプルコードです。

wakarana::login関数は、ユーザーIDとパスワード、TOTPのワンタイムコード(2要素認証が有効なユーザーの場合)を照合し、正しければクライアント端末にログイン情報を送信して、そのユーザーのwakarana_userオブジェクトを返します。

アプリケーション全体で2要素認証を使用しない場合は、以下のPIN入力欄、及び、wakarana::login関数の第三引数を省略することが可能です。

sample_1.html

<form action="sample_2.php" method="post">
    ID <input type="text" name="user_id"><br>
    パスワード <input type="text" name="password"><br>
    PIN <input type="text" name="totp_pin" placeholder="2要素認証を使用している場合のみ入力"><br>
    <button type="submit">送信</button>
</form>

sample_2.php

<?php
include "wakarana/main.php";

$wakarana = new wakarana();

//ログイン認証処理
$user = $wakarana->login($_POST["user_id"], $_POST["password"], $_POST["totp_pin"]);

if (is_object($user)) {
    print $user->get_name()."としてログインしました";
} else {
    print "ユーザー名またはパスワード、PINが違います";
}