boardreplyconfirm.pl
#!/usr/local/bin/perl
# ปรับปรุง 28 กรกฎาคม 2545
# Version สำหรับ lovelampang.com และเปิดให้คนลำปางนำไปใช้ได้
############################################################
# เพื่อนำ 10 กะทู้ล่าสุดไปแสดง
# <iframe src=http://www.thaiall.com/lovelampang/board/board10.pl height="205" width="500" marginwidth="0" marginheight="0" vspace="0" hspace="0" frameborder="0"></iframe>
# เพิ่มข่าว หรือแสดงความเห็น
# <a href=http://www.lovelampang.com/board>http://www.lovelampang.com/board</a>
############################################################
require 'parse.pl';
&parse_form;
print "Content-type:text/html\n\n";
&headers;
&checklength;
print "<font size=6 color=red><center>";
if (!$v{'idstart'}) { &breakerror('ข้อมูลผิดพลาด โปรดกลับไปตรวจสอบ'); }
if ($v{'email'} =~ /.*\@.*\..*/) {
if (!$v{'subj'}) { &breakerror('ไม่ได้กรอกหัวเรื่อง'); }
} else {
&breakerror('ไม่ได้กรอก E-Mail หรือผิดพลาด');
}
# ป้องกันส่งช้ากว่า 50 วินาที
$tstop = $^T;
$gap = $tstop - $v{'tstart'};
if ($gap > 50) { &breakerror('เสียใจด้วย Process นี้ : timeout<br>ให้กดปุ่ม Back แล้วกลับไปกดปุ่มส่งใหม่ครับ'); }
# ป้องกันส่งเร็วกว่า 60 วินาที
$filename="lasttime.dat";
open(myfile,"$filename");
@rm = <myfile>;
close(myfile);
$gap = $tstop - $rm[0];
if ($gap < 60) { &breakerror('เสียใจด้วย Process นี้ : ส่งเข้ามาเร็วเกินไป<br>ท่านอาจกดปุ่ม confirm ซ้ำ<br>หรือมีคนส่งกะทู้ เข้ากระดานข่าว พร้อมท่าน<br>ให้กดปุ่ม Back แล้วกลับไปกดปุ่มส่งใหม่ครับ'); }
$en = join '', substr($v{'tstart'}, 8, 1),"บ";
$activecode = substr(crypt($v{'tstart'},$en),3,8);
if ($activecode ne $v{'activecode'}) { &breakerror('Code error'); }
# เก็บเวลาล่าสุด
open(myfile,">lasttime.dat");
print myfile $tstop;
close(myfile);
open(myfile,">$v{'r'}/$v{'filename'}");
print myfile "$v{'title'}\n";
$v{'message'} =~ tr/+/ /;
$v{'message'} =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$v{'message'} =~ s/~!/~!/g;
print myfile "$v{'message'}";
close(myfile);
print "$title<br>กะทู้ถูกส่งให้ท่านทาง e-mail และจัดเก็บเข้าแฟ้ม .. เรียบร้อย";
&footer;
# mail process
$filename = join '',substr($v{'idstart'},0,10),"999.txt";
open(myfile,"$v{'r'}/$v{'filename'}");
@ar = <myfile>;
close(myfile);
@ars = split(/:/,$ar[0]);
$mailprog = '/var/qmail/bin/qmail-inject';
open (MAIL, "|$mailprog") || die "Can't open $mailprog!\n";
print MAIL "To: $v{'email'}";
if ($ars[4] eq "on") { print ",$ars[2]"; }
print MAIL "\nFrom: webmaster\@thaiall.com \n";
print MAIL "Subject: Reply your content from YONOK board \n\n";
print MAIL "Don't reply \n";
print MAIL "Someone reply your content $v{'idstart'} \n";
print MAIL "Automatically from http://www.lovelampang.com/board\n";
print MAIL "================================= \n";
print MAIL "$v{'title'}\n";
print MAIL "$v{'message'}\n";
close (MAIL);
|