2

私の 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 から適切なアカウントを取得しています。必要なファイルは私のディレクトリにあります。必要なファイルへのパスが間違っていますか?

4

2 に答える 2

1

問題は、SendGrid ライブラリが Heroku のリポジトリにないことでした。「git status」を実行してディレクトリをコミットに追加し、そのディレクトリを Heroku にプッシュするだけです。PHP コードの「include」にも正しいパスがあることを確認してください。

于 2013-01-31T15:59:06.053 に答える
0

これは、Sendgrid の 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';
}
于 2013-10-22T01:29:15.197 に答える