このプログラムは、下位ディレクトリ名をログイン名とし、
その中にパスワードをファイル名としたHTMLを置くという物です。

これにより、リンク先のページのログイン名,パスワードを入力しないと
進めないようにするものです。

注意事項
(必ずお読みください)

色で書かれた文字は同色で書かれた同じ名前を使用するということです。
確認をクリックすれば実際の動きを見られます。
確認後はブラウザの "戻る" ボタンで戻ってください。

確認


pass1.html

  1. <HTML>
  2. <HEAD>
  3. <META NAME="robot-control" CONTENT="deny-all">
  4. <META NAME="robots" CONTENT="noindex, nofollow">
  5. <TITLE>Password</TITLE>
  6. <SCRIPT LANGUAGE="JavaScript">
  7. <!--
  8. function kakunin(){
  9.   alert("あなたのログイン名とパスワードを入力して下さい。");
  10.   window.open("password.html","password","width=330,height=140");
  11. }
  12. //-->
  13. </SCRIPT>
  14. </HEAD>
  15. <BODY>
  16. <CENTER>
  17. この先へ進むには<A HREF="JavaScript:kakunin()">ここをクリック</A>してください。
  18. </CENTER>
  19. </BODY>
  20. </HTML>


password.html
  1. <HTML>
  2. <HEAD>
  3. <META NAME="robot-control" CONTENT="deny-all">
  4. <META NAME="robots" CONTENT="noindex, nofollow">
  5. <TITLE>Password</TITLE>
  6. <SCRIPT LANGUAGE="JavaScript">
  7. <!--
  8. function pass(f){
  9.   if (document.MyForm.user.value=="" && document.MyForm.MyPW.value==""){
  10.     alert("ログイン名とパスワードが入力されていません");
  11.   }
  12.   else{
  13.     if (document.MyForm.user.value==""){
  14.       alert("ログイン名が入力されていません");
  15.     }
  16.     if (document.MyForm.MyPW.value==""){
  17.       alert("パスワードが入力されていません");
  18.     }
  19.   }
  20.   if (!document.MyForm.user.value=="" && !document.MyForm.MyPW.value==""){
  21.     window.opener.document.location.href = f.user.value+"/"+f.MyPW.value+".html"
  22.     close();
  23.   }
  24. }
  25. function out(){
  26.   close();
  27. }
  28. //-->
  29. </SCRIPT>
  30. </HEAD>
  31. <BODY>
  32. <CENTER>
  33. <FORM NAME="MyForm">
  34. <TABLE BORDER="0">
  35.   <TR>
  36.     <TD>
  37.       <B>Login Name :</B><BR>
  38.       <INPUT TYPE="text" NAME="user" size=35><BR>
  39.       <B>Pass Word :</B><BR>
  40.       <INPUT TYPE="password" NAME="MyPW" size=35>
  41.     </TD>
  42.   </TR>
  43.   <TR>
  44.     <TD>
  45.       <CENTER>
  46.       <INPUT TYPE="button" NAME="MyButton" VALUE=" O K " onClick="pass(this.form)"> 
  47.       <INPUT TYPE="reset" VALUE="RESET"> 
  48.       <INPUT TYPE="button" NAME="close" VALUE="CLOSE" onClick="out()">
  49.       </CENTER>
  50.     </TD>
  51.   </TR>
  52. </TABLE>
  53. </FORM>
  54. </CENTER>
  55. </BODY>
  56. </HTML>


N038Dv3j.html
  1. <HTML>
  2. <HEAD>
  3. <META NAME="robot-control" CONTENT="deny-all">
  4. <META NAME="robots" CONTENT="noindex, nofollow">
  5. <TITLE>SECRET</TITLE>
  6. </HEAD>
  7. <BODY>
  8. |
  9. |このページがパスワード保護されます。
  10. |
  11. </BODY>
  12. </HTML>


プログラムの説明です。< >で囲まれた部分は、行番号を
表しています。また、クリックすればその行へジャンプします。

pass1.html
<14>
window.open("password.html","password","width=330,height=140");
password.htmlは、パスワード等を入力するためのHTMLのファイル名(パス)です。
passwordは、開いたウィンドウの名前です。
width=330,height=140は、開くウィンドウのサイズです。
それぞれは適当に変えて下さい。

password.html
<12-28>
ログイン名とパスワードが入力されているか判断し、
入力されていれば、それをもとに元々開いていた親の
ウィンドウにパスワードで保護されたページを表示する関数です。
<25>
".html" の部分は、パスワード保護されたページの拡張子です。
場合によって ".htm,.txt" 等に変えてください。
f.user.value+"/"+f.MyPW.value+".html"
このファイルパスは、"password.html"からの相対パスです。
<30-32>
ログイン名、パスワード入力ウィンドウを閉じるための関数です。
別になくてもOSごとのウィンドウの閉じ方で閉じられるので
無くても良いのですが、一応作っておきました。
<42-60>
別にテーブルに入れる必要もないのですが、
レイアウトのために使ってあります。
(全てのブラウザがスタイルシートに対応しているわけではないので...。)

N038Dv3j.html
<N038Dv3j.html>
このHTMLのファイル名がパスワードとなります。
また、ファイル名の 大文字、小文字 は通常区別されます。
パスワードは、 半角アルファベット,数字のみ にすることを
進めます。これはあらゆるプラットフォームに対応させるためです。
<7>
タイトルは必ず書いてください。
これを書かないとブラウザによっては、
WindowにURLが表示されてしまい何となく恥ずかしいです。




back