Возможно ли в этой форме прикрутить загрузку картинок?
Здравствуйте. Есть такая форма
<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, время: 10:47. |