#!/usr/local/bin/ruby # FILE: chain1.cgi # => called by chain.html require 'sdbm' require 'cgi' $SAFE = 2 cgi = CGI.new session1 = Hash.new print "Content-type: text/html\r\n\r\n" print "\r\n" email = cgi.params["email"].to_s if (email =~ /^[a-z0-9\@a-z\.a-z]+$/i) email.untaint session1["email"] = email else print "\
Only your transy email account for example yourname00@transy.edu" exit end name = cgi.params["name"].to_s if (name =~ /^[a-z\s]+$/i) name.untaint session1["name"] = name else print "\
Only alphabetic letters and spaces are permitted, please.
" exit end partner = cgi.params["partner"].to_s if (partner =~ /^[a-z\s]+$/i) partner.untaint session1["partner"] = partner else print "\
Just your partner's name
" exit end dbname = email+".dbm" #Testing: print "Name: #{name}
" print "email: #{email}
" print "Partner: #{partner}" print "#{name}
" print "Hello, #{name}
" print "From hash Hello, #{session1["name"]}
" print "From hash Partner: #{session1["partner"]}
" print "#{dbname}
" #Store the hash as database SDBM.open(dbname) do |dbm| session1.each { |key, value| dbm[key] = value.to_s} end print "


" print ""