Mercurial > hgrepos > hgweb.cgi > skipweb
view nakamachi/mailtest.rb @ 462:aa75146ef679
cgimailtest
author | FUJIKAWA Kosuke <c111126@g.koeki-u.ac.jp> |
---|---|
date | Thu, 06 Feb 2014 20:57:32 +0900 |
parents | f338f975bce5 |
children | 87f862c27f84 |
line wrap: on
line source
#!/usr/bin/env ruby # coding: euc-jp require 'nkf' require 'cgi' require 'kconv' require 'net/smtp' cgi = CGI.new(:accept_charset=>"EUC-JP") def sendmail(subject, body, sender, recipient) mail = '' # メールヘッダを作る mail << 'To: ' + recipient + "\n" mail << 'From: ' + sender + "\n" mail << 'Subject: ' + "skipメール" + "\n" mail << 'Date: ' + Time.now.strftime('%a, %d %b %Y %H:%M:%S %z') + "\n" mail << "\n" # メールの本文 mail << body # 送信! Net::SMTP.start('localhost',25){|smtp| smtp.send_mail(mail, sender, recipient) } end store = cgi["store"].to_i num = cgi["num"] data = Hash.new data.default = 0 ban = Array.new n = 0 name= ["","八月","食い道楽","翠宛","ルポットフー","RAVI","綾","井筒","MAR"] open("hoge.dat","r") do |hoge| while line = hoge.gets line = line.toeuc if /(\d+)\s+(\d+)\s+(\d+)\s+(\S+)/ =~ line ban[n] = $1.to_i data[$1.to_i] = $2.to_i,$3.to_i,$4 n += 1 end end end s = 0 while true if data[ban[s]][1] == 0 break end s += 1 end if num == "" || store < 1 || store > 8 #入力不備 text = "<html>\n <head>\n <title>Not find</title>\n </head>\n <body>\n <h1>入力されていない部分があるか、間違っている場合があります。</h1>\n <h1>正しく入力してやり直してください。</h1>\n <p>個人コードは入っていますか?</p> <p>店舗コードは1から8の間で選んでいますか?</p> <p><a href=\"hoge.html\">もどる</a></p>\n </body>\n </html>\n" elsif s >= 50 #もう50枚クーポンでました text = "<html>\n <head>\n <title>Sorry</title>\n </head>\n <body>\n <h1>申し訳有りません。</h1>\n <p>もうクーポン50枚全て出てしまいました。<p>\n <p>またの機会に。<p>\n <p><a href=\"hoge.html\">もどる</a></p>\n </body>\n </html>\n" else #使用済みにして処理します data[ban[s]][1] = store data[ban[s]][2] = num output = '' #output << "" + "\n" #output << "#{num}さんが#{name[store]}で#{s+1}番のクーポンを取得しました".gsub(/\n/, "\n ") + "\n" #NKF.nkf('-j -m0', output) #sendmail('skip mail', output, # 'skip@koeki-u.ac.jp', 'minami_hyou1229@docomo.ne.jp'){|body| # NKF.nkf('-e -m0', body)} text = "<html>\n <head>\n <title>Conglatulation</title>\n </head>\n <body>\n <h1>以下のQRコードを読み取るとクーポンが出てきます。</h1>\n <p><img src=\"http://skip.koeki-prj.org/coupon/image/#{data[ban[s]][0]}.png\" alt=\"クーポン表示QRコード\"></p>\n <p>個人コードとQRコードを読んで出てきたクーポンの番号を控えるようにしてください</p>\n <p>消してしまった際の再表示や実際に受け取る際に用います。</p> <p><a href=\"hoge.html\">もどる</a></p>\n </body>\n </html>\n" open("hoge.dat","w") do |write| for x in ban do write.printf("%s\t%s\t%d\t%s\n",x,data[x][0],data[x][1],data[x][2]) end end end cgi.out('type' => 'text/html', 'charset' => 'euc-jp') { text }