PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Ошибка Parse error: syntax error, unexpected 'From' (T_STRING)
gbroot
Отправлено: 20 Августа, 2017 - 13:27:42
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Авг. 2017  


Помог: 0 раз(а)




Решил запустить сервис перевозок, написал лендинг, html/css, появилась необходимость в форме бронирования мест, что бы данные приходили на почту, написал форму, пришло время скрипта для отправки сообщений, в php сам вообще не "Бум-Бум", нашел в интернете генератор почтовой формы для php, сгенерировал и добавило пару своих строк. Залил все на хост, попытался протестировать форму, а она выдает вот такую ошибку после нажатия на кнопку отправить

Ошибка Parse error: syntax error, unexpected 'From' (T_STRING)

Ошибка в 13 строке. Вот код формы, посмотрите может подскажете как исправить. Буду очень благодарен!

PHP код отправки сообщений
PHP:
скопировать код в буфер обмена
  1. <?
  2. $name = $_POST["name"];
  3. $email = $_POST["email"];
  4. $puti = $_POST["puti"];
  5. $kolvo = $_POST["kolvo"];
  6. $phone = $_POST["phone"];
  7. $otk = $_POST["otk"];
  8. $kud = $_POST["kud"];
  9. $br = "gmail.com";
  10.  
  11. mail("perevozki.bilet@$br", "письмо с сайта", " от $name
  12. email-отправителя: $email
  13. "From: <$email>\nContent-type: text/plain; charset=utf-8");
  14. Header("Content-type: text/html");
  15.  
  16. echo "<p/><div align=center>" . $name . ", Ваше письмо отправлено успешно.<p/><a href='JavaScript:history.back()'>НАЗАД</a> "
  17. ?>


Html код формы
CODE (html):
скопировать код в буфер обмена
  1. <form action="email.php" name=mailer method=POST>
  2. <div class="fields-grid">
  3. <div class="styled-input agile-styled-input-top">
  4. <input type=text name=name" required="">
  5. <label>ФИО</label>
  6. <span></span>
  7. </div>
  8. <div class="styled-input agile-styled-input-top">
  9. <input type=text name=phone required="">
  10. <label>Телефон</label>
  11. <span></span>
  12. </div>
  13. <div class="styled-input agile-styled-input-top">
  14. <input type=text name=email required="">
  15. <label>Email</label>
  16. <span></span>
  17. </div>
  18. <div class="styled-input agile-styled-input-top">
  19. <input type=text name=kolvo required="">
  20. <label>Количество бронируемых мест</label>
  21. <span></span>
  22. </div><center>
  23. <div class="styled-input agile-styled-input-top">
  24. <input type=text name=otk required="">
  25. <label>Откуда едете?</label>
  26. <span></span>
  27. </div>
  28. <div class="styled-input agile-styled-input-top">
  29. <input type=text name=kud required="">
  30. <label>Куда едете?</label>
  31. <span></span>
  32. </div>
  33. </center>
  34. <div class="clearfix"> </div>
  35. </div>
  36. <center><input type=submit value="Oтправить"></center>
  37. </form>

(Отредактировано автором: 20 Августа, 2017 - 13:29:01)

 
 Top
teleoperator27
Отправлено: 20 Августа, 2017 - 13:59:23
Post Id



Частый гость


Просматривает форум
Сообщений всего: 187
Дата рег-ции: Янв. 2017  


Помог: 17 раз(а)




вот это
CODE (htmlphp):
скопировать код в буфер обмена
  1. mail("perevozki.bilet@$br", "письмо с сайта", " от $name
  2. email-отправителя: $email
  3. "From: <$email>\nContent-type: text/plain; charset=utf-8");


замени на это

CODE (htmlphp):
скопировать код в буфер обмена
  1. mail("perevozki.bilet@$gmail.com", "письмо с сайта", " от ".$name." email-отправителя: ".$email." From: < ".$email." >\nContent-type: text/plain; charset=utf-8");
 
My status
 Top
gbroot
Отправлено: 20 Августа, 2017 - 14:21:08
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Авг. 2017  


Помог: 0 раз(а)




Спасибо, ошибок больше нет. Но сообщения на почту не приходят, написал в поддержку хостинга, может там подскажут
 
 Top
