All pastes #927345 Raw Edit

Anonymous

public text v1 · immutable
·published 2008-03-04 06:08 UTC
rendered paste body
#!/usr/bin/perl -w
use strict;
use CGI qw/:standard *table start_ul/;
use Time::localtime;
use Net::SMTP;
use DBI;

my @months = qw(Января Февраля Марта Апреля Мая Июня Июля Августа Сентября Октября Ноября Декабря);

my @vals=qw(
meh
hmm
zakzak

);


print header(-charset=>'koi8-r'),
        start_html(-title=>'Создание профиля пользователя',
			-style=>{'src'=>'/kping_tst_zone/reg_frm.css'}
		);
if (param())
{
	if(!param('lastname') or !param('firstname')
		or !param('patronymic') or !param('office')
		or !param('division') or !param('fone')
		or !param('leader')) 
	{ 
		print "Обязательные поля должны быть заполнены", br,
     		a({href=>"javascript:history.back()"},"<< Назад"), br,
	
	}
	else
	{
	    my @monthseng = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec);
	    my $day=localtime->mday;
	    my $year=1900+localtime->year;
	    my $month=$months[localtime->mon];
	    my $firstname=param('firstname');
	    my $output= h1({-align=>'center'}, 'ОАО "Амурметалл"') .
			hr .
			h2({-align=>'center'} , 'Заявка<br />на доступ пользователя к ресурсам<br />корпоративной локальной сети').
			p({-align=>'right'} , "\"$day\" $month $year<br />").
			'Фамилия: '. em(param('lastname')). br .
   			'Имя: ' . em(param('firstname')) . br .
			'Отчество: ' . em(param('patronymic')). br .
			'Должность: ' . em(param('office')) . br .
			'Подразделение: ' . em(param('division')) . br .
			'Телефон: ' . em(param('fone')) . br . 
			'Интернет, лимит: ' . em(param('inetlimit')) . br .
			'Интернет, назначение: ' . em(param('inetapp')) . br .
			'Программы: ' . br;
			my @soft_picked = param('software');
			for (my $i=0; $i<=$#soft_picked; $i++) {
				$output .= $soft_picked[$i] . br;
			}
			$output.='Руководитель подразделения (ФИО, подпись): ' . br . em(param('leader')) . '&nbsp;'x20 . '______________________________' . br .
			'Пользователь (подпись): ______________________________' . br .
			h3({-align=>'center'} , 'Служебные заметки') .
			'Сотрудник: ' . em(param('employee')) . br . br;
	    print $output;

	    foreach my $var (sort(keys(%ENV))) {
		    my $val = $ENV{$var};
		    $val =~ s|\n|\\n|g;
		    $val =~ s|"|\\"|g;
		    $output .= "${var}=\"${val}\"<br>";
	    }
	    #print $ENV{'REMOTE_ADDR'};
	
	my $dbh = DBI->connect("DBI:mysql:database=pf;host=localhost", "root", "mysql-password");
	if ($dbh eq "") { print "DB connection error<br>"; }
	else {
		$dbh->do("INSERT INTO pro (firstname) VALUES('$firstname')");
	}
	my $sth = $dbh->prepare("SELECT * FROM pro");
	$sth->execute();
	my @datadb=$sth->fetchrow_array;
	print $datadb[2];
	 exit;
	    my $mail_from = "kingping\@amurmetal.ru";
	    my $mail_to = "kingping\@amurmetal.ru";
	    my $smtp = Net::SMTP->new('localhost');
	    $smtp->mail($mail_from);
	    $smtp->to($mail_to);
	    $smtp->data();
	    $smtp->datasend("Content-Type: text/html; charset=koi8-r;\n");
	    $smtp->datasend("Subject: New user profile creation\n");
	    $smtp->datasend("From: $mail_from\n");
	    $smtp->datasend("To: $mail_to\n");
	    $smtp->datasend("\n");
	    $smtp->datasend("$output");	   
	    $smtp->dataend();
	    $smtp->quit;

	}
}
else
{
&print_frm;
}

