首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >PHPMailer autoload.php无法打开

PHPMailer autoload.php无法打开
EN

Stack Overflow用户
提问于 2018-12-14 03:54:59
回答 2查看 987关注 0票数 0

我目前在GoDaddy上托管了一个网站,最近我添加了一个联系人表单,当人们填写它时,它会给我发送电子邮件。当我使用XAMPP时,它工作得很好,但一旦我将相同的代码上传到GoDaddy服务器上,它就会给我一个HTTP ERROR 500

我使用的是PHPMailer和Gmail的SMTP服务。这是当前使用XAMPP的代码:

代码语言:javascript
复制
<?php

require_once "vendor/autoload.php";


$name = $_POST["name"];
$email_from = $_POST["email"];
$telephone = $_POST["telephone"];

$message = "Name:  ".$name."\r\n".
    "Email:  ".$email_from."\r\n".
    "Telephone:  ".$telephone."\r\n";

$email_to = "myemail@gmail.com";

if(isset($_POST['submit'])){

$mail = new PHPMailer\PHPMailer\PHPMailer;

$mail->isSMTP();
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->Username = "myemail@gmail.com";
$mail->Password = "password";
$mail->SMTPSecure = "tls";
$mail->Port = 587;


$mail->From = $email_from;
$mail->FromName = $name;
$mail->addAddress($email_to);

$mail->addReplyTo($email_from);
$mail->Subject = "Info";
$mail->Body = $message;


if ($_POST["submit"]){
    if(!$mail->send()){
        echo "Mailer error: " . $mail->ErrorInfo;
    }
    else{
        echo "Message sent successfully";
    }

}

}

因为它给了我HTTP ERROR 500,所以我决定查看GoDaddy给出的错误日志。这是错误:

[13-Dec-2018 19:33:13 UTC] PHP Fatal error: require_once(): Failed opening required '/home/namesearch/public_html/vendor/composer/autoload_real.php' (include_path='.:/opt/alt/php56/usr/share/pear:/opt/alt/php56/usr/share/php') in /home/namesearch/public_html/vendor/autoload.php on line 5

请帮帮我!我已经找到了无数的解决方案,我只是不知道如何解决它。我甚至尝试将我的路径设置为:/home/namesearch/public_html/vendor/composer/autoload_real.php/home/namesearch/public_html/vendor/composer/autoload.php,但都不起作用。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-12-14 04:03:09

我在这里添加了@h2ooooooo的评论。当我第一次开始学习composer时,这件事让我抓狂。正如他上面所说的,确保你已经上传了所有的依赖项,然后更新你的自动加载文件。但是,下面是如何做到这一点的:

1)转到您本地环境中的项目根目录。2)然后运行composer update 3)我建议重新上传整个项目,除非你使用filezilla文件夹比较来显示哪些文件是不同的,否则很难确定。

如果你是从git repo上传你的项目,那么仔细检查一下你的.gitignore文件没有忽略你的/vendor文件夹,因为它通常是默认的。

票数 1
EN

Stack Overflow用户

发布于 2018-12-14 04:01:34

我在配置胡子时也遇到了类似的问题,所以我希望这对我有所帮助。我的问题是下面这行:

代码语言:javascript
复制
require_once "vendor/autoload.php";

它没有拾取正确的PHP包含路径。

将文件夹的绝对路径添加到PHP包含路径中。将此代码放在require之前。

代码语言:javascript
复制
$includePath = get_include_path() . ";ABSOLUTE PATH OF FOLDER ONE LEVEL BELOW VENDOR";
set_include_path($includePath);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53769180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档