Название: Вытаскивание данных клиента для своих нужд
Отправлено: goletsa от 06 Декабря 2011, 11:12:59
Возникла задача отправлять на почту результаты выполнения сервисов. Соотвесвенно весь код засунут в sub endjobnow в job.pl Пока получилось чтото типа: sub endjobnow { $p=&check_del_job; $mid=$p->{mid}; $time=$t-$p->{time}; $h=int $F{level}; $h=0 if $h<0; # работники, которым стоит галка `замечание` $h.=(!!$F{"w$_"} && ",$id") foreach (keys %$W);
$reason=$p->{reason}; $h="$reason#$time,$p->{time},$h"; $coment="Админ, выдавший задание: ".&Filtr($p->{admin})."\n"; $coment.="Комментарий при постановке задания: ".&Filtr_mysql($p->{coment})."\n\n" if $p->{coment}; $coment.="Комментарий при принятии работы: \n".&Filtr_mysql($F{coment}) if $F{coment};
use Net::SMTP::TLS; my $mailer = new Net::SMTP::TLS( 'smtp.gmail.com', Hello => 'smtp.gmail.com', Port => 587, User => 'username', Password=> 'password'); $mailer->mail('mail@mail'); $mailer->to('mail@mail');
$mailmessage="Subject: Сервис закрыт\n"; $mailmessage.=$coment; $mailmessage.=$userinfo; $mailer->data; $mailer->datasend($mailmessage); $mailer->dataend; $mailer->quit; # ставим полное условие на случай если после запроса параллельно кто-то дал команду закончить задание $rows=&sql_do($dbh,"UPDATE pays SET category=461,admin_id=$Admin_id,admin_ip=INET_ATON('$ip'),reason='$h',coment='$coment',time=$t WHERE id=$Fidjob AND type=50 AND category=460 LIMIT 1"); $rows<1 && &Error("Задание не отмечено как завершенное. Возможно пока вы вводили данные другой админ завершил выполнение задания, либо удалил его.$go_back",$tend); &OkMess(&div('big','Задание работников отмечено как завершенное'));
Хотелось бы еще както вставить данные польнователя - логин, адрес, фио. Как это проще всего сделать?
Название: Re: Вытаскивание данных клиента для своих нужд
Отправлено: OD_Thanatos от 06 Декабря 2011, 16:18:55
$fio=$p->{fio}; $login=$p->{name};
Адрес вытягивать запросами из dopdata
По идее, нужный запрос должен быть в том же файле, в месте, где выдается отчет о завершении
Название: Re: Вытаскивание данных клиента для своих нужд
Отправлено: goletsa от 13 Декабря 2011, 15:00:56
Там есть кусок кода который это делает но непонятно как он работает: $mid or last; # данные клиента для которого завершено задание ($userinfo,undef,$mId)=&ShowUserInfo($mid); $mId or last; $out.=$userinfo.$br2;
|