Ошибка синтаксического анализа PHP - PullRequest
0 голосов
/ 21 января 2011

У меня есть сайт, который размещен на хостинге inmotion и требует phpMailer для отправки формы электронной почты (например, контактной формы) с сайта. Я разместил необходимые файлы и код на странице контактов, но получаю сообщение об ошибке разбора после нажатия кнопки Отправить. Вот сообщение об ошибке:

Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/username/public_html/phpmailer/class.phpmailer.php on line 53

Строка 53 по DreamWeaver равна

public $Priority          = 3;

Кто-нибудь знает, почему я могу получить ошибку разбора?

Ответы [ 2 ]

2 голосов
/ 21 января 2011

Проблема с версией PHP сервера.Эта ошибка возникает, когда веб-сервер работает под управлением более старой версии PHP (возможно, php4), а загруженная вами версия phpmailer предназначена для PHP5.Только ваша веб-хостинговая компания может обновить PHP до новой версии.

опция 1 : Загрузите phpmailer для PHP4: ссылка здесь .Затем переименуйте (или удалите) phpmailer, который у вас есть, и замените его на версию php4.

, вариант 2: Измените хостинг-провайдеров на одного, предлагающего более современные возможности.

удачи!

пс.После того, как вы решили принять ответ, нажмите «флажок» слева от этого поля, чтобы сообщить сообществу, что ваша проблема решена.

0 голосов
/ 12 января 2012

если вы создали свой код из этого примера

http://phpmailer.worxware.com/index.php?pg=exampleasmtp

вы используете версию 5 или выше.

Если ваша версия php mailer не работает из-за версии php, загрузите версию 2.0.4 phpmailer по ссылке

http://sourceforge.net/projects/phpmailer/files/phpmailer%20for%20php4/PHPMailer%20v2.0.4%20for%20PHP4/

(спасибо, г-н.jpwco) и измените строки

$mail->SetFrom('name@yourdomain.com', 'First Last');

на

`$ mail-> From ='example@yahoo.com ';

$mail-> FromName = 'John Dorian';

и это будет работать.

Кстати, если вы собираетесь использовать учетную запись Yahoo для SMTP-почты, используйте

$mail->SMTPSecure = "ssl";

$ mail-> Host = "smtp.mail.yahoo.com";$ mail-> Port = 465;

$ mail-> Username = "mail_adress@yahoo.com";
$ mail-> Password = "password";

Мне потребовался час, чтобы понять это!

...