Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 51, средняя оценка - 4.82
Setsumi
0 / 0 / 0
Регистрация: 04.09.2012
Сообщений: 4
#1

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

04.09.2012, 17:09. Просмотров 7004. Ответов 4
Метки нет (Все метки)

Простите за длинное предисловие, но это чтобы избежать лишних вопросов и ненужных рекомендаций.

Знаю, что многие скажут, мол, миллион раз подобное обсуждалось. Да, возможно. Только я уже вторые сутки брожу по просторам инета в надежде найти хоть что-то для меня понятное. Прошерстила все что можно уже, наверное, включая этот форум. Ну не получается, хоть убейте, вставить готовый код, поправить его и чтобы все работало корректно. Худо-бедно разобралась с обычной отправкой без вложенных файлов, но нужна именно функция прикрепления картинок.
Большая просьба: помогите! Мне не нужны какие-то левые коды, где "все работает корректно, вставь этот". Я уже пыталась так сделать - не вышло. И отсылать на другие темы меня тоже не надо - уже все изучила вдоль и поперек. Чайник я - чего вы хотите? На документацию тоже нет смысла отсылать - это слишком долго, а сайт нужен срочно.
Вот если бы можно было к моему коду просто что-то добавить/поправить, чтобы все прекрасно заработало - это было здорово. Буду очень благодарна, если напишете.
Нужна еще проверка формата загружаемых файлов.
Важно! Файлы должны отправляться именно на мейл, а не просто загружаться на сервер.

request.php
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
76
77
78
79
80
81
82
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<link href="images/favicon.ico" rel="shortcut icon" type="image/x-icon">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Оставить заявку</title>
</head>
<body>
<div align="center">
<table border=0 width=1024 cellpadding="10">
<tr>
<td height="220" colspan="3" valign="bottom">
<?php
require_once "logo.html";
?>
</td>
</tr>
<tr>
<td width="260" class="menu" valign="top">
<?php
require_once "menu.html";
?>
</td>
<td height="500" width="764" colspan="2" valign="top">
<div align="center"><img src="images/request2.png" alt="Оставить заявку">
<form action="send.php" method="post" enctype="multipart/form-data">
<table border="0" width="100%">
<tr><td align="center" valign="top" colspan="2"><b>Заполните заявку, и мы обязательно подберем Вам подходящий вариант!</b></td></tr>
<tr><td><label class="s">ФИО</label></td>
<td><INPUT class="bac" TYPE=text SIZE=21 NAME=name></td></tr>
<tr><td><label class="s">Номер телефона</label></td>
<td><INPUT class="bac" TYPE=text SIZE=21 NAME=telefon></td></tr>
<tr><td><label class="s">E-mail</label></td>
<td><INPUT class="bac" TYPE=text SIZE=21 NAME=email></td></tr>
<tr><td><label class="s">Вид сделки</label></td>
<td><SELECT class="bac" NAME="sdelka">
<OPTION VALUE="Купить" selected>Купить
<OPTION VALUE="Продать">Продать 
<OPTION VALUE="Сдать">Сдать 
<OPTION VALUE="Арендовать">Арендовать 
<OPTION VALUE="Обменять">Обменять 
</SELECT></td></tr>
<tr><td><label class="s">Район нахождения квартиры</td></label>
<td><SELECT class="bac" NAME="raion"> 
<OPTION VALUE="Правобережный" selected>Правобережный
<OPTION VALUE="Ленинский">Ленинский 
<OPTION VALUE="Орджоникидзевский">Орджоникидзевский
</SELECT></td></tr>
<tr><td><label class="s">Адрес квартиры</label></td>
<td><INPUT class="bac" TYPE=text SIZE=21 NAME=adres></td></tr>
<tr><td><label class="s">Количество комнат</label></td>
<td><SELECT class="bac" NAME="komnaty"> 
<OPTION VALUE="1" selected>1
<OPTION VALUE="2">2
<OPTION VALUE="3">3
<OPTION VALUE="4">4
<OPTION VALUE="5">5
</SELECT></td></tr>
<tr><td valign="top"><label class="s">Загрузите фотографии жилья <br>(продажа/сдача в аренду)</td></label>
<td>
<input type = "file" class="bac" SIZE=22 name = "file_1"><br>
<input type = "file" class="bac" SIZE=22 name = "file_2"><br>
<input type = "file" class="bac" SIZE=22 name = "file_3"><br>
</td></tr>
<tr><td valign="top"><label class="s">Дополнительно</label></td>
<td><TEXTAREA class="bac" NAME=dopolnitelno ROWS=5 COLS=50></TEXTAREA></td></tr>
<tr><td colspan="2" align="center"><INPUT TYPE=submit  name="send" VALUE="Отправить"></td></tr>
</table>
</form>
</div>
</td>
</tr>
<tr>
<td height=40 colspan="3"><?php
require_once "podval.html";
?></td>
</tr>
</table>
</div>
</body>
</html>
send.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
<?php
 if (isset($_POST['name'])) {$name = $_POST['name'];}
 if (isset($_POST['telefon'])) {$telefon = $_POST['telefon'];}
 if (isset($_POST['email'])) {$email = $_POST['email'];}
 if (isset($_POST['sdelka'])) {$sdelka = $_POST['sdelka'];}
 if (isset($_POST['raion'])) {$raion = $_POST['raion'];}
 if (isset($_POST['adres'])) {$adres = $_POST['adres'];}
 if (isset($_POST['komnaty'])) {$komnaty = $_POST['komnaty'];}
