-
Вебмастеру
(
http://forum.oszone.net/forumdisplay.php?f=22)
ArchikDikos |
24-05-2012 15:51 1921750 |
Отправка формы на E-mail
Доброго времени суток!
при щелчке на кнопку отправки формы условия ввода не выполняются и открывается страничка с кодом обработчика(submit2.php).
Почему так происходит? Не пойму в чем ошибка.
Форма для отправки:
HTML код:
<form action="submit2.php" method="post" name="sign4" >
<table >
<tbody><tr>
<td ><label for="name">Фамилия, Имя</label></td>
<td >
<input type="text" name="name" id="name" >
</td>
</tr>
<tr>
<td style="width:140px"><label for="phone">Контактный телефон</label></td>
<td>
<input type="text" name="phone" id="phone" >
</td>
</tr>
<tr>
<td style="width:140px"><label for="desc">Комментарии</label></td>
<td >
<textarea name="desc" id="desc" ></textarea>
</td>
</tr>
<tr>
<td style="width:140px"></td>
<td >
<input type="submit" value=" Записаться " >
</td>
</tr>
</tbody></table>
</form>
Обработчик:
PHP код:
<?php
if (isset ($name))
{
//Не может быть более 20 символов
if (empty($name))
{
echo "<center><b>Не указано имя !!!<p>";
echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$name = "не указано";
}
if (isset ($phone))
{
//Не может быть более 20 символов
if (empty($email))
{
echo "<center><b>Не указан телефон !!!<p>";
echo "<a href=index.htm>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$phone = "не указано";
}
if (isset ($desc))
{
//Не может быть более 1000 символов
if (empty($desc))
{
echo "<center><b>Сообщение не написано !!!<p>";
echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$desc = "не указано";
}
$i = "не указано";
if ($name == $i AND $phone == $i AND $desc == $i)
{
echo "Ошибка ! Скрипту не были переданы параметры !";
exit;
}
$to = "Mymail@mail.ru";
$subject = "Сообщение с вашего интернет-сайта";
$message = "Имя пославшего:$name::::::::::Электронный адрес:$email::::::::::Сообщение:$mess:::::::::IP-адрес:$REMOTE_ADDR";
mail ($to,$subject,$message) or print "Не могу отправить письмо !!!";
echo "<center><b>Спасибо за отправку вашего сообщения<a href=index.php>Нажмите</a>, что бы вернуться на главную...>";
exit;
?>
Проверял локально, на хостинг не заливал.
|
На локальном сервере? Какой сервер? В конфиге настройте обработчик ( в апаче смотрите AddHandler и AddType для .php)
|
ArchikDikos |
25-05-2012 00:04 1922111 |
Цитата:
Цитата Sham
На локальном сервере? Какой сервер? В конфиге настройте обработчик ( в апаче смотрите AddHandler и AddType для .php) »
|
Имел ввиду,что сайт сохранен на компьютере.У меня нет аппача, я ни разу не работал с ним. Вообще я новичек в сайтостроении.
Страничка с кодом открывается потому что php без аппача либо сервера не работает, это я уяснил.
Мне нужно сделать сайт без какой либо CMS. Я слышал там помимо обработчика нужны еще какие-то настройки. что еще может потребоваться для корректной работы всего этого? Если к примеру я залью этот обработчик на хостинг.
|
На хостинге должен быть установлен PHP и разрешена функция mail. Чтобы локально проверять работу скриптов, поставьте, к примеру, это.
|
ArchikDikos |
31-05-2012 12:51 1925504 |
Спасибо! Поставилось, но почему-то с мелкими ошибками при установке. При запуске с локального сервера шрифт выводится непонятными иероглифами, кодировка utf - 8.
php заработал, только почему-то не обрабатывает посланные ему данные, выводит ошибку. Вывод печатается в таких же символах, как и вывод сайта. Мне кажется проще уже поставить cms, например джумлу и перебросить туда весь контент с новой формой ввода :)
|
Время: 22:32.
© OSzone.net 2001-