php send mail (тело сообщения взято из базы данных) - PullRequest
0 голосов
/ 19 сентября 2011
$message = '
<html>
<head>
 <title>Haftalık Rapor</title>
</head>
<body>
 <table border="4" width="100%" cellpadding="2" cellspacing="3">
<tr>
   <td bgcolor="#FF0000" align="center">Plaka no:</td>
 <td bgcolor="#FF0000" align="center">Aracin Cinsi:</td>
 <td bgcolor="#FF0000" align="center">Sikayet edilme sebebi:</td>
 <td bgcolor="#FF0000" align="center">Tarih:</td>
 </tr> 
     $con = mysql_connect("", "", "", "","");
        if (!$con){die('Could not connect: ' . mysql_error());}
            mysql_select_db("", $con);
    $bilgi= mysql_query("SELECT plakano,aciklama,secim,tarih FROM bad ORDER BY tarih ASC"); 
    while($sutun= mysql_fetch_array($bilgi))
    {  
        echo "<tr>";
        echo "<td align='center'> ".$sutun["plakano"]."</td>";
        echo "<td align='center'> ".$sutun["secim"]."</td>";
        echo "<td align='center'> ".$sutun["aciklama"]."</td>";
        echo "<td align='center'> ".$sutun["tarih"]."</td>";
        echo "</tr>";
    }

 ';

это почтовый пример. Но я хочу, чтобы сообщение о почте, взятой из базы данных, могло кому-нибудь помочь, этот код имеет синтаксис, но не уверен, как его решить.

Ответы [ 5 ]

3 голосов
/ 19 сентября 2011
$message = '
<html>
<head>
 <title>Haftalık Rapor</title>
</head>
<body>
 <table border="4" width="100%" cellpadding="2" cellspacing="3">
<tr>
   <td bgcolor="#FF0000" align="center">Plaka no:</td>
 <td bgcolor="#FF0000" align="center">Aracin Cinsi:</td>
 <td bgcolor="#FF0000" align="center">Sikayet edilme sebebi:</td>
 <td bgcolor="#FF0000" align="center">Tarih:</td>
 </tr> ';
     $con = mysql_connect("", "", "", "","");
        if (!$con){die('Could not connect: ' . mysql_error());}
            mysql_select_db("", $con);
    $bilgi= mysql_query("SELECT plakano,aciklama,secim,tarih FROM bad ORDER BY tarih ASC"); 
    while($sutun= mysql_fetch_array($bilgi))
    {  
        $message .= "<tr>";
        $message .= "<td align='center'> ".$sutun["plakano"]."</td>";
        $message .= "<td align='center'> ".$sutun["secim"]."</td>";
        $message .= "<td align='center'> ".$sutun["aciklama"]."</td>";
        $message .= "<td align='center'> ".$sutun["tarih"]."</td>";
        $message .= "</tr>";
    }
1 голос
/ 19 сентября 2011

Я полагаю, что у вас уже есть сообщение в вашей БД, тогда все, что вам нужно, это ВЫБРАТЬ сообщение, сохранить его в переменной и затем вызвать ваш $message var.

Невызовите приведенный ниже код внутри вашего $ message var:

 $con = mysql_connect("", "", "", "","");
        if (!$con){die('Could not connect: ' . mysql_error());}
            mysql_select_db("", $con);
    $bilgi= mysql_query("SELECT plakano,aciklama,secim,tarih FROM bad ORDER BY tarih ASC"); 
    while($sutun= mysql_fetch_array($bilgi))
    {  
        echo "<tr>";
        echo "<td align='center'> ".$sutun["plakano"]."</td>";
        echo "<td align='center'> ".$sutun["secim"]."</td>";
        echo "<td align='center'> ".$sutun["aciklama"]."</td>";
        echo "<td align='center'> ".$sutun["tarih"]."</td>";
        echo "</tr>";
    }

вызовите его перед $ message и сохраните значения в других переменных -> $plakano = $sutun["plakano"]

Окончательный варианткод выглядит примерно так:

$con = mysql_connect("", "", "", "","");
        if (!$con){die('Could not connect: ' . mysql_error());}
            mysql_select_db("", $con);
    $bilgi= mysql_query("SELECT plakano,aciklama,secim,tarih FROM bad ORDER BY tarih ASC"); 
    while($sutun= mysql_fetch_array($bilgi))
    {  

        $plakano  = $sutun["plakano"];
        $secim    = $sutun["secim"];
        $aciklama = $sutun["aciklama"];
        $tarih    = $sutun["tarih"];

    $tr .= '
         <tr>
           <td> $plakano </td> <td> $secim </td>  <td> $aciklama </td>  <td> $tarih </td>
         </tr>';
    }


$message = '
 <table border="4" width="100%" cellpadding="2" cellspacing="3">
   <tr>
     <td bgcolor="#FF0000" align="center">Plaka no:</td>
     <td bgcolor="#FF0000" align="center">Aracin Cinsi:</td>
     <td bgcolor="#FF0000" align="center">Sikayet edilme sebebi:</td>
     <td bgcolor="#FF0000" align="center">Tarih:</td>
   </tr>
    ' . $tr . '
 </table> 
 ';

// Send email (I suppose you getting the $to $subject and $headers from somewhere)
mail($to, $subject, $message, $headers);
1 голос
/ 19 сентября 2011

Простой:

<?php
// do database query to get email template
$body = $row['name_of_column_containing_message_template_html'];
mail($to, $subject, $body, $headers);
1 голос
/ 19 сентября 2011

PHP-код должен быть внутри тегов. Также вместо того, чтобы отображать данные, вы должны добавить их к сообщению.

$message = '<html>
<head>
 <title>Haftalık Rapor</title>
</head>
<body>
 <table border="4" width="100%" cellpadding="2" cellspacing="3">
<tr>
   <td bgcolor="#FF0000" align="center">Plaka no:</td>
 <td bgcolor="#FF0000" align="center">Aracin Cinsi:</td>
 <td bgcolor="#FF0000" align="center">Sikayet edilme sebebi:</td>
 <td bgcolor="#FF0000" align="center">Tarih:</td>
 </tr>';
$con = mysql_connect("", "", "", "","");
if (!$con){die('Could not connect: ' . mysql_error());}
mysql_select_db("", $con);
$bilgi= mysql_query("SELECT plakano,aciklama,secim,tarih FROM bad ORDER BY tarih ASC"); 

while($sutun= mysql_fetch_array($bilgi))
{  
    $message .= "<tr>";
    $message .= "<td align='center'> ".$sutun["plakano"]."</td>";
    $message .= "<td align='center'> ".$sutun["secim"]."</td>";
    $message .= "<td align='center'> ".$sutun["aciklama"]."</td>";
    $message .= "<td align='center'> ".$sutun["tarih"]."</td>";
    $message .= "</tr>";
}
0 голосов
/ 19 сентября 2011

у вас есть php-код внутри текста сообщения. Также у вас есть неэкранированные ' теги в их тоже.

Вам нужно разделить этот код так, чтобы он извлекал базу данных вне назначения $ message.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...