sub print_frm() {
# kingping -- There must be no spaces in the beginning of the next string
# and the others which contain END operator,
# otherwise interpreter won't process the script (damned Perl!)
my $heredoc = <<END;	
	<h1 align="center" >ОАО "Амурметалл"</h1>
	<hr />
	<p class="ttl">Заявка на доступ пользователя к ресурсам корпоративной локальной сети</p>
	<p class="txt_small">Символом <span class="require">*</span> отмечены обязательные поля.</p>
END
	print $heredoc, start_form;
$heredoc = <<END;
	<table cellpadding="5" cellspacing="0" border="0" width="100%">
	  <tr valign="top">
	    <td width="151" align="left" class="txt">Фамилия:&nbsp;<span class="require">*</span></td>
	    <td width="243"><input name="lastname" type="text" id="lastname" style="width: 100%;" tabindex="1" value="" size="20" /></td>
	    <td width="456" class="comm">&nbsp;</td>
	  </tr>
	  <tr valign="top">
	    <td class="txt" align="left">Имя:&nbsp;<span class="require">*</span></td>
	    <td><input name="firstname" type="text" id="firstname" style="width: 100%;" tabindex="1" value="" size="20" /></td>
	    <td class="comm">&nbsp;</td>
	  </tr>
	  <tr valign="top">
	    <td class="txt" align="left">Отчество:&nbsp;<span class="require">*</span></td>
	    <td><input name="patronymic" type="text" id="patronymic" style="width: 100%;" tabindex="1" value="" size="20" /></td>
	    <td class="comm">&nbsp;</td>
	  </tr>
	  <tr valign="top">
	    <td class="txt" align="left">Должность:&nbsp;<span class="require">*</span></td>
	    <td><input name="office" type="text" id="office" style="width: 100%;" tabindex="1" value="" size="20" /></td>
	    <td class="comm">&nbsp;</td>
	  </tr>
	  <tr valign="top">
	    <td class="txt" align="left">Подразделение:&nbsp;<span class="require">*</span></td>
	    <td><input name="division" type="text" id="division" style="width: 100%;" tabindex="1" value="" size="20" /></td>
	    <td class="comm">&nbsp;</td>
	  </tr>
	  <tr valign="top">
	    <td class="txt" align="left">Телефон:&nbsp;<span class="require">*</span></td>
	    <td><input name="fone" type="text" id="fone" style="width: 100%;" tabindex="1" value="" size="20" /></td>
	    <td class="comm">&nbsp;</td>
	  </tr>
	  <tr valign="top">
	    <td class="txt" align="left">Руководитель подразделения (ФИО):&nbsp;<span class="require">*</span></td>
	    <td><input name="leader" type="text" id="leader" style="width: 100%;" tabindex="1" value="" size="20" /></td>
	    <td class="comm">&nbsp;</td>
	  </tr>
	  <tr valign="top">
	    <td class="txt" align="left">Интернет, лимит:</td>
	    <td><input name="inetlimit" type="text" id="inetlimit" style="width: 100%;" tabindex="1" value="" size="20" /></td>
	    <td class="comm">Объем Интернет трафика в месяц</td>
	  </tr>
	  <tr valign="top">
	    <td class="txt" align="left">Интернет, назначение:</td>
	    <td><input name="inetapp" type="text" id="inetapp" style="width: 100%;" tabindex="1" value="" size="20" /></td>
	    <td class="comm">Цели использования Интернет трафика</td>
	  </tr>
	  <tr valign="top">
	    <td class="txt" align="left">Сотрудник:</td>
	    <td><input name="employee" type="text" id="employee" style="width: 100%;" tabindex="1" value="" size="20" /></td>
	    <td class="comm">Ф. И. О. лица, заполняющего данную форму</td>
	  </tr>	
END
	print $heredoc,
	'<tr valign="top">',
		'<td class="txt" align="left">Программы:</td>',
		'<td class="txt" align="left">',
				
		checkbox_group(-name=>'software',
                	       -values=>\@vals,
				-linebreak=>'true'), p,
		submit('Печать'),
		"</td>",
		'<td class="comm">Программы, необходимые для работы</td>',
	"</table>",end_form;
}

print end_html;