2

私はウェブサイトを構築するのは非常に新しく、ここ数ヶ月間ウェブサイトを構築しています。ダウンロードするファイルのライブラリを含むパスワードで保護されたページを自分のサイトに追加したくありません。ログインの詳細を入力するために使用する簡単なフォームをホームページに作成しましたが、ユーザー名ではなくパスワードのみを含めたいと思います。私が抱えている問題は、オンラインの現在のすべての.htaccessチュートリアルにはユーザー名とパスワードの両方が必要であり、サイトで独自のログインボックスを使用できないことです。誰かが私にコードを提供し、それをどこに置くかを教えてくれたら、私はそれをいただければ幸いです。

index.htmlのログインボックスは単純な形式です。

<form>
Member login:<input type="password" name="password" />
<input type="button" value="Login" />
</form>

これを見てくれてありがとう、

ジョー

4

1 に答える 1

3

パスワードが正しいかどうかをチェックするサーバーサイドスクリプトが必要な場合。

まず、スクリプトを呼び出すためにフォームを変更する必要があります

<form action="login.php" method="post">
  Member login:<input type="password" name="password" />
  <input type="submit" value="Login" />
</form>

変更点:

  • アクション:ユーザーが送信ボタンをクリックしたときに呼び出されるスクリプトを定義します
  • input type = submit:フォームにデータをサーバーに送信させる送信ボタン
  • メソッド:データがサーバーに渡される方法を定義します

「login.php」の簡単な例は、次のPHPスクリプトです。

<?php
  if($_POST["password"] == "Your password here.") {
?>
Your website here.
<?php
  }
  else
  {
?>
Error message here.
<?php
  }
?>

2行目では、フォームによって投稿されたパスワードフィールドが右側の文字列(「ここにパスワード」)と等しいかどうかを確認します。

「あなたのウェブサイトはこちら」というテキスト。パスワードが正しい場合は、が表示されます。それ以外の場合は、「ここにエラーメッセージ」が表示されます。そのテキストを通常のHTMLコードに置き換えることができます。

あなたのコメントに加えて:

ログイン後にHTMLファイルにリダイレクトしないでください。そのファイルへのリダイレクトには、そのファイルを公開する必要があるためです。代わりに、.htaccessを使用してプライベートにし(ローカルホストでのみアクセス可能)、phpスクリプトを介してインクルードする必要があります。

フォルダをプライベートにするための.htacces:

Order deny,allow
Deny from all
Allow from 127.0.0.1

更新されたPHPスクリプト(secureFolderはプライベートフォルダーです):

<?php
  if($_POST["password"] == "Your password here.") {
    include("secureFolder/members.html");
  }
  else
  {
?>
Error message here.
<?php
  }
?>

この方法でアクセスできるのは1つのサイトのみであることに注意してください。ログイン後にユーザーが複数のサイトを開くことができるようにするには、ユーザーのログインを保存してページを提供するPHPセッションが必要になります。

于 2013-01-12T21:41:29.330 に答える