我有一个托管在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
根据DreamWeaver的第53行是
public $Priority = 3;
有谁知道为什么我可能会收到解析错误?
答案 0 :(得分:2)
服务器PHP版本问题。当Web服务器运行旧版本的PHP(可能是php4)并且您下载的phpmailer版本是针对PHP5时,会发生此错误。只有您的网络托管公司才能将PHP升级到新版本。
选项1 : 下载PHP4的phpmailer:link here。然后重命名(或删除)你现在拥有的phpmailer并将其替换为php4版本。
选项2:将网络托管服务提供商更改为提供更多现代化服务的提供商。
祝你好运!PS。一旦您决定接受答案,请点击此框左侧的“检查”,让社区了解您的问题已得到解决。
答案 1 :(得分:0)
如果您从此示例中创建了代码
http://phpmailer.worxware.com/index.php?pg=exampleasmtp
您使用的是版本5或更高版本。
如果您的php邮件版本由于php版本无效,请从链接下载phpmailer版本2.0.4
(感谢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->密码=“密码”;
花了我一个小时来弄明白!