[#31191] クラスメソッドについて — cyross@...

みなさん、初めまして。

16 messages 2001/09/02
[#31192] Re: クラスメソッドについて — matz@... (Yukihiro Matsumoto) 2001/09/02

まつもと ゆきひろです

[#31196] ありがとうございます( Re: Re: クラスメソッドについて) — cyross@... 2001/09/03

サイロスです。

[#31234] oracle: sub query — Yasushi Shoji <yashi@...>

やすしです。

16 messages 2001/09/04
[#31241] Re: oracle: sub query — Yasushi Shoji <yashi@...> 2001/09/05

At Tue, 4 Sep 2001 19:59:11 +0900,

[#31238] 半角から全角へ変換 — 吉川 正晃 <yosikawa@...>

吉川と申します。こちらには初めての投稿になります。

33 messages 2001/09/05
[#31240] Re: 半角から全角へ変換 — WATANABE Hirofumi <eban@...> 2001/09/05

わたなべです。

[#31244] jcode + String#tr は? — Take_tk <ggb03124@...> 2001/09/05

たけ(tk)です。

[#31245] Re: jcode + String#tr は? — WATANABE Hirofumi <eban@...> 2001/09/05

わたなべです。

[#31280] 掲示板の再読み込み時の問題 — みかみまさと <kofu@...>

こんにちは。いつもお世話になっています、みかみと申します。

13 messages 2001/09/06

[#31283] ruby 1.6.5 preview1 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

17 messages 2001/09/06

[#31377] 添付ライブラリのリファレンス (HTML) — "Sadayuki Sakamoto" <flea@...8.dion.ne.jp>

酒本と申します。

20 messages 2001/09/11

[#31414] ruby 1.6.5 preview — m_seki@...

18 messages 2001/09/14

[#31419] Hash#+ ハッシュの足し算はいかが? — Take_tk <ggb03124@...>

class Hash

12 messages 2001/09/14

[#31508] 全角を半角に変換 — yoshikazu tsubaki <y-tsubaki@...>

#2回目の人ごめんなさい(間違えて2つのMLに送信してしまいました)

14 messages 2001/09/17

[#31626] my LC2001 summary — Minero Aoki <aamine@...>

あおき@結局三日連続で飲んでしまった です。

117 messages 2001/09/28
[#31642] Re: my LC2001 summary — Masaki Suketa <masaki.suketa@...> 2001/09/29

助田です。

[#31663] Re: my LC2001 summary — nobu.nakada@... 2001/09/30

なかだです。

[#31665] Re: my LC2001 summary — TAKAHASHI Masayoshi <maki@...> 2001/09/30

高橋征義です。

[#31672] Re: my LC2001 summary — matz@... (Yukihiro Matsumoto) 2001/10/01

まつもと ゆきひろです

[#31697] RUG (Re: my LC2001 summary) — TAKAHASHI Masayoshi <maki@...> 2001/10/02

高橋征義です。

[#31699] URUG (Re: RUG) — Kazuhiro Yoshida <moriq.kazuhiro@...> 2001/10/02

もりきゅうです。

[#31688] bcc (Re: my LC2001 summary) — Kazuhiro Yoshida <moriq.kazuhiro@...> 2001/10/01

もりきゅうです。

[#31692] Re: bcc (Re: my LC2001 summary) — "U.Nakamura" <usa@...> 2001/10/01

こんにちは、なかむら(う)です。

[#31779] Re: bcc (Re: my LC2001 summary) — Kazuhiro Yoshida <moriq.kazuhiro@...> 2001/10/05

もりきゅうです。

[#31782] Re: bcc (Re: my LC2001 summary) — "T.Kitahara" <tko-k@...> 2001/10/05

はじめまして、Kita といいます。

[#31785] Re: bcc (Re: my LC2001 summary) — Kazuhiro Yoshida <moriq.kazuhiro@...> 2001/10/06

もりきゅうです。

[#31805] Re: bcc (Re: my LC2001 summary) — nobu.nakada@... 2001/10/09

なかだです。

[#31806] Re: bcc (Re: my LC2001 summary) — "U.Nakamura" <usa@...> 2001/10/09

こんにちは、なかむら(う)です。

[#31808] Re: bcc (Re: my LC2001 summary) — nobu.nakada@... 2001/10/09

なかだです。

[#31809] Re: bcc (Re: my LC2001 summary) — "U.Nakamura" <usa@...> 2001/10/09

こんにちは、なかむら(う)です。

[#31814] Re: bcc (Re: my LC2001 summary) — Kazuhiro Yoshida <moriq.kazuhiro@...> 2001/10/09

もりきゅうです。

[ruby-list:31280] 掲示板の再読み込み時の問題

From: みかみまさと <kofu@...>
Date: 2001-09-06 06:01:22 UTC
List: ruby-list #31280
こんにちは。いつもお世話になっています、みかみと申します。

 オブジェクト指向プログラミングに少し慣れましたが、未だ初心者
です。今は、Ruby で掲示板を作っているのですが、再読み込み時に
問題が生じて困っています。どうぞよろしくお願いします。

 問題が起きるところを再現します。

  (1) テキスト入力フィールドに文を書いて、「submit」を押す
  (2) 掲示板に書き込まれて、テキスト入力フィールドは空欄になる
  (3) ブラウザの「再読み込み (更新, Reload)」を押す

  (4) w3m0.2.1 では、(1) で書いた内容が書き込まれてしまう
      IE5.5, NN4.76 では、注意が表示されて、実行すると (1)
      で書いた内容が、掲示板に書き込まれてしまう

      Mozilla0.8 では、何も書き込まれない。これは正常。


 ブラウザによって、結果が違うものの、友人の作った Perl の
掲示板では、どのようにしても、ただ再表示されるだけで、書き
込まれたり、注意が表示されたりはしません。

 きっと僕の Ruby のスクリプトで、テキストを取得するときに
何か処理が足りないのだろうと思っているのですが、それが
分かりません。

 書き込み後の再読み込みで、注意が表示されたり、直前の書き込みが
書き込まれたりしないためには、どのようにしたら良いか、ご助言
頂ければ幸いです。よろしくお願いします。

 問題のスクリプトを短くしたものを記載します。属性 0777 の
ディレクトリに、このスクリプトを属性 0755、名前 index.cgi
にして置き、ruby へパスを通して頂ければ動きます。

 長いメイルになってしまい恐縮ですが、よろしくお願い致します。

#!/usr/bin/ruby

require "cgi"
class Item
  def initialize(s_name = "")
    @s_name = s_name
  end

  def get(in_cgi)
    @cgi = in_cgi
    @s_name = @cgi['name'][0]
  end

  def put_file(s_logfile)
    s_tmpfile = "log_tmp.txt"

    begin
      File.rename (s_logfile, s_tmpfile)
      fl_tmp = open (s_tmpfile, "r")
    rescue Errno::ENOENT
      fl_tmp = nil
    end

    fl_log = open (s_logfile, "w")
    fl_log.print @s_name, "\n"
    fl_tmp.each { |line| fl_log.print line }.close unless fl_tmp == nil
    fl_log.close
    File.chmod (0666, s_logfile)
  end

  def write
    print "<HR>", @s_name.chop, "\n"
  end
end

class BBS
  def initialize
    @cgi = CGI.new

    if @cgi['state'][0] == "written"
      my_item = Item.new
      my_item.get(@cgi)
      my_item.put_file ("log.txt")
    end
  end

  def write_html
    print "Content-type: text/html\n\n"
    print <<-EOL
    <HTML><BODY><H1>BBS</H1><HR>
    <FORM method="POST" action="./index.cgi">
      <INPUT type="hidden" name="state" value="written">
      Content<INPUT type="text" name="name">
      <INPUT type="submit" value="submit">
    </FORM>
    EOL

    File.foreach("log.txt") do |log_line|
      Item.new(log_line).write
    end

    print "</BODY></HTML>"
  end
end

bbs = BBS.new
bbs.write_html
    ______________________________________________________
   /                                               ______/
  /    三上   雅人 - 英語表記も姓名順です        _____/
 /   Mikami Masato - ↓移転 8/15               ____/
/       興  風  館 - http://kofukan.nmn.jp/  ___/

In This Thread

Prev Next