#!/usr/bin/env ruby # coding: utf-8 myname="word-pstore-cgi.rb" require "cgi" c = CGI.new(:accept_charset => "UTF-8") require "pstore" x = PStore.new("data/word.db") print "Content-type: text/html; charset=UTF-8\n\n" print " Word " # 値入力フォームもこのCGIで出力する。 # formのactionをこのCGIプログラムに指定している。 # (mynameはこのスクリプト名) printf("
\n", myname) print '

おなまえ:
ひとこと:

' x.transaction do x["word"] ||= Hash.new word = x["word"] if c["name"] > "" && c["word"] > "" name = c["name"] word[name] = c["word"] end print "
\n"
  for p, w in word
    # フォーム入力値を出力するときは必ず CGI.escapeHTML() する
    person = CGI.escapeHTML(p)
    wrd = CGI.escapeHTML(w)
    printf("%sさんのひとこと「%s」\n", person, wrd)
  end
  print "
" end puts ""