ボブ先生のスパルタPHP入門講座

chapter6 簡単なユーザー判定

イエアガイズ!元気にしてたか?顔色悪いぐらいがロックだぜ!

オーケーマシュマロ腹ども!このチャプターでは簡単な条件判定をやってみるぜ! 条件判定って何って?まかせとけ!説明してやろう!

条件判定っつーのは、プログラムには欠かせないもので、 例えば「合計が10以上ならAの処理を行う」とか「今日が誕生日ならBの処理を行う」 なんていうのがそうだな。ログインフォームなんかがまさにそうだ。 「ユーザー名とパスワードが一致すればログイン」これも一つの条件判定だな! わかったかこの薄給野郎!

じゃあちょっとプログラムの仕様を考えてみるぜ!

簡単なユーザー判定
1. ユーザー名の入力、送信
2. あらかじめ決められたユーザー名と照合
3. 一致すれば規定の文字列を表示
4. 一致しなければエラー表示

イエア!プログラムは下のようになってるぜ! 解説を見る前にちょっとどんなことしてるのかなーぐらいのことは考えてみなよ!
<?php 
    
    $sName 
"";
    
$sDisp "あなたのお名前は?";
    
    if(isset(
$HTTP_POST_VARS['username']) == true)
    {
        
$sName $HTTP_POST_VARS['username'];
    }
    
    
$nLen  strlen($sName);
    if(
$nLen 0)
    {
        if(
$sName == "SHIHO")
        {
            
$sDisp "愛してる!";
        }
        else if(
$sName == "佐藤江梨子")
        {
            
$sDisp "家に来てくれ!";
        }
        else
        {
            
$sDisp "このサイコ野郎!";
        }
    }
    
?>
<html>
<body>

<?= $sDisp ?><br><br>

<form action="6.php" method="post">
    <input type="text" name="username">
    <input type="submit" value="送信">
</form>

</body>
</html>
で、上のプログラムを 実行するとこういう感じになるぜ! 今回は「SHIHO」と入力すると「愛してる!」と表示、「佐藤江梨子」と入力すると 「家に来てくれ!」、それ以外なら「このサイコ野郎!」と表示するわけだ。 じゃあひとつづつ解説していくぜこのジャニオタども!

POST変数を受け取る(line:3)

POST変数ってのは下のフォームから送信された文字列のこと。 method="post"ってなってるだろ?そのフォームから送信されると 6.phpというプログラムにデータのPOST処理が行われる。 それを$HTTP_POST_VARS['username']って言う感じで取得するんだ! usernameってのはフォーム内の値名な!わかんだろ? とりあえず深く考えずに「こうすれば取れる」って覚えとけ!

ユーザー名の文字数を数える(line:4)

ここではstrlenという関数を使って、入力されたユーザー名が何文字かっつーのを $nLenという変数に格納してるんだぜ!

ユーザー名が空かどうか判定する(line:5)

上で取得した文字数を判定して、0文字以上(空じゃない)であれば if文の中に入るという判定処理だ!ニュアンスをつかめ!
「もしもカッコ内が正しかったら、 { } で囲まれた部分が実行される」ってこと!

ユーザー名が規定文字列と一致するか判定する(line:7〜18)

ユーザー名がSHIHOなら$sDispに「愛してる!」を入れ、佐藤江梨子なら「家に来てくれ!」を入れる。 それ以外なら「このサイコ野郎!」を入れるという判定文群だ!「A == B」ってのはAとBが同じ値か っていう意味だぜ!

基本的にif文は以下のようになってるぜ!
if (A) { aaa... }
else if (B) { bbb... }
else { ccc... }

Aが正しければaaaという処理を行う。AじゃなくてBが正しければbbbという処理を行う。 AもBも正しくなければcccという処理を行う。どうだ!ちょっとはニュアンスがつかめたかこの野郎!

この判定文を利用して$sDispにメッセージを入れ、あとは下で表示しているだけ! どうだ、こんな簡単なもんでちょっとしたことができるだろ! あとは、ちょっと頭をひねれば、パスワードを使ったログインフォームとかできそうじゃね? やばくね?色々発想広がっちゃわね?

つーわけで、簡単なユーザー判定をやってみたわけだが、このチャプターまでの技術で 結構色々なことができちゃうんだなこれが!色々試してみな!
じゃあ先生これから2時ドキのピーコのファッションチェック見なきゃだから、 このチャプターはこれで終わりだこの天然ソリコミ野郎!