#!/usr/bin/perl # require '/usr/local/www/cgi-bin/jcode.pl'; print "Content-type: text/html\n\n"; print "< HTML>< HEAD>< TITLE>受信状況レポート</TITLE>< /HEAD>\n"; print "< BODY BGCOLOR=\"LAVENDER\">\n"; $csv = "/usr/local/www/data/sample.csv"; $item[0] = 'Q0101RN'; $item[1] = 'Q0201CN'; $item[2] = 'Q0202CN'; $item[3] = 'Q0203CN'; $item[4] = 'Q0204CN'; $item[5] = 'Q0205CN'; $item[6] = 'Q0301CN'; $item[7] = 'Q0302CN'; $item[8] = 'Q0303CN'; $item[9] = 'Q0304CN'; $item[10] = 'Q0305CN'; $item[11] = 'Q0306CN'; $item[12] = 'Q0307TA'; $item[13] = 'Q0401TN'; $item[14] = 'Q0402TN'; $item[15] = 'Q0403TN'; $item[16] = 'Q0501TN'; $item[17] = 'Q0502TA'; $item[18] = 'Q0503TA'; $item[19] = 'Q0504TA'; $item[20] = 'Q0505TA'; $item[21] = 'Q0601XA'; read(STDIN, $_, $ENV{'CONTENT_LENGTH'}); split (/&/); foreach (@_) { ($name,$value) = split (/=/); $value =~ s/\+/ /g; $value =~ s/%(..)/pack("C", hex($1))/eg; &jcode'convert(*value, 'sjis'); $form{$name} = $value; } $line = ""; foreach $name(@item) { $value = $form{$name}; if ($name =~ /A/) { $value =~ s/\r\n/\n/g; $value =~ s/\r/\n/g; $value =~ s/\"/\"\"/g; $value = "\"" . $value . "\""; }else{ $value =~ s/,//g; } $line .= $value . ","; } chop $line; $line .= "\r\n"; $id = ""; foreach( @item ) { chop($_); chop($_); $id .= "\"" . $_ . "\","; } chop($id); $id .= "\r\n"; if(! -e $csv) { open(FILE, "> $csv"); print FILE $id; close(FILE); } if(! open(CSV, ">> $csv")){ print "< h2>サーバーが混んでいます。\nしばらく待ってから再度送信してください。</h2>\n"; print "</BODY></HTML>\n"; exit; } flock(CSV,2); print CSV $line; flock(CSV,8); close(CSV); print "< h2>送信データを受け取りました。</h2> \n"; print "</BODY></HTML>\n";