【问题标题】:How can I install sendgrid app in Heroku using git (PHP)?如何使用 git (PHP) 在 Heroku 中安装 sendgrid 应用程序?
【发布时间】:2013-01-30 22:00:19
【问题描述】:

在我的 index.php 文件的顶部我有:

require('sendgrid-php/SendGrid_loader.php');

在底部我使用此代码发送电子邮件:

    <?php
       if(isset($_POST['submit']))
          {


          $sendgrid = new SendGrid('app11445063@heroku.com', 'password');

         $mail = new SendGrid\Mail();
          $mail->
             addTo('email@gmail.com')->
             setFrom('app11445063@heroku.com')->
             setSubject('Subject goes here')->
             setText('Hello World!')->
             setHtml('<strong>Hello World!</strong>');

          $sendgrid->
            smtp->
             send($mail);
    }
 ?>

我无法获取发送电子邮件的代码。我有来自 SendGrid 和 Heroku 的正确帐户。所需的文件在我的目录中。我的所需文件的路径是否错误?

【问题讨论】:

  • 您能否向我们提供您收到的错误消息?它肯定会帮助调试。 PHP 版本也会有所帮助。
  • 你好,斯威夫特。感谢您的回复。我目前没有任何错误消息。当我单击提交时,它什么也没做。您对 Heroku 的工作原理了解很多吗?我是否需要以某种方式将所需的库安装到他们的服务器中?
  • PHP 版本:5.3.1 Apache 版本:2.2.22

标签: heroku sendgrid


【解决方案1】:

问题是 SendGrid 库不在 Heroku 的存储库中。只需执行“git status”并将目录添加到提交,然后将目录推送到 Heroku。确保您在 PHP 代码的“包含”中也有正确的路径。

【讨论】:

  • 你能详细说明你的意思吗?我相信我遇到了同样的问题。
【解决方案2】:

我相信这与Sendgrid's PHP lib 有关。如果您使用 SMTP(如果使用 heroku,则必须),您还必须安装 swiftmailer。否则第 25 行将无法在 sendgrid-php/SendGrid/Smtp.php 中运行

public function __construct($username, $password){
/* check for SwiftMailer,
 * if it doesn't exist, try loading
 * it from Pear
 */
if (!class_exists('Swift')) {
  require_once 'swift_required.php';
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-19
    • 1970-01-01
    • 2013-03-23
    • 2014-10-09
    • 1970-01-01
    • 1970-01-01
    • 2013-01-02
    相关资源
    最近更新 更多