Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 27.03.2012
Сообщений: 27

Отправка файлов на почту из формы обратной связи

17.06.2015, 17:04. Показов 776. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Извини что отвлекаю всех читателей данного форума, но хотелось бы попросить кинуть гайд или пример на то как сделать форму обратной связи с аттачем.

Предвосхищая вопросы, я просмотрел формум и множество ссылок. Хотелось бы именно гайд где будет объяснено каждое слово.
Или если у кого есть желание может помочь и сказать как это сделать здесь. Спасибо. Вот моя реализация формы пока без загрузки.
Сама форма
HTML5
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
<form action="requst_calculate.php" method="POST">
                                <div class="row 50%">
                                    <div class="6u 12u(mobilep)">
                                        <input type="text" name="name" id="name" maxlength="20" required="" placeholder="Имя *"/>
                                    </div>
                                    
                                    <div class="6u 12u(mobilep)">
                                        <input type="text" name="phone" id="phone" maxlength="15" placeholder="Номер" />
                                    </div>
                                    <input  type="text" name="voidfield" class="hiddens" placeholder="Не заполнять это поле">
                                    <div class="12u 12u(mobilep)">
                                        <input type="email" name="email" id="email" required="" placeholder="Email *"/>
                                    </div>
                                    
                                </div>
                                
                                <div class="row 50%">
                                    <div class="6u 12u(mobilep)">                       
                                        <div class="button alt" style="text-align: center; overflow: hidden; position: relative;">
                                            <div>Выбрать файл</div>
                                            <input type="file" name="file" id="file" size="1" style="display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0;">
                                        </div>
                                    </div>
                                    <div id="filename" class="12u 12u(mobilep)"></div>
                                    <!-- Выводим название файла на экран -->
                                    <script>
                                    $("#file").change(function(){
                                        $('#filename').html($("#file")[0].files[0].name);
                                    });
                                    </script>
                                </div>
                                
                                
                                <div class="row 50%">
                                    <div class="6u 12u(mobilep)">
                                    <h4>Выберете исходный язык текста*<h4>
                                        <select style="border: 1px solid #E0E0E0;border-radius: 5px;" class="12u" required="" name="original">
                                            <option value="Русский">Русский</option>
                                            <option value="Английский">Английский</option>
                                            <option value="Немецкий">Немецкий</option>
                                            <option value="Французский">Французский</option>
                                        </select>
                                    </div>
                                </div>
                                
                                <div class="row 50%">
                                    <div class="6u 12u(mobilep)">
                                    <h4>Выберете нужный язык *<h4>
                                        <select style="border: solid 1px #e0e0e0; border-radius: 5px;" class="12u" required="" name="translate">
                                            <option value="Английский">Английский</option>
                                            <option value="Русский">Русский</option>
                                            <option value="Немецкий">Немецкий</option>
                                            <option value="Французский">Французский</option>
 
                                        </select>
                                    </div>
                                </div>
                                
 
                                
                                <div class="row 50%">
                                    <div class="12u">
                                        <textarea name="message" id="message" required="" placeholder="Введите текст  *" rows="5"></textarea>
                                    </div>
                                </div>
                                
                                <div class="row 50%">
                                    <div class="12u">
                                        <ul class="actions">
                                            <li><input type="submit" class="button alt" value="Отправить" /></li>
                                        </ul>
                                    </div>
                                </div>
                                
                            </form>
Код отправки
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
<?php    
    $voidfield = $_POST['voidfield']; // получим пустое поле из поля voidfield(поле в которое будет писать спам-бот)
    $name = $_POST['name']; // получаем имя из формы
    $phone = $_POST['phone'];// получаем телефон из формы
    $email = $_POST['email']; // получаем email из формы
    $message = $_POST['message']; // получаем сообщение из формы
    $file = $_POST['file']; // тут пытался забрать файл, но не вышло
    if (isset($_POST['original'])) {$original = $_POST['original'];} //Получения значения value в поле select из формы выбора языка 1
    if (isset($_POST['translate'])) {$translate = $_POST['translate'];} //Получения значения value в поле select из формы выбора языка 2
    // оформление текста, который приходит получателю
    $send = "Имя: ".$name."\r\nТелефон: ".$phone."\r\nEmail: ".$email."\r\n\nЯзык оригинала: ".$original."\r\nЯзык перевода: ".$translate."\r\n\nСообщение: ".$message;
     
    // условие проверки, если поле voidfield пустое, то форма обрабатывается, 
    //иначе выходим (для роботов)
    if (empty($voidfield)){ 
    $to= "contact@mail.net"; // кому отправляем форму
    $from = "contactform@mail.com"; // от кого отправлена форма
    $subject = "Сообщение отправленно из контактной формы"; // тема сообщения
    // заголовки, отвечающие за кодировку и тип письма, оставляем без изменений
    $headers = "From: $from\r\nReplay-To: $from\r\nContent-type: text/plain; charset=utf-8\r\n";
    // функция php для отправки email mail(кому отправляем, тема, текст в сообщении, заголовки)
    mail($to, $subject, $send, $headers);
    } 
    else exit;
 
    // В элементе $_SERVER['HTTP_REFERER'] приводится адрес страницы, с которой посетитель пришёл на данную страницу
    $redir = $_SERVER['HTTP_REFERER'];
     
    // условия проверки с пересылкой на страницу с формой с добавление GET параметра,
    // который нужен, чтобы по нему, можно было выводить благодарственный текст
    if (strpos($redir, "mail=1") === false) $redir .= "?mail=1#contact";
    // функция перенаправления, в данном случае на страницу с формой
    header("Location: $redir");
 
?>
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.06.2015, 17:04
Ответы с готовыми решениями:

Отправка на почту из формы обратной связи
Ребят, доброго вечера! Помогите, пожалуйста вот с такой штукой. Нужно сделать так, что, если поле mail (это не обязательное поле) не...

На почту не приходят письма с формы обратной связи
Проблема такая. Есть html код формы (на странице contacts.html) с этой страницы, если форма заполняем, на почту приходят письма. ...

Почему не приходит письмо на почту из формы обратной связи на сайте?
Здравствуйте! Прошу объяснить мне почему не работает данный код &lt;?php if (session_id()=='') session_start(); if (isset($_POST)) { ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.06.2015, 17:04
Помогаю со студенческими работами здесь

На почту с формы обратной связи не приходят значения radio-кнопок
Не когда не подключал input=&quot;radio&quot; ) ПХП ФОРМА &lt;?php if (isset($_POST)) {$name = $_POST;} if (isset($_POST)) {$phone = $_POST;} ...

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

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

Отправка формы обратной связи несколько раз
Добрый вечер, не могу решить проблему: форма обратной связи при единичной нажатии на кнопку отправляется 3 раза, алерт выдается так же...

Отправка письма с формы обратной связи использую PHPMailer
Добрый день - , не отправляются письма с локалки, сейчас приведу код Вот сама форма на хтмл &lt;div...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru