2017-12-13 14 views
-1

私は、電子メール機能を作り、私の$mail->Bodyに私は私の$mail->BodyでHTML & PHPコードを使用するが、私は私がしたいことを結果を取得いけない、私は私のhtml & PHPのコードがあると思いますまだエラーですが、エラーメッセージが表示されないので、私のHTML & PHPコードで何が間違っているのか分かりません。私の$mail->Bodyコンテンツのエラーメッセージを表示できますか?私は、データベース内のデータを表示するための簡単なコードを使用する場合、私は電子メールショーHTML型の電子メールでのエラーメッセージおよびshowクエリ結果

を送信するために管理しているので、私は自分のコードの誤りを考えて、これは私のコードです:

$query = mysql_query("this is my query"); 

    while ($data = mysql_fetch_assoc($query)) { 

--I show my query result in `$mail->Body`-- 


$mail = new PHPMailer(); 
$mail->IsSMTP(); 
      $mail->Host = "172.16.x.xx"; //my company host 
      $mail->PORT = "25"; 
      $mail->SMTPAuth = true; 
      $mail->Username = "[email protected]"; //my company email 
      $mail->Password = "mypassword"; // SMTP password 
      $mail->IsHTML(true); 

      $mail->From = "[email protected]"; 
      $mail->FromName = "ITCareHelpdesk ACC"; 
      $mail->AddAddress("[email protected]");        
      $mail->mailtype = "html"; 
      $mail->Subject = "Weekly monitoring tiket open ITcare"; 
    $mail->Body =" 
    <table border=1> 
     <tr> 
     <th>Ticket ID</th> 
     <th>Kategori</th> 
     <th>Sub kategori</th>       
     <th>Deskripsi</th>       
     <th>NPK</th>       
     <th>Nama</th>       
     <th>Posisi</th>       
     <th>Branch</th>       
     <th>Waktu mulai</th>       
     <th>Group section</th>       
     <th>Pic Handle</th> 
     <th>Pic Group Section</th>             
     </tr> 


     <tr $color> 
      <td>$data[TICKET_ID]</td> 
      <td>$data[kategori]</td> 
      <td>$data[sub_sub_sub_kategori]</td> 
      <td>$data[description]</td> 
      <td>$data[npk]</td> 
      <td>$data[customer_name]</td> 
      <td>$data[position]</td> 
      <td>$data[branch]</td> 
      <td>$data[start_IT]</td> 
      <td>$data[group_section]</td> 
      <td>$data[pic_handle]</td> 
      <td>$data[pic_group_section]</td> 

     </tr> 

     </table>"; 
    } 

私はそれを送信しようとすると、私は、電子メールを取得するが、私のクエリ結果は1行だけを表示し、別の行は表示しません。

+0

完全な電子メールのコード –

+0

を追加します。私は、電子メールに来ている何@AmitGupta – pahlevi

+0

ましたか? –

答えて

0

あなたのEmailオブジェクトはwhileループで繰り返し繰り返されてはなりません。またループはあなたが$ mail-の完全な詳細を取得する必要がありながら、唯一のあなたのページにし、中に一度来なければなりません>以下のようなボディ:

$mail = new PHPMailer(); 
$mail->IsSMTP(); 
$mail->Host = "172.16.x.xx"; //my company host 
$mail->PORT = "25"; 
$mail->SMTPAuth = true; 
$mail->Username = "[email protected]"; //my company email 
$mail->Password = "mypassword"; // SMTP password 
$mail->IsHTML(true); 

$mail->From = "[email protected]"; 
$mail->FromName = "ITCareHelpdesk ACC"; 
$mail->AddAddress("[email protected]");        
$mail->mailtype = "html"; 
$mail->Subject = "Weekly monitoring tiket open ITcare"; 

$query = mysql_query("this is my query"); 
$body .= "<table border=1>"; 
while ($data = mysql_fetch_assoc($query)) { 
     // I show my query result in `$mail->Body` 
$body .= " 
    <tr> 
    <th>Ticket ID</th> 
    <th>Kategori</th> 
    <th>Sub kategori</th>       
    <th>Deskripsi</th>       
    <th>NPK</th>       
    <th>Nama</th>       
    <th>Posisi</th>       
    <th>Branch</th>       
    <th>Waktu mulai</th>       
    <th>Group section</th>       
    <th>Pic Handle</th> 
    <th>Pic Group Section</th>             
    </tr> 
    <tr $color> 
     <td>$data[TICKET_ID]</td> 
     <td>$data[kategori]</td> 
     <td>$data[sub_sub_sub_kategori]</td> 
     <td>$data[description]</td> 
     <td>$data[npk]</td> 
     <td>$data[customer_name]</td> 
     <td>$data[position]</td> 
     <td>$data[branch]</td> 
     <td>$data[start_IT]</td> 
     <td>$data[group_section]</td> 
     <td>$data[pic_handle]</td> 
     <td>$data[pic_group_section]</td> 
    </tr>"; 
} 
$body .= "</table>"; 
$mail->Body = $body; 
$mail->send(); 
+0

私はそれを試してみましたが、私の電子メールは送信されていません – pahlevi

+0

電子メールが来なければなりません。変更される$ mail-> Body部分だけがあります。休息はすべて同じです。 –

+0

$ mail-> Subjectの後ろに完全な$ mail-> Body部分を追加します。 –

0

コメントで物事のカップルが正しいですが、あなたはまた、ループ内に新しいメールオブジェクトを作成しています。これにより、1つの電子メール(最後のもの)が送信されます。

while(...) { 
    // create a new object 
    $obj = new Object(); 
    ... do stuff to $obj 
    ... repeat, but never use $obj 
} 

// Guessing, now is where you do stuff with $obj, 
// but this will be the last $obj created 
$obj->send(); 

は、私は2つのソリューションを作成、変更、およびループ内の各オブジェクトを使用して参照してください:これはあなたの構造である

while(...) { 
    // create a new object 
    $obj = new Object(); 
    ... do stuff to $obj 
    $obj->send(); 
} 

または単一のオブジェクトを作成し、変更し、その上に構築し、その後、使用単一のオブジェクト

関連する問題