2016-07-07 29 views
0

ユーザーが登録ページの[送信]ボタンをクリックすると、管理者に電子メールを送信しようとしています。以下のコードは正常に動作し、管理者の電子メールアドレスの詳細をすべて取得します。私は2つの場所で立ち往生しています:添付ファイル付きの複数の電子メールに電子メールを送信

  1. CCを[email protected]にも送信したいと思います。私は$receiver = "[email protected],[email protected]";のような変数にコンマを入れようとしましたが、うまくいきません。メールは送信されません。このメールを2人の異なるユーザーに送信する方法を知っておく必要があります。
  2. $panph1変数は、サーバー上のファイル名を返します(この例では1467896354.jpg)。他のすべてのデータとともに、電子メール本体にファイル名を表示します。このファイルは/pancard/1467896354.jpgに保存されています。このメールに添付されている実際のファイルを入手するには、どのような変更が必要ですか?

おかげ

$subject = "New registration from $name "; 
$receiver = "[email protected]"; 
$prod_id1=$rowcc['prod_id']; 
$mobile1=$rowcc['mobile']; 
$reg=$rowcc['reg_date']; 
$ip1=$rowcc['ip']; 
$panno1=$rowcc['pan_no']; 
$panph1=$rowcc['pan_photo']; 
$message = "  
<html> 
<body> 
<table> 
    <tr> 
    <td>Product ID</td> 
    <td>:</td> 
    <td>$prod_id1</td> 
    </tr> 
    <tr> 
    <td>Name</td> 
    <td>:</td> 
    <td>$name</td> 
    </tr> 
    <tr> 
    <td>Email Address</td> 
    <td>:</td> 
    <td>$to</td> 
    </tr> 
    <tr> 
    <td>Mobile</td> 
    <td>:</td> 
    <td>$mobile1</td> 
    </tr> 
    <tr> 
    <td>Registration Date</td> 
    <td>:</td> 
    <td>$reg</td> 
    </tr> 
    <tr> 
    <td>IP Address</td> 
    <td>:</td> 
    <td>$ip1</td> 
    </tr> 
    <tr> 
    <td>Pan Card Number</td> 
    <td>:</td> 
    <td>$panno1</td> 
    </tr> 
    <tr> 
    <td>Pan Card Photo</td> 
    <td>:</td> 
    <td>$panph1</td> 
    </tr> 
</table> 
</body> 
</html> 
"; 
$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
$headers .= 'From:'.$from."\r\n" 
.'Reply-To: $receiver'."\r\n"; 

mail($receiver,$subject, $message, $headers); 
+0

可能な重複http://stackoverflow.com/questions/12301358/send-attachments-with-php-mail – ecorvo

+0

私は投稿する前に、私はこのページを見ました私の質問は、それはPHPMailerスクリプトについて語っていますが、私は自分のクラスを持っていて、 'mail()'関数は正常に動作します。そのちょうど私はCC(別の電子メール)とコンテンツタイプ/ヘッダー/添付ファイルを追加する構文を追加する正しい構文を知らない – Sabha

+0

電子メールのコピーを送信するためにこのヘッダーを置こうとしましたか? '$ headers。= 'Cc:[email protected]'。 "\ r \ n"; ' – Nick

答えて

1

なぜPhpMailerを使わないのでしょうか?

多くのPHP開発者は、電子メールをコード内で利用しています。これをサポートする唯一のPHP関数 はmail()関数です。ただし、 は、 HTMLベースの電子メールや添付ファイルなどの一般的な機能を使用するための支援を提供していません。ここで

phpmailerのを使った例です:

<?php 
require 'PHPMailerAutoload.php'; 

$mail = new PHPMailer; 

//$mail->SMTPDebug = 3;        // Enable verbose debug output 

$mail->isSMTP();          // Set mailer to use SMTP 
$mail->Host = 'smtpserver.com'; // Specify main SMTP server. If you dont have one us GMAL or mandrill 
$mail->SMTPAuth = true;        // Enable SMTP authentication 
$mail->Username = '[email protected]';     // SMTP username 
$mail->Password = 'pass';       // SMTP password 
$mail->SMTPSecure = 'tls';       // Enable TLS encryption, `ssl` also accepted 
$mail->Port = 587;         // TCP port to connect to 

$mail->setFrom('[email protected]', 'Mailer'); 
$mail->addAddress('[email protected]', 'Joe User');  // Add a recipient 
$mail->addAddress('[email protected]');    // Name is optional 
$mail->addReplyTo('[email protected]', 'Information'); 
$mail->addCC('[email protected]'); 
$mail->addBCC('[email protected]'); 

$mail->addAttachment('/var/tmp/file.tar.gz');   // Add attachments 
$mail->addAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name 
$mail->isHTML(true);         // Set email format to HTML 

$mail->Subject = 'Here is the subject'; 
$mail->Body = 'This is the HTML message body <b>in bold!</b>'; 
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients'; 

if(!$mail->send()) { 
    echo 'Message could not be sent.'; 
    echo 'Mailer Error: ' . $mail->ErrorInfo; 
} else { 
    echo 'Message has been sent'; 
} 
+0

あなたのソリューションは、私が使用しているものよりも優れているかもしれません。しかし、私は多くのファイルで多くのことを変更する必要があります。添付ファイルの送信とCCの追加に必要な特定の構文や特定のヘッダーがあると思っていました。私のコードを操作して結果を得ることができるかどうか教えてください。ありがとう – Sabha

+1

私は理解していますが、長期的にはより良いものになるでしょう。 php mail()関数には多くの制限があります。特にSMTP経由では送信できません。あなたの電子メールのほとんどは迷惑メールフォルダに到着するか、まったく到着しません。 – Nick

+0

私は懸念を理解しています。私は添付ファイルを送るだけが残っているので、これをできるだけ早く終了したい。私は次のプロジェクトでPhpMailerを使用します。アドバイスありがとうございます。 – Sabha

関連する問題