2017-09-01 16 views
2

PHPメーラーを使用して、添付ファイル付きの - メールを送信する最も簡単な方法を試しています。PHPメーラーでの簡単なPDFファイルの添付

私はこの

$mail ->addAttachment("path_to_pdf", "pdf_name); 

を使用してみましたが、「メールが送信された」ではなく「PDFファイルの添付」が送られていないので、それは、仕事をdoes't。

私の問題を解決するのを手伝ってください。私は受信者に送信したい電子メールにpdfファイルを添付します。ありがとう!

私は添付ファイル付きのメールを送信するために私が使用したファイルです。

index.htmlを

 <html> 
     <head> 
     </head> 
     <body> 
      <form method="post" action="send_mail.php" enctype="multipart/form-data"> 
      To : <input type="text" name="mail_to"> <br/> 
      Subject : <input type="text" name="mail_sub"> 
      <br/> 
      Message <input type="text" name="mail_msg"> 
      <br/> 
      File: <input type="file" name="file" > 
      <br/> 
       <input type="submit" value="Send Email"> 

      </form> 
     </body> 
    </html> 

send_mail.php

 <?php 

     $mailto = $_POST['mail_to']; 
     $mailSub = $_POST['mail_sub']; 
     $mailMsg = $_POST['mail_msg']; 
     require 'PHPMailer-master/PHPMailerAutoload.php'; 
     $mail = new PHPMailer(); 
     $mail ->IsSmtp(); 
     $mail ->SMTPDebug = 0; 
     $mail ->SMTPAuth = true; 
     $mail ->SMTPSecure = 'ssl'; 
     $mail ->Host = "smtp.gmail.com"; 
     $mail ->Port = 465; // or 587 
     $mail ->IsHTML(true); 
     $mail ->Username = "[email protected]"; 
     $mail ->Password = "accountsamplepassword"; 
     $mail ->SetFrom("[email protected]"); 
     $mail ->Subject = $mailSub; 
     $mail ->Body = $mailMsg; 
     $mail ->AddAddress($mailto); 
     $mail->AddAttachment('pdf_files/', 'reservation.pdf'); 


     if(!$mail->Send()) 
     { 
      echo "Mail Not Sent"; 
     } 
     else 
     { 
      echo "Mail Sent"; 
     } 

    ?> 

私の問題で私を助けてください、ありがとう!

+1

を、そして親切にそれをできるだけ早く変更してください。正確な問題とそれに直面している場所をさらに明確にしてください –

+0

問題のパスワードを変更しても、編集履歴が表示されるので役立ちません。だから、あなたのアカウントのパスワードを変更する必要があります!バマー:| –

+0

ハハハハロー、大丈夫です。アカウントは正当なアカウントではありませんでした。私はダミーのテストに使用しました:) –

答えて

1

この行は、あなたが

$mail->AddAttachment('pdf_files/', 'reservation.pdf'); 

それは「/ PDF_Filesの」という名前のファイルを見つけようとすると、それを追加したい期待するもの行いません。しかし、あなたが想像しているように、これは適切なファイル名ではありません。 AddAttachmentの最初の引数は、ファイルのパス(ファイルのファイル名を含む)です.2番目のパラメータは、と表示され、と表示されます。ファイルの名前/元のファイルの名前を変更することなく、別の方法で呼び出すことができます。

ので、上記の行は、おそらく次のようになります。それはあなたが使用して実際のパスワードなら

$mail->AddAttachment('pdf_files/reservation.pdf', 'reservation.pdf'); 
+0

これはいかがですか? –

+0

$ mail - > AddAttachment( 'pdf_files /'。$ _POST ['pdf_name']、 'reservation.pdf'); –

+1

@LapizStoneは悪い考えのように聞こえる。誰かが '' ../../ config.php ''などを投稿し、サーバーのパスワード(または少なくともデータベースのパスワード)を見つけることができるので、あなたの入力を浄化したいと思うでしょう。このように設定ファイル。 – Jakumi

関連する問題