忍者ブログ
バナヤンの忍者風呂
忍者ブログのカスタマイズ、各種WEBツールのテストなど試行錯誤の日々。 VMLによる地図の作成を研究していましたが、一時中断して、今はPHPを勉強しているところです。
ニュース
この欄には、このブログの内容に関連するニュースを掲載する予定です。
お知らせ
この欄には管理人からのお知らせなどを掲載します。
[31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41]

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

PHP シークレットページ4(門前払い)

PHP シークレットページ」、「PHP シークレットページ2」、「PHP シークレットページ3」と鍵付のページを作ってきました。今回は、私の大好きな「門前払い」形式で、シークレットページを作ります。

私が「門前払い」形式が大好きな理由は2つあります。
1.条件に合わないアクセスを、それなりのページに誘導できる。
2.HTMLの記述が簡単になる。

「1.条件に合わないアクセスを、それなりのページに誘導できる。」ということは、「条件ごとにページの振り分けができる」ということでもあります。携帯電話からのアクセスに対して、電話会社別に表示するページを変えられるというのも、この仕組みを使って実現できます。

「2.HTMLの記述が簡単になる。」というのは、PHPの記述の中で、HTMLの表示のために、HTMLのタグを使用する場合「echo "~";」か「print "~";」を記述し、さらに引用符を「”」から「'」に変更しなければならなかったりするのですが、その必要がないということです。HTMLタグをHTML文書に直接書き込めると、書きやすいし、ソースも読みやすくなります。

では、「シークレットページ4(門前払い)」について説明します。
PHP文書の先頭部分で、「パスワードが間違っていれば、パスワード入力ページへ飛びなさい」と書きます。このように書いておけば、この記述以下は、パスワードが正しいものだけに適用されることになります。

自動的に特定のページに移動させるには、PHPで次のように記述します。

header("Location:移動先ページのurl");


これを使った「シークレットページ4(門前払い)」のソースを示します。
[ソース]secretpage4.php

<?php
if($_POST[pwd]!="secret"){
header("Location:secretpage4.html");
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Pragma" content="no-cache">
<title>シークレットページ4</title>
</head>
<body>
<p>正しいパスワードが入力されました。</p>
<hr>
</body>
</html>

PHPの部分より下は、普通のHTML文書の記述ですね。
移動先の「secretpage4.html」の記述は、フォームのactionで指定するPHPファイルの名前が違うだけで、他はsecretpage3.htmlとまったく同じです。

[ソース]secretpage4.html

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Pragma" content="no-cache">
<title>シークレットページ4・パスワード</title>
</head>
<body>
<form action='secretpage4.php' method='post'>
パスワード:<input type='text' name="pwd">
<input type='submit' value="送信">
</form>
<hr>
</body>
</html>
PR
この記事にコメントする
お名前
タイトル
メールアドレス
URL
コメント
パスワード
QRコード
忍者ブログ [PR]
Copyright (C) 2006 banayan ALL RIGHTS RESERVED.