if (isset($_POST['file'])) {$file = $_POST['file'];}
 if (isset($_POST['dopolnitelno'])) {$dopolnitelno = $_POST['dopolnitelno'];}
 
$address = 'setsumi.rainbow@gmail.com';
$sub = "Заявка с сайта nedvizhimost-mgn.ru";
$mes = "ФИО: $name \nНомер телефона: $telefon \nE-mail: $email \nВид сделки: $sdelka \nРайон нахождения квартиры: $raion \nАдрес квартиры: $adres \nКоличество комнат: $komnaty \nЗагруженные фотографии: $file \nДополнительно: $dopolnitelno";
$verify = mail ($address,$sub,$mes,"Content-type:text/plain; charset = windows-1251\r\nFrom:$email");
if ($verify == 'true')
{
echo "<p>Спасибо, Ваша заявка отправлена";
}
else 
{
echo "<p>Не удалось отправить заявку. Пожалуйста, попробуйте еще раз.";
}
?>

http://www.cyberforum.ru/php-beginners/thread930273.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.09.2012, 17:09
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Отправка файла через форму обратной связи (PHP):

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

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

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

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

Через форму обратной связи не приходят письма - PHP
Здравствуйте! Столкнулся с проблемой, которая возникала у многих. С формы...

4
StagnantIce
124 / 104 / 40
Регистрация: 06.03.2011
Сообщений: 334
04.09.2012, 17:27 #2
Во-первых почитайте про заголовки. так отправлять файлы:

Загруженные фотографии: $file
абсурд. Почитайте подробнее про функцию mail, как с помощью нее отправить файл на почту.

Также про $_POST['file'], там файла вроде как нет. Его нужно искать во временных файлах, который создает php. Почитайте про то как передается файл на сервер этим способом.
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16744 / 6635 / 860
Регистрация: 12.06.2012
Сообщений: 19,880
Завершенные тесты: 1
04.09.2012, 17:35 #3
1. загруженные через форму файлы находятся в массиве $_FILES
2. чтобы отправить файл тип документа должен быть html, а не plain: plain это обычный бинарный текст
3. попов уже бесит
4. переменные надо проверять и очищать, а то вы так шеллы/вирусы в итоге будете спамить спокойно, даже не подозревая об этом
0
IIIypuk
04.09.2012, 18:45
  #4

Не по теме:

Цитата Сообщение от KOPOJI Посмотреть сообщение
попов уже бесит
при чем тут я?

0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16744 / 6635 / 860
Регистрация: 12.06.2012
Сообщений: 19,880
Завершенные тесты: 1
04.09.2012, 19:10 #5
я имел в виду Евгения Попова и его курсы, если Вы не поняли
0
04.09.2012, 19:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.09.2012, 19:10
Привет! Вот еще темы с решениями:

Как сделать так, чтобы отправляя письмо через форму обратной связи, отправлялась ссылка с utm-меткой?
Как сделать так, чтобы отправляя письмо через форму обратной связи,...

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

Форма обратной связи, отправка
Ребята, помогите, пожалуйста. Есть форма и js, скрипт отрабатывает, но письмо...

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru