Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ошибка синтаксиса, синтаксис mail 
:(
    Опции темы
Evgenyi
Дата 26.12.2018, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 19.12.2018

Репутация: нет
Всего: нет



Здравствуйте, помогите пожалуйста найти ошибку в коде. На сайте пишет ошибка 500, в логах написано синтаксическая ошибка, указаны кавычки и точки. А где именно, не пойму. Пытаюсь сделать форму на сайте и послать post запрос.

Код

mail("[email protected]", "Анкета", "Имя:".$username", "Фамилия:".$family."."email:" ..$email","From: "domen.ru" \r\n");
if (mail("[email protected]", "Анкета рекламодателя", "Имя:".$username", "Фамилия:".$family.","email:" ..$email","From: "domen.ru" \r\n"))
 { 
    echo "сообщение успешно отправлено"; 
} else { 
    echo "при отправке сообщения возникли ошибки"; 
}
    ?>

PM MAIL   Вверх
ksnk
Дата 26.12.2018, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



\r\n"); в конце параметров функции mail ни о чем не говорят ? Нужно пользоваться инструментом с подсветкой синтаксиса, так такие ошибки будут видны сразу


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Evgenyi
Дата 27.12.2018, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 19.12.2018

Репутация: нет
Всего: нет



Ничего не говорят, знаю только что это перенос строк, но тут же нет длинных имен. Убрал в конце кавычки(или не то сделал?)
Логи стали писать 2 ошибки.
mod_fcgid: stderr: PHP Warning:  call_user_func_array() expects parameter 1 to be a valid callback, function 'remheadlink' not found or invalid function name in /home/clients/arb_ftp0/domains/domen.ru/html/wp-includes/class-wp-hook.php on line 286
 mod_fcgid: stderr: PHP Parse error:  syntax error, unexpected '$username' (T_VARIABLE), expecting ',' or ')' in /home/clients/arb_ftp0/domains/domen.ru/html/proba/form.php on line 45, referer: http://domen.ru/proba/index.html

 mod_fcgid: stderr: PHP Parse error:  syntax error, unexpected 'register' (T_STRING), expecting ',' or ')' in /home/clients/arb_ftp0/domains/domen.ru/html/proba/form.php on line 46, referer: http://domen.ru/proba/index.html

 mod_fcgid: stderr: PHP Parse error:  syntax error, unexpected 'register' (T_STRING), expecting ',' or ')' in /home/clients/arb_ftp0/domains/domen.ru/html/proba/form.php on line 46, referer: http://domen.ru/proba/index.html

 mod_fcgid: stderr: PHP Parse error:  syntax error, unexpected 'register' (T_STRING), expecting ',' or ')' in /home/clients/arb_ftp0/domains/domen.ru/html/proba/form.php on line 46, referer: http://domen.ru/proba/index.html


Линия 45 и 46 приведена в первом посте, как 1 и 2.
PM MAIL   Вверх
ksnk
Дата 27.12.2018, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



,"From: "domen.ru" \r\n"); вот это замени на 

Код

,"From: \"domen.ru\" \r\n");

поставлено 2 слеша. Именно этого не хватало ?


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Evgenyi
Дата 27.12.2018, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 19.12.2018

Репутация: нет
Всего: нет



Не уверен, если это путь к домену, то у меня там адрес почты стоит,т.е. [email protected]

А если по аналогии, то    
,"From: \"[email protected]\" \r\n");


так правильно будет?

Это сообщение отредактировал(а) Evgenyi - 27.12.2018, 14:29
PM MAIL   Вверх
ksnk
Дата 27.12.2018, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



А php что говорит ? У него спросить, обычно. быстрее чем в форуме...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
whatisnot
Дата 27.12.2018, 20:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 14.12.2014

Репутация: 1
Всего: 2



Цитата(Evgenyi @  27.12.2018,  14:27 Найти цитируемый пост)
так правильно будет?


Вообще все не правильно. Ну что лень прочесть как грамотно оформляется почтовое отправление? В сети же по этому поводу уйма написано, и в официальном руководстве есть примеры без таких явных ляпов как у вас. 
PM MAIL   Вверх
Evgenyi
Дата 28.12.2018, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 19.12.2018

Репутация: нет
Всего: нет



Цитата(whatisnot @ 27.12.2018,  20:56)
Цитата(Evgenyi @  27.12.2018,  14:27 Найти цитируемый пост)
так правильно будет?


Вообще все не правильно. Ну что лень прочесть как грамотно оформляется почтовое отправление? В сети же по этому поводу уйма написано, и в официальном руководстве есть примеры без таких явных ляпов как у вас.

Вы будете смеяться, но это из сети и взято, на сайте одного человека, который все подробно объяснял. На других сайтах по-другому объясняют, на третьих по третьему, а в ютуб совсем все не так показывают. Так и не удалось найти толковый хелп на русском. Поэтому была надежда на форум. Поставил phpmailer, опять же, настройка непонятно как делается. На их сайте написано что просто взять и закинуть папку на сервер. А на сервере не обрабатывается эта папка, там тупо другие пути прописаны. Поставил свои пути, опять не работает. И на сайте пишут, вот код для установки - бла-бла код. Так и не поямнили, то ли этот код вставить надо в какой-то файл, то ли новый создать с произвольным именем, тогда не понятно, какое расширение ставить.Об этом нигде не сказано. Вобшем, затык какой-то.
А чем вы пользуетесь для отправки-получения почты?
PM MAIL   Вверх
whatisnot
Дата 28.12.2018, 18:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 14.12.2014

Репутация: 1
Всего: 2



Цитата(Evgenyi @  28.12.2018,  14:12 Найти цитируемый пост)
Вы будете смеяться, но это из сети и взято, на сайте одного человека, который все подробно объяснял. 


Тут плакать охота, а не смеяться, в руководство официальное нужно чаще заглядывать. Об ужасных синтаксических ошибках вам уже говорили. Но мало того, это ведь не отправка почты, это коммент для в какой либо сети, ну чушь полнейшая. Во-первых, сообщению нужно указывать кодировку. Это если на английском отправить письмо, то есть гарантия того, что даже китаец прочтет английское послание. А в остальном, это гадание на кофейной гуще. Кроме этого, кодировка указывается для тела письма, а на тему его не влияет, и не факт, что почтовый сервер или клиент прочтет "Анкета", он может увидеть и нечто непонятное. Тему письма кодируют. 

if(mail(...)) echo "сообщение успешно отправлено"; - это чушь, функция mail не отправляет никакой почты, она всего лишь передает почтовое отправление для отправки sendmail (или иной), и возвращенное ей true, сообщает только о том, что сообщение принято к отправлению, а будет ли оно отправлено или нет функции не ведомо. Но если оформлять почтовые сообщения абы как, то сервер его принимающий может его и вернуть назад с указанием ошибок, а за них хостер вам может и по шапке надавать - порт 25, это "святой порт".

Не можете делать этого грамотно сами, значит изучайте phpmailer, примеров его использования тоже в сети достаточно, и используйте его.

Сейчас некоторые хосты вообще запрещают использование функции mail, потому как много "начинающих писать" и пишущих как попало не проверяя даже входных данных для почты, и спамят через такую почту кому не лень. Но в таком случае есть возможность использовать отправление SMTP сервер Яндекса, Гугла и др., для отправки почты. Для этого требуется только иметь почтовый ящик у них.  

Это сообщение отредактировал(а) whatisnot - 28.12.2018, 18:19
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1286 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.