From: "CXP04754@..." Date: 2007-02-08T23:23:30+09:00 Subject: [ruby-list:43167] CGIで受け取ったデータをファイルに書き込む際のエラー 始めて投稿します、ぱんと申します。 超初心者で他のプログラム言語経験もありません。 るびまの「Ruby ビギナーのための CGI 入門」や 「逆引きRuby」の「日付と時刻」項を参考に、 下記のようなソースを書きました。 ◆ソースここから◆ #!/usr/local/bin/ruby require "cgi" require "kconv" $KCODE = "euc" cgi = CGI.new messages = cgi["messages"] names = cgi["names"] sid = cgi["sid"] bbsdata = "bbsdata/" + sid + ".txt" if messages =~ /,/ messages = "\"" + messages + "\"" else messages end if names =~ /,/ names = "\"" + names + "\"" else names end day = Time.now wdays = ["日", "月", "火", "水", "木", "金", "土"] times = day.year.to_s + "/" + day.month.to_s + "/" + day.day.to_s + "(" + wdays[day.wday] + ")" + " " + day.hour.to_s + ":" + day.min.to_s f = open(bbsdata, "a+") f.flock(File::LOCK_EX) f.write(Kconv.toeuc(messages + "," + names + "," + times) + "\n") f.close ◆ソースここまで◆ ※sid毎に個別でファイルを作り、書き込みを保存したいと考えています。 ファイルはうまく作成されるのですが、必ずInternal Server Errorが発生します。 また、曜日の部分が; 2007/2/8(フレ) 23:11 のように文字化けします(本来は「フレ」が「木」となって欲しいです) ご助力いただけましたら幸福です。 ※質問の仕方やマナーが間違っていたらすみません。