Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Изготовление сайтов


Ответ
 
Опции темы Опции просмотра
Старый 06.08.2015, 12:56   #1 (permalink)
Stanislav
Member
 
Регистрация: 25.05.2008
Сообщений: 152
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Не получается установить e-mail для получения писем с формы обратной связи

Вопрос глупейший, но уперся и не могу понять в чем дело...
Вот форма:

PHP код:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title></title>
    <link href="css/style.css" media="screen" rel="stylesheet" type="text/css"/>
    <link href="css/uniform.css" media="screen" rel="stylesheet" type="text/css"/>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
    <script type="text/javascript" src="js/jquery.tools.js"></script>
    <script type="text/javascript" src="js/jquery.uniform.min.js"></script>
    <script type="text/javascript" src="js/main.js"></script>
</head>
<body>

<div class="TTWForm-container">
     
     
     <form action="process_form.php" class="TTWForm" method="post" novalidate="">
          
          
          <div id="field1-container" class="field f_100">
               <label for="field1">
                    Ваше имя
               </label>
               <input type="text" name="field1" id="field1" required="required">
          </div>
          
          
          <div id="field2-container" class="field f_100">
               <label for="field2">
                    E-mail адрес
               </label>
               <input type="email" name="field2" id="field2" required="required">
          </div>
          
          
          <div id="field3-container" class="field f_100">
               <label for="field3">
                    Контактный номер телефона
               </label>
               <input type="text" name="field3" id="field3" required="required">
          </div>
          
          
          <div id="field4-container" class="field f_100 checkbox-group required">
               <label for="field4-1">
                    Записаться на процедуру
               </label>
               
               
               <div class="option clearfix">
                    <input type="checkbox" name="field4[]" id="field4-1" value="Ламинирование ресниц">
                    <span class="option-title">
                         Ламинирование ресниц
                    </span>
                    <br>
               </div>
               
               
               <div class="option clearfix">
                    <input type="checkbox" name="field4[]" id="field4-2" value="Ламинирование бровей">
                    <span class="option-title">
                         Ламинирование бровей
                    </span>
                    <br>
               </div>
               
               
               <div class="option clearfix">
                    <input type="checkbox" name="field4[]" id="field4-3" value="Микропигментирование бровей 6D">
                    <span class="option-title">
                         Микропигментирование бровей 6D
                    </span>
                    <br>
               </div>
               
               
               <div class="option clearfix">
                    <input type="checkbox" name="field4[]" id="field4-4" value="Микропигментирование бровей в технике &quot;теневая&quot;">
                    <span class="option-title">
                         Микропигментирование бровей в технике "теневая"
                    </span>
                    <br>
               </div>
               
               
               <div class="option clearfix">
                    <input type="checkbox" name="field4[]" id="field4-5" value="Микропигментирование бровей в технике &quot;напыление&quot;">
                    <span class="option-title">
                         Микропигментирование бровей в технике "напыление"
                    </span>
                    <br>
               </div>
               
               
               <div class="option clearfix">
                    <input type="checkbox" name="field4[]" id="field4-6" value="Оформление бровей хной">
                    <span class="option-title">
                         Оформление бровей хной
                    </span>
                    <br>
               </div>
               
               
               <div class="option clearfix">
                    <input type="checkbox" name="field4[]" id="field4-7" value="Оформление бровей пигментами YUMI">
                    <span class="option-title">
                         Оформление бровей пигментами YUMI
                    </span>
                    <br>
               </div>
          </div>
          
          
          <div id="field5-container" class="field f_100">
               <label for="field5">
                    Предпочтительная дата посещения
               </label>
               <input class="ttw-date date" id="field5" maxlength="524288" name="field5"
               required="" size="20" tabindex="0" title="">
          </div>
          
          
          <div id="form-submit" class="field f_100 clearfix submit">
               <input type="submit" value="Отправить">
          </div>
     </form>
</div>

</body>
</html>


Вот обработчик:
<?php
/**
 * Created with WebFormGenerator.eu
 * Powered by [URL="http://www.easyclick.ch"]Internetagentur Schweiz: f?r g?nstiges und professionelles Webdesign[/URL]
 */

$form = new ProcessForm();
$form->field_rules = array(
    
'field1'=>'required',
    
'field2'=>'email|required',
    
'field3'=>'required',
    
'field4'=>'required',
    
'field5'=>'required'
);
$form->validate();

class 
ProcessForm
{
    public 
$field_rules;
    public 
$error_messages;
    public 
$fields;
    private 
$error_list;
    private 
$is_xhr;





    function 
__construct()
    {
        
$this->error_messages = array(
            
'required' => 'This field is required',
            
'email' => 'Please enter a valid email address',
            
'number' => 'Please enter a numeric value',
            
'url' => 'Please enter a valid URL',
            
'pattern' => 'Please correct this value',
            
'min' => 'Please enter a value larger than the minimum value',
            
'max' => 'Please enter a value smaller than the maximum value'
        
);

        
$this->field_rules = array();
        
$this->error_list '';
        
$this->fields $_POST;
        
$this->is_xhr $this->xhr();
    }





    function 
validate()
    {
        if (!empty(
$this->fields))
        {
            
//Validate each of the fields
            
foreach ($this->field_rules as $field => $rules)
            {
                
$rules explode('|'$rules);

                foreach (
$rules as $rule)
                {
                    
$result null;

                    if (isset(
$this->fields[$field]))
                    {
                        
$param false;

                        if (
preg_match("/(.*?)\[(.*?)\]/"$rule$match))
                        {
                            
$rule $match[1];
                            
$param $match[2];
                        }

                        
$this->fields[$field] = $this->clean($this->fields[$field]);

                        
//if the field is a checkbox group create string
                        
if (is_array($this->fields[$field]))
                            
$this->fields[$field] = implode(', '$this->fields[$field]);

                        
// Call the function that corresponds to the rule
                        
if (!empty($rule))
                            
$result $this->$rule($this->fields[$field], $param);

                        
// Handle errors
                        
if ($result === false)
                            
$this->set_error($field$rule);
                    }
                }
            }

            if (empty(
$this->error_list))
            {
                if (
$this->is_xhr)
                    echo 
json_encode(array('status' => 'success'));

                
$this->process();
            }
            else
            {
                if (
$this->is_xhr)
                    echo 
json_encode(array('status' => 'invalid''errors' => $this->error_list));
                else echo 
$this->error_list;
            }
        }
    }





    function 
process()
    {
         
/**
         * SUCCESS!!
         * There were no errors in the form. Insert your processing logic here (i.e. send an email, save to a
         * database etc.
         *
         * All of the submitted fields are available in the $this->fields variable.
         *
         * Example code to mail the results of the form:
         *
         * IMPORTANT - PLEASE READ:
         * 1. YOU MUST UNCOMMENT THE CODE FOR IT TO WORK.
         *    - This means removing the '//' in front of each line.
         *    - If you do not know what php comments are see here: [URL="http://php.net/manual/en/language.basic-syntax.comments.php"]PHP: Comments - Manual[/URL]
         *
         * 2. YOU CAN ENTER ANY EMAIL ADDRESS IN THE $from VARIABLE.
         *    - This is the address that will show in the From column in your mail application.
         *    - If your form contains an email field, and you want to use that value as the $from variable, you can set $from = $this->fields['name of your email field'];
         *    - As stated in the description on codecanyon, this code does not mail attachments. Google 'php html email attachments' for information on how to do this
         */



         // $msg = "Form Contents: \n\n";
         // foreach($this->fields as $key => $field)
         //       $msg .= "$key :  $field \n";

         // $to = 'emailaddress@domain.com';
         // $subject = 'zapisatsya-k-masteru';
         // $from = 'emailaddress@domain.com';

         // mail($to, $subject, $msg, "From: $from\r\nReply-To: $from\r\nReturn-Path: $from\r\n");


    
}



    function 
set_error($field$rule)
    {
        if (
$this->is_xhr)
        {
            
$this->error_list[$field] = $this->error_messages[$rule];
        }
        else 
$this->error_list .= "<div class='error'>$field: " $this->error_messages[$rule] . "</div>";
    }





    function 
xhr()
    {
        return (!empty(
$_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') ? true false;
    }





    
/** Validation Functions */
    
function required($str$val false)
    {

        if (!
is_array($str))
        {
            
$str trim($str);
            return (
$str == '') ? false true;
        }
        else
        {
            return (!empty(
$str));
        }
    }





    function 
email($str)
    {
        return (!
preg_match("/^(?!(?:(?:\\x22?\\x5C[\\x00-\\x7E]\\x22?)|(?:\\x22?[^\\x5C\\x22]\\x22?)){255,})(?!(?:(?:\\x22?\\x5C[\\x00-\\x7E]\\x22?)|(?:\\x22?[^\\x5C\\x22]\\x22?)){65,}@)(?:(?:[\\x21\\x23-\\x27\\x2A\\x2B\\x2D\\x2F-\\x39\\x3D\\x3F\\x5E-\\x7E]+)|(?:\\x22(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x21\\x23-\\x5B\\x5D-\\x7F]|(?:\\x5C[\\x00-\\x7F]))*\\x22))(?:\\.(?:(?:[\\x21\\x23-\\x27\\x2A\\x2B\\x2D\\x2F-\\x39\\x3D\\x3F\\x5E-\\x7E]+)|(?:\\x22(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x21\\x23-\\x5B\\x5D-\\x7F]|(?:\\x5C[\\x00-\\x7F]))*\\x22)))*@(?:(?:(?!.*[^.]{64,})(?:(?:(?:xn--)?[a-z0-9]+(?:-[a-z0-9]+)*\\.){1,126}){1,}(?:(?:[a-z][a-z0-9]*)|(?:(?:xn--)[a-z0-9]+))(?:-[a-z0-9]+)*)|(?:\\[(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){7})|(?:(?!(?:.*[a-f0-9][:\\]]){7,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?)))|(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){5}:)|(?:(?!(?:.*[a-f0-9]:){5,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3}:)?)))?(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))(?:\\.(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))){3}))\\]))$/iD"$str)) ? false true;
    }





    function 
number($str)
    {
        return (!
is_numeric($str)) ? false true;
    }





    function 
min($str$val)
    {
        return (
$str >= $val) ? true false;
    }





    function 
max($str$val)
    {
        return (
$str <= $val) ? true false;
    }





    function 
pattern($str$pattern)
    {
        return (!
preg_match($pattern$str)) ? false true;
    }





    function 
clean($str)
    {
        
$str is_array($str) ? array_map(array("ProcessForm"'clean'), $str) : str_replace('\\''\\\\'strip_tags(trim(htmlspecialchars((get_magic_quotes_gpc() ? stripslashes($str) : $str), ENT_QUOTES))));
        return 
$str;
    }
}


?>


Вот сюда 
// $to = 'emailaddress@domain.com';
         // $subject = 'zapisatsya-k-masteru';
         // $from = 'emailaddress@domain.com';
ставлю электронную почту, на на почту ничего не приходит...
Stanislav вне форума   Ответить с цитированием

Старый 06.08.2015, 12:56
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Стоит отметить, что ваш топик аналогичен с этими топиками, по этому хорошо было бы прочитать их содержимое

Не получается установить windows 2000
Не получается установить Windows 7

Старый 09.08.2015, 10:49   #2 (permalink)
XELFAER
Member
 
Аватар для XELFAER
 
Регистрация: 22.07.2012
Сообщений: 393
Записей в дневнике: 2
Сказал(а) спасибо: 95
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 5501
По умолчанию

Цитата:
Сообщение от Stanislav Посмотреть сообщение
// $to = 'emailaddress@domain.com'; // $subject = 'zapisatsya-k-masteru'; // $from = 'emailaddress@domain.com';
У вас в коде перед указанными строчками стоят // - это комментарии, соответственно эти строки кода не будут отрабатываться, для этого нужно их раскомментировать(убрать //).
XELFAER вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 23:20.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.