if (isset($_POST['stage']) && ('process' == $_POST['stage'])) {
$errors=valid_form();
// print count($errors);
if (count($errors)==0){
process_form();
// print ($message);
mail_form();
}else {
print_error_form();
}
}else{?>
}
function valid_form(){
$required = explode("|", $_POST['required']);
foreach ($required as $kreq => $vreq){
if (empty($_POST[$vreq])){
$errors[$vreq] = "Поле не заполнено";
// print ('Поле ' . '' .$vreq . ''.' не заполнено ');
}
// print($kreq .' | ' .$vreq .' ');
}
if (! valid_email($_POST['email'])) {
$errors['email'] = "Email адрес введен неверно ";
// print $errors['email'];
}
if (! valid_phone($_POST['Телефон'])) {
$errors['Телефон'] = "Номер введен неверно ";
}
Return $errors;
}
//*************************************
function valid_email($email) {
Return preg_match ('^[a-z0-9]+([-_\.]?[a-z0-9])+@[a-z0-9]+([-_\.]?[a-z0-9])+\.[a-z]{2,4}^', $email);
}
//***************************************
function valid_phone($Телефон) {
// Return preg_match('^\+?(?:\d|\s|(?:\(\d+\))|-)+$^', $Телефон);
Return preg_match('^[0-9()-]{7,17}$^', $Телефон);
}
function print_error_form(){
global $time_post;
$errors=valid_form();
?>
}
function process_form () {
global $message;
$message_inf='';
$message_chk='';
foreach ($_POST as $key => $value) {
if(getType($value) == 'array') {
foreach($value as $k=>$v){
$message_chk.=''.$key.''.' - ' .$v. ' '."\r\n";
// print(''.$key.'' .' - ' .$v .' ');
}
}else{
if($key=='stage' || $key=='submit_to' || $key=='required' || $key=='Subject' || $key=='Submit' || $key=='time_post') continue;
$message_inf.= ''.$key.''.' - ' .$value. ' '."\r\n";
// print(''.$key.'' .' - ' .$value .' ');
}
}
$message.=$message_inf.$message_chk;
return $message;
}
function mail_form() {
$to = str_replace("|", ",",$_POST['submit_to']);
$subject = $_POST['Subject'];
$subject = '=?koi8-r?B?'.base64_encode(convert_cyr_string($subject, "w","k")).'?=';
$from = $_POST['email'];
global $message;
$headers = 'From: '.$from. "\r\n" .
'Reply-To: '.$from. "\r\n" .
'Content-type: text/html; charset=windows-1251' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
if($_SESSION['time_post']==$_POST['time_post']){
print 'Это письмо уже отправлено. Хотите отправить ещё?';
//header("Location: http://php/zakaz_adv.php");
//$_SESSION['mail']=FALSE;
//exit;
}
if($_SESSION['time_post']!==$_POST['time_post']){
if (mail($to, $subject, $message, $headers)==TRUE){
$_SESSION['time_post']=$_POST['time_post'];
print 'Вы отправили следующее сообщение. Наши менеджеры свяжутся с Вами. ';
print ($message);
}else{print 'Ошибка отправления формы!';}
}
}
?>
|