- 締切済み
このようなことはどうすれば実現可能ですか?
たとえば、今日のジョークとかいって、自分のサイトのページに <center><SCRIPT LANGUAGE="JavaScript" SRC="http://daily.***/joke.js"></SCRIPT></center> というようなコードを貼り付けると、毎日、違ったジョークが表示される無料のサービスがありますが、あれはどうやれば実現可能できるのでしょうか? まさか手動でということはないでしょうし、、、。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- yambejp
- ベストアンサー率51% (3827/7415)
想像される簡単なやり方は以下。 (1)大量に元データ(ジョーク部分)をつくっておく (2)特定の時間がくるとjsデータを書きかえる ようなプログラムをつくっておく。 毎日メンテをするのは現実的ではないですが ネタさえ多めに用意してあれば、自動プログラムで 運用すればムリな内容ではありません。 この場合拡張子がjsですし、cgiである可能性は低く、 どちらかといえばcronなどで処理をしていると 想像します。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><title>???</title> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <meta http-equiv="Content-Script-Type" content="text/javascript"> </head> <body> <script type="text/javascript"> now = new Date(); if (now.getDate() == 1) document.write('1st day\'s joke.'); if (now.getDate() == 2) document.write('2nd day\'s joke'); if (now.getDate() == 3) document.write('3rd day\'s joke'); if (now.getDate() == 4) document.write('4th day\'s joke'); //............................... //............................... if (now.getDate() == 29) document.write('29th day\'s joke'); if (now.getDate() == 30) document.write('30th day\'s joke'); if (now.getDate() == 31) document.write('31st day\'s joke'); </script> </body> </html>
お礼
回答、ありがとうございました。しかしながら、これでは問題は解決しません。これは、日付によって、特定のメッセージを表示するジャバスクリプトですが、 http://www.zdaily.com/content2.shtml にあるように、たとえば、 http://www.zdaily.com/content/love1j.js に相手がリンクすると、メッセージが表示されるようには、できません。 やっぱりCGIなんかを使うのでしょうか?
- yambejp
- ベストアンサー率51% (3827/7415)
せめてどこのサイトのサービスかくらいは 書かないとなんともいえませんね。 大元のサイトで、プログラムで日々更新を かけているような気もします。
お礼
回答、ありがとうございます。 その通りですね。英語のサイトなので、日本語で説明したほうがいいかと思いました。以下のサイトです。 http://www.zdaily.com/content2.shtml よろしくお願いします。
- yambejp
- ベストアンサー率51% (3827/7415)
joke.jsを直接読みこんでソースを見ればよいのでは? 予めデータを大量に用意して、日付けをベースに 戻り値を変えるだけで実現することは可能だと 思います。
お礼
回答、ありがとうございます。joke.js を開くと日付ごとに表示するプログラムがあって、それぞれのジョークが書いてあると思ったのですが、開いてみるとたとえば、 document.write("<body link=\"#003399\"> ここにジョーク。") という感じでした。どうなっているのかわかりません。
お礼
回答、ありがとうございました。