Помогите поправить код обратной связи
1.
Владимир (17.10.2013 / 15:20)
Ребят, помогите поправить код.Болею, чёто голова не варит..в общем вот код
<?
if (isset ($_POST['message'])) {
$name = @ trim ($_POST['name']);
$contact = @ trim ($_POST['contact']);
$message = @ trim ($_POST['message']);
$captcha = @ trim ($_POST['captcha']);
if (! $name or ! $contact or ! $message or ! $captcha) echo ('<p style="color: red">Необходимо заполнить все поля</p>');
else { mail ("vovalika@mail.ru",
"Сообщение с сайта (отправитель: $name)",
"$message \n\n Контакты: \n $contact");
echo ('<p style="color: green">Ваше сообщение получено, спасибо!</p>');
$_POST['name'] = $_POST['contact'] = $_POST['message'] = '';
}
}
?>
echo '<FORM METHOD=POST">
Ваше имя:<br/>
<INPUT NAME="name" value="<?=@$_POST['name'];?>"><br/>
Контактная информация для связи с вами (icq, e-mail или номер телефона):<br/>
<INPUT NAME="contact" value="<?=@$_POST['contact'];?>"><br/>
Текст сообщения:<br/>
<TEXTAREA NAME="message" ROWS="8" COLS="17"><?=@$_POST['message'];?></TEXTAREA><br/>';
session_name("regsid");
$rand = mt_rand(10000, 99999);
$_SESSION['rand'] = $rand;
$sid = session_id();
echo '<img src="/img.php?regsid='.$sid.'" alt="This is CAPTCHA"/><br/>
Цифры с картинки:<br/>
<INPUT NAME="captcha" value="<?=@$_POST['captcha'];?>"><br/>
<INPUT TYPE="submit" value="Отправить">
</FORM>';
что то не работает..выручайте
2.
Кевин Митник (17.10.2013 / 15:24)
ошибки какие?
3.
Владимир (17.10.2013 / 15:26)
Кевин Митник_HHTeam (17 Октября 2013 / 11:24)
ошибки какие?
Не отправляется письмо на почту..тупо обновляется страница..+ на странице среди форм код скрипта светится
4.
Кевин Митник (17.10.2013 / 15:28)
ааа вначале, после <? поставь php
<?php
5.
Владимир (17.10.2013 / 15:31)
Кевин Митник_HHTeam (17 Октября 2013 / 11:28)
ааа вначале, после <? поставь php
<?php
разницы нет)
6.
Кевин Митник (17.10.2013 / 16:14)
на, работает
<?
if (isset ($_POST['message'])) {
$name = @ trim ($_POST['name']);
$contact = @ trim ($_POST['contact']);
$message = @ trim ($_POST['message']);
$captcha = @ trim ($_POST['captcha']);
if (! $name or ! $contact or ! $message or ! $captcha) echo ('<p style="color: red">Необходимо заполнить все поля</p>');
else { mail ("vovalika@mail.ru",
"Сообщение с сайта (отправитель: $name)",
"$message \n\n Контакты: \n $contact");
echo ('<p style="color: green">Ваше сообщение получено, спасибо!</p>');
$_POST['name'] = $_POST['contact'] = $_POST['message'] = '';
}
}
echo '<FORM METHOD=POST">
Ваше имя:<br/>
<INPUT NAME="name" value="'.$_POST["name"].'"><br/>
Контактная информация для связи с вами (icq, e-mail или номер телефона):<br/>
<INPUT NAME="contact" value="'.$_POST["contact"].'"><br/>
Текст сообщения:<br/>
<TEXTAREA NAME="message" ROWS="8" COLS="17">'.$_POST["message"].'</TEXTAREA><br/>';
session_name("regsid");
$rand = mt_rand(10000, 99999);
$_SESSION['rand'] = $rand;
$sid = session_id();
echo '<img src="/img.php?regsid='.$sid.'" alt="This is CAPTCHA"/><br/>
Цифры с картинки:<br/>
<INPUT NAME="captcha" value="'.$_POST["captcha"].'"><br/>
<INPUT TYPE="submit" value="Отправить">
</FORM>';
?>
7.
Samxal (17.10.2013 / 16:19)
После строки 17.
<FORM METHOD="POST">
Ваше имя:<br/>
<INPUT NAME="name" value="<?=@$_POST['name'];?>"><br/>
Контактная информация для связи с вами (icq, e-mail или номер телефона):<br/>
<INPUT NAME="contact" value="<?=@$_POST['contact'];?>"><br/>
Текст сообщения:<br/>
<TEXTAREA NAME="message" ROWS="8" COLS="17"><?=@$_POST['message'];?></TEXTAREA><br/>
<?
session_name("regsid");
$rand = mt_rand(10000, 99999);
$_SESSION['rand'] = $rand;
$sid = session_id();
?>
<img src="/img.php?regsid=<?=$sid?>" alt="This is CAPTCHA"/><br/>
Цифры с картинки:<br/>
<INPUT NAME="captcha" value="<?=@$_POST['captcha'];?>"><br/>
<INPUT TYPE="submit" value="Отправить">
</FORM>
8.
Владимир (17.10.2013 / 18:31)
Samxal (17 Октября 2013 / 12:19)
После строки 17.
<FORM METHOD="POST">
Ваше имя:<br/>
<INPUT NAME="name" value="<?=@$_POST['name'];?>"><br/>
Контактная информация для связи с вами (icq, e-mail или номер телефона):<br/>
<INPUT NAME="contact" value="<?=@$_POST['contact'];?>"><br/>
Текст сообщения:<br/>
<TEXTAREA NAME="message" ROWS="8" COLS="17"><?=@$_POST['message'];?></TEXTAREA><br/>
<?
session_name("regsid");
$rand = mt_rand(10000, 99999);
$_SESSION['rand'] = $rand;
$sid = session_id();
?>
<img src="/img.php?regsid=<?=$sid?>" alt="This is CAPTCHA"/><br/>
Цифры с картинки:<br/>
<INPUT NAME="captcha" value="<?=@$_POST['captcha'];?>"><br/>
<INPUT TYPE="submit" value="Отправить">
</FORM>
Оу..спасибо.Заработало..пишет сообщение типа отправлено, но письмо не приходит на почту..не знаешь почему?
9.
Алексей (17.10.2013 / 20:51)
8.
MMdance, с локального сервера не отправишь, точней оно отправится визуально и будет хранится в системной папке с логами. Поставь скрипт на хост или сервер, потом оно отправится.
Добавлено через 01:31 сек.
8.
MMdance, также совместно с функцией tirm используйте htmlspecialchars().
10.
Владимир (17.10.2013 / 21:07)
ByKuznec (17 Октября 2013 / 16:51)
8. MMdance, с локального сервера не отправишь, точней оно отправится визуально и будет хранится в системной папке с логами. Поставь скрипт на хост или сервер, потом оно отправится.
Ну так у меня скрипт и стоит на хосте...
Добавлено через 01:31 сек.
8. MMdance, также совместно с функцией tirm используйте htmlspecialchars().
11.
Владимир (17.10.2013 / 21:42)
ByKuznec (17 Октября 2013 / 16:51)
8. MMdance, с локального сервера не отправишь, точней оно отправится визуально и будет хранится в системной папке с логами. Поставь скрипт на хост или сервер, потом оно отправится.
Добавлено через 01:31 сек.
8. MMdance, также совместно с функцией tirm используйте htmlspecialchars().
Ну так то он стоит на хосте
12.
Владимир (17.10.2013 / 23:37)
Ума не приложу почему письма не приходят..и куда они вообще деваются тогда
13.
Titov (17.10.2013 / 23:51)
11 ну а просто без формы
<?php
mail("твой маил", "твоё письмо", "твое сообщение");
?>
добавь в скрипт
ini_set('display_errors',1);
error_reporting(E_ALL);
в хитачес можно добавить еще:
php_flag display_errors 1
и убери всех "@" - собак из кода, давай ошибки посмотрим что дает? думаю у тебя обработчик формы балуеться, попробуй кодировку исполняемых файлов изменить.
14.
Topiary (18.10.2013 / 17:04)
Смотрим php.ini
Чему равно sendmail_path
Важно включить консоль ошибок если используется
sendmail.ini
debug_logfile=debug.log
Рестарт....
Если письмо не отправится смотрим debug.log
15.
Владимир (18.10.2013 / 22:06)
Всё ребят разобрался..оказывается косяк в VDS был..всё заработало..но теперь другая проблема..письма приходят с каракулями...как быть?кодировку файла скрипта менял с utf8 на win1251 не помогает....база тут вроде не причём..он её не касается...посоветуйте
16.
Samxal (18.10.2013 / 22:33)
MMdance (18 Октября 2013 / 18:06)
Всё ребят разобрался..оказывается косяк в VDS был..всё заработало..но теперь другая проблема..письма приходят с каракулями...как быть?кодировку файла скрипта менял с utf8 на win1251 не помогает....база тут вроде не причём..он её не касается...посоветуйте
Так пробуй
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n";
$headers .= 'Content-Transfer-Encoding: 8bit' . "\r\n";
mail(
"vovalika@mail.ru",
"Сообщение с сайта (отправитель: {$name})",
"{$message} \n\n Контакты: \n {$contact}",
$headers
);
URL:
https://visavi.net/topics/39234