teleoperator27
Отправлено: 20 Августа, 2017 - 14:56:00
Post Id



Частый гость


Просматривает форум
Сообщений всего: 187
Дата рег-ции: Янв. 2017  


Помог: 17 раз(а)




скорей всего тупо в спам валятся
 
My status
 Top
gbroot
Отправлено: 20 Августа, 2017 - 15:05:42
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Авг. 2017  


Помог: 0 раз(а)




Не, спам первым делом проверил. Там нет ничего
 
 Top
teleoperator27
Отправлено: 20 Августа, 2017 - 15:23:43
Post Id



Частый гость


Просматривает форум
Сообщений всего: 187
Дата рег-ции: Янв. 2017  


Помог: 17 раз(а)




НУ видно же, что в емэйле "кому" ошибка.

убери все это, вот так правильно

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. $name = $_POST["name"];
  3. $email = $_POST["email"];
  4. $puti = $_POST["puti"];
  5. $kolvo = $_POST["kolvo"];
  6. $phone = $_POST["phone"];
  7. $otk = $_POST["otk"];
  8. $kud = $_POST["kud"];
  9. //тут должна быть валидация принятых данных
  10. $to      = "perevozki.bilet@gmail.com";
  11. $subject = "письмо с сайта";
  12. $message = " от ".$name." email-отправителя: ".$email;
  13. $headers = "From: 'noreply@'" . $_SERVER['SERVER_NAME']. " \r\n" .
  14.     "Reply-To: ".$email." \r\n";    
  15. mail($to, $subject, $message, $headers);
 
My status
 Top
gbroot
Отправлено: 20 Августа, 2017 - 16:40:03
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Авг. 2017  


Помог: 0 раз(а)




teleoperator27
Про валидацию принятых данных можно подробнее? А то я вообще не шарю как это должно работать.
Плюс вот ответ поддержки "в скрипте, отвечающем за отправку писем, должен обязательно быть заголовок
PHP:
скопировать код в буфер обмена
  1. From:
  2. $headers = 'From: happyuser@zzz.com.ua' . "\r\n"
.
где ser@happy.zzz.com.ua - это почтовый ящик, с которого отправляются письма."
Почта созданная на хосте с перенаправлением на gmail вот bilet@perevoz.kl.com.ua
Плюс в форме которую ты написал нет перенаправления на "Ваше сообщение отправлено успешно.
В общем если уж на то пошло, можешь добавить в скрипт "Ваше сообщение успешно отправлено" и ту строку что прислала поддержка. Буду очень благодарен!!!

(Отредактировано автором: 20 Августа, 2017 - 16:47:41)

 
 Top
teleoperator27
Отправлено: 20 Августа, 2017 - 18:29:39
Post Id



Частый гость


Просматривает форум
Сообщений всего: 187
Дата рег-ции: Янв. 2017  


Помог: 17 раз(а)




PHP:
скопировать код в буфер обмена
  1. $ret = mail($to, $subject, $message, $headers);
  2. if($ret){
  3. echo 'Письмо отправлено';
  4. }else{
  5. echo 'Письмо не отправлено';
  6. }
Куда вставить сам догадаешься?

Валидация это проверка формы. Если поля не заполнены или например, проверка корректности заполнения емэйла.
 
My status
 Top
gbroot
Отправлено: 20 Августа, 2017 - 18:38:04
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Авг. 2017  


Помог: 0 раз(а)




Да, понял. СПАСИБО!
Что бы в репутацию добавить тебе спасибо пишет что не хватает сообщений
 
 Top
teleoperator27
Отправлено: 20 Августа, 2017 - 18:54:56
Post Id



Частый гость


Просматривает форум
Сообщений всего: 187
Дата рег-ции: Янв. 2017  


Помог: 17 раз(а)




gbroot пишет:
Что бы в репутацию добавить тебе спасибо пишет что не хватает сообщений
пофиг
 
My status
 Top
MouseZver
Отправлено: 20 Августа, 2017 - 21:33:29
Post Id



Новичок


Покинул форум
Сообщений всего: 39
Дата рег-ции: Июнь 2017  
Откуда: php.ru


Помог: 1 раз(а)




Как правильно составить валидацию и отправку емайла
https://github[dot]com/MouseZver/My-[dot][dot][dot]/64708/index.php
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Если скрипт не работает »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB