0 / 0 / 0
Регистрация: 05.12.2009
Сообщений: 103

Отправка формы с сайта

28.10.2017, 21:44. Показов 694. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребята, всем привет!

Настроили сбор данных с форм сайта и отправку всего этого на почту. На отправку форм настроили передачу событий в Google Analytics и Метрику. При отправке с сайта, все работает хорошо.

Но стали приходить некорректные заявки (вложил). Исходя из того, что заявки приходят без номера телефона (поле является обязательным) и не отправляются события в систему аналитики, я вижу проблему, в том, что в скрипте есть код, который эти заявки и отправляет.

Скрипты брали из интернета, т.к. не очень хорошо с PHP и разобраться с ними пробовали, но не получилось.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<?php
$mail='kirmur@mail.ru';
$ns=array(
    'name'=>'Имя',
    'phone'=>'Телефон',
    'mark'=>'Марка',
    'model'=>'Модель',
    'year'=>'Год выпуска',
    'price'=>'Желаемая цена',
    'message'=>'Комментарий'
);
if($p=$_POST){
    $time=time();
    $x=scandir('tmp');
    foreach($x as $a){
        if($a!='..' && $a!='.' && is_file($a)){
            if($time-filemtime('tmp/'.$a)>24*3600)unlink('tmp/'.$a);
        }
    }
    
    
    $js['status']='ok';
    $title='Письмо с сайта Express Auto';$msg='';
    foreach($p as $a=>$b){
        if($ns[$a])$msg.="$ns[$a]: <b>$b</b> <br>\n\n";
        
    }
 
    //$js['msg']=$msg;
    $js['mail']=smail($mail,$title,$msg,$p['images'],"Express Auto <no-reply@$_SERVER[HTTP_HOST]>");
    $js['success']=true;
    echo json_encode($js);
}
function mail_h($to,$title,$msg){
    $from="Express Auto <no-reply@$_SERVER[HTTP_HOST]>";
    $headers = 'Content-type: text/html; charset=utf-8' . "\r\n";
    $headers .= "From: " . $from . "\r\n";
    $headers .= "Reply-To: " . $from . "\r\n";
    
    return mail($to,$title,$msg,$headers);
}
 
 
function rf($path){
    $ff=@file_get_contents($path);
    if(!$ff){
        $path=iconv("UTF-8","Windows-1251",$path);
        $ff=file_get_contents($path);
    }
    
    $res['attachment']=chunk_split(base64_encode($ff));
    $res['mime']=mime_content_type($path);
    return $res;
}
function smail($to,$title,$msg,$files='',$from=''){
    $boundary=md5(date('r', time()));
    $headers="MIME-Version: 1.0\r\n";
    $headers.="Content-Type: multipart/mixed; boundary=\"$boundary\"\r\n";
    if($from){
        $headers .= "From: " . $from . "\r\n";
        $headers .= "Reply-To: " . $from . "\r\n";
    }
 
    $message="
Content-Type: multipart/mixed; boundary=\"$boundary\"
 
--$boundary
Content-Type: text/html; charset=\"utf-8\"
Content-Transfer-Encoding: 7bit
 
$msg";
    if($files){
        if(!is_array($files))$files=array($files);
        $u=0;
        foreach($files as $a=>$b){
            if(is_file($b)){
                if($u==$a){
                    $tmp=explode('/',$b);
                    $filename=$tmp[count($tmp)-1];
                    
                }else {$filename=$a;}
                $u++;           
                $tmp=rf($b);
                $attachment = $tmp['attachment'];
                $filetype=$tmp['mime'];
                $message.="
 
--$boundary
Content-Type: \"$filetype\"; name=\"$filename\"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=\"$filename\"
 
$attachment";
            }
        }
    }
    $message.="
--$boundary--";
    return mail($to,$title,$message,$headers);
}
?>
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
if($ff=$_FILES['new_image']){
    $mime=array('image/png','image/gif','image/jpeg','image/tiff','image/webp');
    if(in_array($ff['type'],$mime) && $ff['error']==0){
        $name='tmp/'.md5($ff['name'].time()).'.'.substr($ff['type'],6);
        copy($ff['tmp_name'],$name);
        $js['name']=$name;
        $js['normal']='/ajax/'.$name;
        $js['thumb']='/ajax/'.$name;
        echo json_encode($js);      
        
    }else die('false');
}
?>
Заранее спасибо за помощь!
Миниатюры
Отправка формы с сайта   Отправка формы с сайта   Отправка формы с сайта  

0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.10.2017, 21:44
Ответы с готовыми решениями:

Отправка email с формы сайта
День добрый, интересует отправка писем с сайта, без использования почтовых клиентов. Я совершенно не разбираюсь в php, пишу сайт на...

Отправка с формы сайта на почту
есть код html но ни как не получается отправить информацию на почту, на более простом примере получилось, делатл вроде все так же помогите...

Отправка формы с сайта на почту
Здравствуйте! Помогите пожалуйста. Очень срочно нужно. Буду очень благодарен. Вот html: &lt;div class=&quot;row&quot;&gt; ...

1
ytf
276 / 259 / 185
Регистрация: 15.08.2017
Сообщений: 1,483
29.10.2017, 15:34
PHP
1
2
3
4
if (empty($_POST['phone'])) {
echo 'Укажите номер телефона';
exit;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.10.2017, 15:34
Помогаю со студенческими работами здесь

Отправка формы с сайта в виде заявки на почту
доброго время суток. Помогите разобраться. Перепробовал много примеров из интернета по поводу отправки формы с сайта на почту. Но как...

Отправка данных с формы сайта в онлайн агент
Собственно задался вопросом, может кто уже сталкивался с этим и может чего подсказать. Задача такая отправить данные с формы сайта в...

Отправка формы на email и данных с формы в БД
В приведенном ниже php-файле производится занесение данных с формы в базу,как изменить код для того чтобы данные с формы одновременно...

Отправка сообщений с сайта
Нашел в нете такой код который отправляет сообщения с сайта. Почему на денвере не работает. Вот Код формы &lt;?php // выводим...

Отправка письма с сайта
Добрый день! Подскажите где допустил ошибку,дело в том что при отправке письма с сайта,на почту приходит все кроме имени автора,вот сам...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru