Гиперссылка, встроенная в таблицу в функции PHP mail () - PullRequest
0 голосов
/ 17 июня 2020

У меня возникают проблемы с отображением гиперссылок в таблице в электронном письме, в то время как приведенное ниже работает нормально, т.е. я вижу гиперссылки, когда отправляю электронное письмо.

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

$message = "<a href=\"https://mysite1.com/staging/index.php?edit=\" >Edit</a>";

Это ниже не работает, у меня пустое электронное письмо (отлично работает, когда я удаляю две гиперссылки).

 foreach($checkoutRows as $checkoutRow) { 

                    $jobTitle = $checkoutRow['jobTitle'];
                    $checkoutDate = $checkoutRow['checkoutDate'];

                    $date = date_create($checkoutDate);
                    $datePosted = date_format($date,"Y/m/d");   

                        $message .="<tr>
                            <td>$datePosted</td>
                            <td>$jobTitle</td>
                        <td><a href=\"https://mysite1.com/staging/index.php?edit=\" >Edit</a></td> 
                        <td><a href=\"https://mysite1.com/staging/index.php?delete=\" >Delete</a></td> 
                        </tr>";
                     } 

РЕДАКТИРОВАТЬ:

Вот весь код, который отправляет электронное письмо, дайте мне знать, если вы нужна дополнительная информация.

$to = 'jane@mail.com';
$subject = 'Hello Jane';
$from = 'joe@mail.com';

// To send HTML mail, the Content-type header must be set
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

// Create email headers
$headers .= 'From: '.$from."\r\n".
    'Reply-To: '.$from."\r\n" .
    'X-Mailer: PHP/' . phpversion();

// Compose a simple HTML email message

$message = "
<html>
<head>
<title>Title</title>
</head>
<body>
<div>
  <h1 style='color:#f44336;'>Title</h1>            
  <h3>Subtitle:</h3>
<table style='border-collapse:collapse;'> 
                <thead>
                    <tr>
                        <th>Date Posted</th>
                        <th>Company</th>
                        <th>Job Title</th>
                        <th>Edit</th>
                        <th>Delete</th>
                    </tr>    
                </thead>
                <tbody>";
                    foreach($checkoutRows as $checkoutRow) { 

                        $jobId = $checkoutRow['jobId'];
                         $jobTitle = $checkoutRow['jobTitle'];
                        $checkoutDate = $checkoutRow['checkoutDate'];

                        $date = date_create($checkoutDate);
                        $datePosted = date_format($date,"Y/m/d");   

                        $message .="<tr>
                            <td>$datePosted</td>
                            <td>$jobTitle</td>
                            <td><a href=\"https://mysite1.com/staging/index.php?edit=\" >Edit</a></td> 
                            <td><a href=\"https://mysite1.com/staging/index.php?delete=\" >Delete</a></td> 
                        </tr>";
                     } 
                $message .= "</tbody>
            </table>
            <p>Sincerely,<br>
             The Team</p>    
        </body>
        </html>"; //end of $message

1 Ответ

0 голосов
/ 19 июня 2020

Я решил свою проблему с помощью следующего кода. Теперь я могу отображать гиперссылки в теле письма в таблице html.

   $message .= "<tr>";
                        $message .= "<td>$datePosted</td>";
                        $message .= "<td>$jobTitle</td>";
                        $message .= "<td>";
                        $message .= "<a href=\"https://mysite1.com/staging/index.php?edit=$jobId\" >Edit</a>";
                        $message .= "</td>";
                        $message .= "<td>";
                        $message .= "<a href=\"https://mysite1.com/staging/index.php?del=$jobId\" >Delete</a>";
                        $message .= "</td>";
                        $message .= "</tr>";
...