Quantcast
Channel: DLE FAQ - максимум информации по DataLife Engine
Viewing all articles
Browse latest Browse all 9590

Как сделать что бы админу через форму обратной связи приходило сообщение с полем от куда (с какой страницы) было отправлено сообщение?

$
0
0
Здравствуйте.
Прошу помощи.
Есть форма обратной связи , к ней нужно добавить поле от куда (с какой страницы) было отправлено сообщение.
Это поле должно находится в шаблоне сообщения которое приходит администратору на мыло.
Желательно сделать данное действие именно с этой формой , уж очень она мне нравится.


Вот JS:


$(document).ready(function(){
    $('.closemod').click(function(){    $('.reveal-modal-bg').click();    });
    $('input[type="text"]').focusout(function(){

        validate('fio');
        validate('tel');
        validate('email');
    });

    $('#btn').click(function(){

        validate('fio');
        validate('tel');
        validate('email');

        if($('input[name="fio"]').hasClass('valid') &&
           $('input[name="tel"]').hasClass('valid') &&
           $('input[name="email"]').hasClass('valid')
           ){

                var fio   = $('input[name="fio"]').val();
                var tel   = $('input[name="tel"]').val();
                var email = $('input[name="email"]').val();
                var messa = $('input[name="messa"]').val();
                $('input[name="messa"]').removeClass('invalid');
                $('input[name="messa"]').addClass('valid');
                $.post("/ajax2/mail.php",
                                  { fio: fio, tel: tel, email: email, messa: messa },
                                    function (data){
                                        if(data == 'true'){
                                            $('.reveal-modal-bg').click();
                                            $('[data-reveal-id=myMod]').click();
                                        }else{
                                            $('.reveal-modal-bg').click();
                                            $('[data-reveal-id=myMod2]').click();

                                        }
                                    },
                                    "text"
                                    );

            }
            return false;
    });

});

function validate(nameField){

   var currElem = 'input[name="'+ nameField +'"]';

    if($(currElem).val() == '' && $(currElem).attr('required') == 'required'){

            if($(currElem).hasClass('valid')){

                $(currElem).removeClass('valid')
            }


            $(currElem).addClass('invalid');

            $(currElem).next('p').text('*Это поле не должно быть пустым');


        }else{

            if($(currElem).val() != ''){

                var val = $(currElem).val();

                if(nameField === 'fio'){
                   regexp = /^[А-Яа-яЁё\ ]+$/i;
                }
                if(nameField === 'tel'){
                   regexp = /^[\d]+[\d\(\)\ -]+[\d]+$/;
                }
                if(nameField === 'email'){
                   regexp = /^[\w]{1}[\w-\.]*@[\w-]+\.[a-z]{2,4}$/i;
                }

                if(regexp.test(val)){

                    if($(currElem).hasClass('invalid')){

                        $(currElem).removeClass('invalid');
                        $(currElem).next('p').text('');
                    }

                    $(currElem).addClass('valid');

                }else{

                    if($(currElem).hasClass('valid')){

                        $(currElem).removeClass('valid');
                    }

                    $(currElem).addClass('invalid');

                    if(nameField === 'fio'){
                        var text  = '*Допускаются только русские буквы';
                    }
                    if(nameField === 'tel'){
                        var text  = '*Неверный формат номера телефона';
                    }
                    if(nameField === 'email'){
                        var text  = '*Неверный формат электронной почты';
                    }

                    $(currElem).next('p').text(text);
                }
         }
    }


}


Вот PHP:


<?php
$fio   = $_POST['fio'];
$email = $_POST['email'];
$tel   = $_POST['tel'];
$messa   = $_POST['messa'];
$mail    = "мое мыло";
$subject = "Тема сообщения";
$headers = "";
$text =  "От кого: $fio\n

Email: $email\n

Телефон: $tel\n

Сообщение: $messa";
$hostmail = explode('@', $mail);
if($hostmail[1] != 'gmail.com'){
    $text      = iconv('utf-8', 'windows-1251', $text);
    $subject   = iconv('utf-8', 'windows-1251', $subject);
    $headers   = iconv('utf-8', 'windows-1251', $headers);
}
if (mail($mail, $subject, $text, $headers)) {} else {echo 'false';exit();}
$to = $email;
$subject = "Тема сообщения которое приходит отправителю.";
$msg = "сообщение которое приходит отправителю.";
$un        = strtoupper(uniqid(time()));$charset='windows-1251';
$head  .= "Mime-Version: 1.0\r\n";$head  .= "Content-Type:multipart/mixed;";
$head  .= "boundary=\"----------".$un."\"\n\n";
$body   = "------------".$un."\nContent-Type:text/html; charset=$charset\r\n";
$body   .= "Content-Transfer-Encoding: 8bit\n\n".$msg."\n\n";
if (file_exists($adrfile)) {
$body   .= "------------".$un."\n";
$body   .= "Content-Type: ".pathinfo($adrfile, PATHINFO_EXTENSION).";";
$body   .= "name=\"".$namefile."\"\n";
$body   .= "Content-Transfer-Encoding:base64\n";
$body   .= "Content-Disposition:attachment;";
$body   .= "filename=\"".$namefile."\"\n\n";
$body   .= chunk_split(base64_encode(file_get_contents($adrfile)))."\n";}
mail( $to, $subject, $body, $head );

echo 'true';exit();
?>


Помогите с поправкой кода для реализации моей задумки.
Заранее благодарю.

Viewing all articles
Browse latest Browse all 9590

Trending Articles