アクセスの度にちがうHTMLを出力する

[上に] [前に] [次に]
優子 1999/10/28(木) 00:09:02
タイトルのままですが、
アクセスの度にちがうHTMLを出力するようにするには
どういう方法が簡単で確実でしょうか?

わたしがぼんやりイメージしているのは、

100%のフレームframe.htmlをつくって、そこへアクセスするたびに
中身のhtmlが複数のファイルからランダムに選ばれる javascript

単独のhtml中にjavascriptでアクセスされたら0秒後に
あらかじめ設定しておいた複数のhtmlni ランダムに飛ばす

などですが、こういうページのサンプルをご存知ありませんか?

いなもと 1999/10/28(木) 02:08:36
ちょと時間ないので少しだけ、
Math.random()とlocatinでできますよね。

LoveSong [HomePage] 1999/10/28(木) 10:33:55
うぃうぃ〜 簡単に〜

var msg = new Array();
msg[0] = "location.href = 'index.html'";
msg[1] = "location.href = '****.html'";
msg[2] = "location.href = '****.html'";
msg[3] = "location.href = '****.html'";

var Ran = Math.floor(Math.random()*msg.length);
document.write(msg[Ran]);

ってな感じのScriptを参考にしてください〜
でもこれだと・・・Scriptを読んだhtmもヒストリーに残るからな〜(^^;;;
実際はSSIでやるのがお勧めですぅ(^^;;;

ゆうまじろう [E-Mail] [HomePage] 1999/10/28(木) 15:56:26
frame.htmlを次のようにすれば、
frame.htmlの内部でフレーム内のhtmlファイルをランダムに
設定しているので、ヒストリーに残らないはずです。
実は表示テストしていないので、
正しく表示されるかわかりませんが。(^^;;

<HTML>
<HEAD>
<TITLE>htmlファイルをランダムに表示</TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
var url = new Array();
url[0] = "aaaa.html";
url[1] = "bbbb.html";
url[2] = "cccc.html";
url[3] = "dddd.html";
url[4] = "eeee.html";

function random_src()
{
  return(url[Math.floor(Math.random() * url.length)]);
}
// -->
</SCRIPT>
</HEAD>
<FRAMESET ROW="*">
<SCRIPT LANGUAGE="JavaScript">
<!--
document.write('<FRAME SRC="' + random_src() + '" NAME="MAIN">');
// -->
</SCRIPT>
</FRAMESET>
</HTML>

それと、0秒後に別のURLに飛ばされるスクリプトというのは、
ブラウザの『戻る』ボタンを使っている人には
嫌われるので、そういうページは作らないほうがいいですよ。

前田 1999/10/29(金) 20:19:02
ゆうまじろうさんの構文だと、
そのページの次のページを見た後で
ブラウザの『戻る』ボタンを使うとどうなるのですか?

ゆうまじろう [E-Mail] [HomePage] 1999/10/30(土) 06:47:17
28日に書いたタグをテストしてみたら、
お約束どおりに失敗しました。(笑)
どうやら<FRAMESET>の中で<SCRIPT>が使えないようなので、
<FRAMESET>ごとdocument.writeで記述するように訂正しました。

<HTML>
<HEAD>
<TITLE>htmlファイルをランダムに表示</TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
var url = new Array();
url[0] = "aaaa.html";
url[1] = "bbbb.html";
url[2] = "cccc.html";
url[3] = "dddd.html";
url[4] = "eeee.html";

function random_src()
{
tag = '<FRAMESET COLS="100%, *" FRAMEBORDER="0" BORDER="0" FRAMESPACING="0">\n';
tag += '<FRAME SRC="' + url[Math.floor(Math.random() * url.length)] + '" NAME="MAIN">\n';
tag += '<FRAME SRC="" NAME="SUB">\n</FRAMESET>\n';
return tag;
}
// -->
</SCRIPT>
</HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
document.write(random_src());
// -->
</SCRIPT>
</HTML>

>前田さん
 訂正したもので実際に試してみたところ、
 これの次のページを見た後、『戻る』ボタンを押すと、
 前のアクセスで指定したページが表示されます。
 

[上に] [前に] [次に]