Возможно ли в этой форме прикрутить загрузку картинок?
Здравствуйте. Есть такая форма
<div align="left" id="cor5" class="sidebarForm"> <div align="center" id="loadBar"></div> <form action="#" method="post" id="cForm2"> <label>Ваш email:</label> <div class="input" id="cor5"> <input value="" id="posEmail" type="text"> </div> <label>Ваше сообщение:</label> <div class="textarea" id="cor5"><textarea id="posText"></textarea></div> <button type="button" id="send">Отправить --></button> </form></div> $(document).ready(function() { // Форма обратной связи................................./ var regVr22 = "<div><img src="../load.gif" alt="Отправка..." ><span>Сообщение обрабатывается...</span></div><br>"; $("#send").click(function(){ $("#loadBar").html(regVr22).show(); var posEmail = $("#posEmail").val(); var posText = $("#posText").val(); $.ajax({ type: "POST", url: "../send.php", data: {"posEmail": posEmail, "posText": posText}, cache: false, success: function(response){ var messageResp = "<p">Спасибо, <strong>"; var resultStat = "!</strong> Ваше сообщение отправлено!</p>"; var oll = (messageResp + resultStat); if(response == 1){ $("#loadBar").html(oll).fadeIn(3000); $("#posEmail").val(""); $("#posText").val(""); } else { $("#loadBar").html(response).fadeIn(3000); } } }); return false; }); }); header("Content-type: text/html; charset=utf-8"); //********************************************** if(empty($_POST['js'])){ $log ==""; $error="no"; //флаг наличия ошибки $posEmail = addslashes($_POST['posEmail']); $posEmail = htmlspecialchars($posEmail); $posEmail = stripslashes($posEmail); $posEmail = trim($posEmail); $posText = addslashes($_POST['posText']); $posText = htmlspecialchars($posText); $posText = stripslashes($posText); $posText = trim($posText); //Если нет ошибок отправляем email if($error=="no") { //Отправка письма админу о новом комментарии $to = "mail@yourdomain.ru";//Ваш e-mail адрес $mes = "Человек отправил Вам сообщение из формы обратной связи Вашего сайта: \n\n$posText"; $from = $posEmail; $sub = '=?utf-8?B?'.base64_encode('Новое сообщение с Вашего сайта').'?='; $headers = 'From: '.$from.' '; $headers .= 'MIME-Version: 1.0 '; $headers .= 'Content-type: text/plain; charset=utf-8 '; mail($to, $sub, $mes, $headers); echo "1"; //Всё Ok! } else//если ошибки есть { echo "<p><strong>Ошибка !</strong></font></p><ul>".$log."</ul><br>"; //Нельзя отправлять пустые сообщения } } Подскажите, возможно ли сюда прикрутить функцию отправки картинки? Или ничего не выйдет? Буду рад если вы поможете мне с кодом или дадите какие либо советы по этому поводу. |
Цитата:
Цитата:
|
неа. Но есть предположение, что вместо картинки придёт http://my.com/kartinka.jpg . Буквами...
|
А если "неа", то зачем же это дается? Вы сперва разберитесь с отправкой почты, а уж потом думайте о картинках.
Зачем к значению адреса применять addslashes? Это значению нужно проверять на соответствие формату, и одного значения, а не пачки адресов. А что будет содержать тело почтового сообщения, текстового, если оно будет пропущено через htmlspecialchars? Все действия вами прописанные, это несуразица. |
Подождите. Форма работает. Всё исправно. http://pavelmakarov.ru/sajtostroenie...ezagruzki.html Вот форма. И Она бесперебойно отправляет письма на почту. Но как прикрутить туда отправку файлов (картинок), я понятия не имею. По этому написал сюда. Может быть кто то знает, как сие чудо сотворить.
|
Цитата:
$posEmail = addslashes($_POST['posEmail']); $posEmail = htmlspecialchars($posEmail); $posEmail = stripslashes($posEmail); $posEmail = trim($posEmail); $posText = addslashes($_POST['posText']); $posText = htmlspecialchars($posText); $posText = stripslashes($posText); $posText = trim($posText); это глупость. Это не код, это набор несуразицы. А в почтовом сообщении text/plain < будет отображаться <. Читайте, ибо вы не понимаете назначения ни addslashes, ни stripslashes, ни htmlspecialchars, втыкая их туда, где они совсем не нужны. |
laimas,
Вы бы не могли подкинуть ссылку на "нормальную" форму отправки письма без перезагрузки страницы? |
А какую форму вам надо? Дело разве в форме?
Вы не правильно проверяете и обрабатываете данные на сервере, а форма самая обычная. В сети о правилах отправки почты много написано, а о функциях, которые вы используете, и которые совсем не нужны в данном случае читайте в руководстве. |
Не правильно выразился. Не форму, а всю эту байду с нормальным js и с нормальным php кодом. Может вы знаете где есть уже готовый вариант?
|
Если имеется ввиду отправка формы асинхронным запросом включая и файлы, то да, есть такие готовые плагины для jQ, гугл поможет найти. Для сервера также много готовых классов по отправке почты, например phpmailer.
|
Часовой пояс GMT +3, время: 18:00. |