rubyでフォームデータをファイルに書き込む

このエントリーを含むはてなブックマーク はてなブックマークを見るこの記事をクリップ!Yahoo!ブックマークに登録このエントリーをdel.icio.usに追加する

[ 1分で読めて簡単導入できます]

rubyでフォームデータをファイルに書き込む方法は、HTMLでのフォームデータで指定したname属性をrubyで展開/代入して、それを書き込み属性を与えたファイルに書き込む。
では以下の通りHTMLを書いたとすると
form_post_write.html
<html>
<head></head>
<body>
<form action="form_write.cgi" method="POST">
お名前:<input type="text" name="namae">
<input type="submit" value="送信">
</form>
</body>
</html>

rubyでは、form_write.cgi
#!/usr/bin/ruby
print "Content-type: text/html¥n¥n"
require "cgi-lib"
input = CGI.new

FILENAME = "data_test.log"
namae = input["namae"]

f = open(FILENAME, "w")
f.print namae
f.close
print "<html><body>Done it!!</body></html>"

4行目まではこれまで通り
FILENAME = "data_test.log"は書き込むログのファイル名を指定。
namae = input["namae"]はhtmlから送信されたテキストをnamaeに代入している。
open(FILENAME, "w")では、data_test.logのファイルを書き込み属性wで開いている。
さらに、開いたファイルにnamaeを書き込みcloseでファイルを閉じている。
で全ての動作が終了したら、書き込みましたよと表示されます。
書き込み結果はdata_test.log
個人的に分かりづらいのが“f”の意味。
これは恐らく、fileでもhirakegomaでもなんでも良い(はず)。
つまるところ、namaeと同じ代入を意味している(はず)。

記事作成:2007年06月25日

JavaScriptライブラリ
JavaScriptライブラリまとめ
JavaScriptライブラリのメインストリーム「jQuery」プラグインまとめ
jQueryプラグインまとめ
通が好むJavaScriptライブラリ「mootools」プラグインまとめ
mootoolsプラグインまとめ