PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Без описания
Поиск в теме | Версия для печати
Zakonoposlushniy
Отправлено: 28 Марта, 2016 - 07:12:18
Новичок
Покинул форум
Сообщений всего: 4
Дата рег-ции: Март 2016
Помог: 0 раз(а)
Добрый день! Создал сайт в Adobe Muse и столкнулся с такой проблемой - не работает форма обратной связи.
Написал в техподдержку хостинга, мне там ответили, что нужно в в коде вместо этого :
, вставить это : .
Форма заработала, но письма на почту приходят в ужасном виде. Вот как письмо выглядит :
CODE (
htmlphp ):
скопировать код в буфер обмена
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> < html
xmlns= "http://www.w3.org/1999/xhtml" >< head>< meta
http- equiv= "Content-Type"
content= "text/html;charset=UTF-8" />< title> Home</ title></ head>< body
style= "background-color: #ffffff; color: #000000; font-style: normal;
font-variant: normal; font-weight: normal; font-size: 12px;
line-height: 18px; font-family: helvetica, arial, verdana,
sans-serif;" >< h2 style= "background-color: #eeeeee;" > Отправка
новой формы</ h2>< table cellspacing= "0" cellpadding= "0"
width= "100%" style= "background-color: #ffffff;" >< tr>< td valign= "top"
style= "background-color:
#ffffff;" >< b> Имя:</ b></ td>< td> wfwfwf</ td></ tr>< tr>< td valign= "top"
style= "background-color: #ffffff;" >< b> Электронная
почта:</ b></ td>< td> caruza07@gmail.com</ td></ tr>< tr>< td
valign= "top" style= "background-color:
#ffffff;" >< b> Сообщение:</ b></ td>< td> wfwfqf</ td></ tr></ table>< br/>< br/>< div
style= "background-color: #eeeeee; font-size: 10px; line-height:
11px;" > Формы, отправленные с веб-сайта:
asiris.esy.es</ div>< div style= "background-color: #eeeeee; font-size:
10px; line-height: 11px;" > IP-адрес посетителя:
145.255.21.18</ div></ body></ html>
Как можно решить данную проблему? Заранее благодарю за ответ!
Zakonoposlushniy
Отправлено: 28 Марта, 2016 - 09:22:57
Новичок
Покинул форум
Сообщений всего: 4
Дата рег-ции: Март 2016
Помог: 0 раз(а)
3d_killer пишет: пустой строки не должно быть
Вот сам код формы.
PHP:
скопировать код в буфер обмена
<?PHP
/*
If you see this text in your browser, PHP is not configured correctly on this webhost.
Contact your hosting provider regarding PHP configuration for your site.
*/
require_once ( 'form_throttle.php' ) ;
if ( $_SERVER [ 'REQUEST_METHOD' ] == 'POST' )
{
if ( formthrottle_too_many_submissions( $_SERVER [ "REMOTE_ADDR" ] ) )
{
echo '{"MusePHPFormResponse": { "success": false,"error": "Too many recent submissions from this IP"}}' ;
}
else
{
emailFormSubmission( ) ;
}
}
function emailFormSubmission( )
{
$to = 'london@asiris.esy.es' ;
$subject = 'Home' ;
$message = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><title>' . htmlentities ( $subject , ENT_COMPAT , 'UTF-8' ) . '</title></head>' ; $message .= '<body style="background-color: #ffffff; color: #000000; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: 18px; font-family: helvetica, arial, verdana, sans-serif;">' ;
$message .= '<h2 style="background-color: #eeeeee;">Отправка новой формы</h2><table cellspacing="0" cellpadding="0" width="100%" style="background-color: #ffffff;">' ;
$message .= '<tr><td valign="top" style="background-color: #ffffff;"><b>Имя:</b></td><td>' . htmlentities ( $_REQUEST [ "custom_U412" ] , ENT_COMPAT , 'UTF-8' ) . '</td></tr>' ; $message .= '<tr><td valign="top" style="background-color: #ffffff;"><b>Электронная почта:</b></td><td>' . htmlentities ( $_REQUEST [ "Email" ] , ENT_COMPAT , 'UTF-8' ) . '</td></tr>' ; $message .= '<tr><td valign="top" style="background-color: #ffffff;"><b>Сообщение:</b></td><td>' . htmlentities ( $_REQUEST [ "custom_U417" ] , ENT_COMPAT , 'UTF-8' ) . '</td></tr>' ;
$message .= '</table><br/><br/>' ;
$message .= '<div style="background-color: #eeeeee; font-size: 10px; line-height: 11px;">Формы, отправленные с веб-сайта: ' . htmlentities ( $_SERVER [ "SERVER_NAME" ] , ENT_COMPAT , 'UTF-8' ) . '</div>' ; $message .= '<div style="background-color: #eeeeee; font-size: 10px; line-height: 11px;">IP-адрес посетителя: ' . htmlentities ( $_SERVER [ "REMOTE_ADDR" ] , ENT_COMPAT , 'UTF-8' ) . '</div>' ; $message .= '</body></html>' ;
$message = cleanupMessage( $message ) ;
$formEmail = cleanupEmail( $_REQUEST [ 'Email' ] ) ;
$headers = 'From: london@asiris.esy.es' . "\r \n " . 'Reply-To: ' . $formEmail . "\r \n " . 'X-Mailer: Adobe Muse 7.2.232 with PHP/' . phpversion ( ) . "\r \n " . 'Content-type: text/plain; charset=utf-8' . "\r \n " ;
$sent = @ mail ( $to , $subject , $message , $headers ) ;
if ( $sent )
{
echo '{"FormResponse": { "success": true}}' ;
}
else
{
echo '{"MusePHPFormResponse": { "success": false,"error": "Failed to send email"}}' ;
}
}
function cleanupEmail( $email )
{
$email = preg_replace ( '=((<CR>|<LF>|0x0A/%0A|0x0D/%0D|\\n|\\r)\S).*=i' , null , $email ) ; return $email ;
}
function cleanupMessage( $message )
{
$message = wordwrap ( $message , 70 , "\r \n " ) ; return $message ;
}
?>
3d_killer
Отправлено: 28 Марта, 2016 - 09:48:53
Участник
Покинул форум
Сообщений всего: 1916
Дата рег-ции: Апр. 2011
Откуда: Ростов-на-Дону
Помог: 21 раз(а)
PHP:
скопировать код в буфер обмена
$headers = "MIME-Version: 1.0\r \n " ;
$headers .= "Content-type: text/html; charset=UTF-8\r \n " ;
$headers .= "From: " . CompanyName. " <" . EmailAdmin. ">\r \n " ;
(Добавление)
а это убери
CODE (
html ):
скопировать код в буфер обмена
$message = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns= "http://www.w3.org/1999/xhtml" ><head ><meta http-equiv = "Content-Type" content = "text/html;charset=UTF-8" / ><title > ' . htmlentities($subject,ENT_COMPAT,'UTF-8') . '</ title ></ head > ';
Zakonoposlushniy
Отправлено: 28 Марта, 2016 - 11:10:15
Новичок
Покинул форум
Сообщений всего: 4
Дата рег-ции: Март 2016
Помог: 0 раз(а)
3d_killer пишет: PHP:
скопировать код в буфер обмена
$headers = "MIME-Version: 1.0\r \n " ;
$headers .= "Content-type: text/html; charset=UTF-8\r \n " ;
$headers .= "From: " . CompanyName. " <" . EmailAdmin. ">\r \n " ;
(Добавление)
а это убери
CODE (
html ):
скопировать код в буфер обмена
$message = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns= "http://www.w3.org/1999/xhtml" ><head ><meta http-equiv = "Content-Type" content = "text/html;charset=UTF-8" / ><title > ' . htmlentities($subject,ENT_COMPAT,'UTF-8') . '</ title ></ head > ';
Сделал как вы сказали, но проблема осталась.
Если я пишу так : Content-type: text/html - письма не приходят
Когда я исправляю на : Content-type: text/plain - письма приходят, но с лишним кодом в письме.
Zakonoposlushniy
Отправлено: 28 Марта, 2016 - 11:15:47
Новичок
Покинул форум
Сообщений всего: 4
Дата рег-ции: Март 2016
Помог: 0 раз(а)
3d_killer пишет: это тоже не понятно зачем htmlentities
Я сам не знаю
Просто я в PHP дилетант. А сайт создавал в Adobe Muse
Поиск в теме | Версия для печати
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
Powered by ExBB FM 1.0 RC1. InvisionExBB