drmet46444 2016-07-13 03:34
浏览 57
已采纳

PHP用于在给定时间自动为多个收件人发送电子邮件

i want to send a email for more than one recipients automatically every day 8:00 AM output of following sql Query

$sql10 ="SELECT     `X`.`wdate`,`X`.`line`,`X`.`style_no`,`X`.`po_no`,`P`.`order_qty`,`X`.`Line_O    ut`,`X`.`Final_QC_Out`,`X`.`Iron_Out`,`X`.`Refinal_Out`,`X`.`Packing_In`,`X`.     `Warehouse_In`   FROM(SELECT     `Q`.`wdate`,`Q`.`line`,`Q`.`style_no`,`Q`.`po_no`,SUM(IF(`Q`.`place`='Line_Ou    t',`Q`.`bsum`,0)) AS Line_Out,      SUM(IF(`Q`.`place`='Final_QC_Out',`Q`.`bsum`,0)) AS     Final_QC_Out,SUM(IF(`Q`.`place`='Iron_Out',`Q`.`bsum`,0)) AS Iron_Out, SUM(IF(`Q`.`place`='Refinal_Out',`Q`.`bsum`,0)) AS Refinal_Out, SUM(IF(`Q`.`place`='Packing_In',`Q`.`bsum`,0)) AS Packing_In, SUM(IF(Q.place='Warehouse_In',Q.bsum,0)) AS Warehouse_In FROM(SELECT `T`.`fac_code` , T.style_no , T.po_no , SUM( T.bcount ) AS bsum , `T`.`wdate` , `T`.`Place`,`T`.`line` FROM ( SELECT `W`.`fac_code` , `W`.`barcode_id` , `B`.`style_no` , `B`.`po_no` , `B`.`size` , `B`.`colour` , COUNT( `W`.`barcode_id` ) as `bcount`,`W`.`wdate`,`W`.`place`,`W`.`line` FROM wherin_tbl AS W , barcode_tbl AS B WHERE `W`.`barcode_id` = `B`.`barcode_id` GROUP BY `W`.`barcode_id` ,`W`.`fac_code`,`W`.`place`,`W`.`line`,`W`.`wdate` ) AS T WHERE `T`.`fac_code`='$_POST[fac_code]' AND `T`.`wdate` BETWEEN '$_POST[frdate]' AND '$_POST[trdate]'  GROUP BY `T`.`line`,`T`.`place`,`T`.`po_no`,`T`.`wdate`) AS Q GROUP BY `Q`.`wdate`,`Q`.`po_no`,`Q`.`line` ) as X, po_tbl AS P WHERE `X`.`po_no`=`P`.`po_no` AND `P`.`fac_code`='$_POST[fac_code]' ORDER BY `X`.`wdate`,`X`.`line`";

My Script:

<?php
echo "<table border='1' cellpadding='3' cellspacing='0'> ";
echo "<tr> <th>Date</th><th>Line</th> <th>Style No</th> <th>PO No</th><th    bgcolor='#CCCCFF'>Order Qty</th><th>Line Out</th><th>Final QC Out</th><th>Iron Out</th><th>Refinal Out</th><th>Packing In</th><th>Warehouse In</th>";
while ($row10=mysql_fetch_array($result10)){
echo "<tr>";
echo "<td>" . $row10['wdate'] . "</td>";
echo "<td> Line" . $row10['line'] . "</td>";
echo "<td>" . $row10['style_no'] . "</td>";
echo "<td>" . $row10['po_no'] . "</td>";
echo "<td bgcolor='#CCCCFF'>" . $row10['order_qty'] . "</td>";
echo "<td>" . $row10['Line_Out'] . "</td>";
echo "<td>" . $row10['Final_QC_Out'] . "</td>";
echo "<td>" . $row10['Iron_Out']. "</td>";
echo "<td>" . $row10['Refinal_Out'] . "</td>";
echo "<td>" . $row10['Packing_In'] . "</td>";
echo "<td>" . $row10['Warehouse_In'] . "</td>";
echo "</tr>";
}

echo "</table>";

?>

database structure for email address:

 email_tbl
sn | email         |location |
1  |test@vtex.com  | HO      |
2  |test2@vtex.com |TGK      |
3  |test3@vtex.com |HO       |
  • 写回答

1条回答 默认 最新

  • dongshijiao2363 2016-07-13 04:03
    关注

    This script should solve your immediate problem.

    The first block, which builds $msg, is based upon the code you provided since I don't have enough insight into your database setup to write something more modern. mysql_fetch_array and the whole group of mysql_ functions were deprecated in PHP 5.5.0 (see http://php.net/manual/en/function.mysql-fetch-array.php, http://php.net/manual/en/function.mysql-query.php, etc.) and should no longer be used. But since you've opened the database this way, I use it in the second code block too. Please consider getting comfortable with the PDO class, which is a vast improvement and will make your PHP/SQL a lot more stable (http://php.net/manual/en/class.pdostatement.php).

    $msg = "<table border='1' cellpadding='3' cellspacing='0'> ";
    $msg .= "<tr> <th>Date</th><th>Line</th> <th>Style No</th> <th>PO No</th><th    bgcolor='#CCCCFF'>Order Qty</th><th>Line Out</th><th>Final QC Out</th><th>Iron Out</th><th>Refinal Out</th><th>Packing In</th><th>Warehouse In</th>";
    while ( $row10 = mysql_fetch_array( $result10 ) ) {
      $msg .= "<tr>";
      $msg .= "<td>" . $row10['wdate'] . "</td>";
      $msg .= "<td> Line" . $row10['line'] . "</td>";
      $msg .= "<td>" . $row10['style_no'] . "</td>";
      $msg .= "<td>" . $row10['po_no'] . "</td>";
      $msg .= "<td bgcolor='#CCCCFF'>" . $row10['order_qty'] . "</td>";
      $msg .= "<td>" . $row10['Line_Out'] . "</td>";
      $msg .= "<td>" . $row10['Final_QC_Out'] . "</td>";
      $msg .= "<td>" . $row10['Iron_Out']. "</td>";
      $msg .= "<td>" . $row10['Refinal_Out'] . "</td>";
      $msg .= "<td>" . $row10['Packing_In'] . "</td>";
      $msg .= "<td>" . $row10['Warehouse_In'] . "</td>";
      $msg .= "</tr>";
    }
    $msg .= "</table>";
    
    $query = "SELECT email FROM email_tbl";
    if ( !$result = mysql_query( $query ) ) {
      $message  = 'Invalid query: ' . mysql_error() . "
    ";
      $message .= 'Whole query: ' . $query;
      die($message);
    }
    $to = '';
    while ( $row = mysql_fetch_assoc( $result ) ) {
      $to .= $row['email'] . ',';
    }
    rtrim( $to, "," );
    mysql_free_result( $result );
    
    $subject = "Morning email from Gayan";
    
    $headers = 'From: webmaster@example.com' . "
    " .
       'Reply-To: webmaster@example.com';
    
    if ( mail( $to, $subject, $msg, $headers ) ) {
      echo "Email sent successfully<br>";
    } else {
      echo "ERROR sending email<br>";
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 多址通信方式的抗噪声性能和系统容量对比
  • ¥15 winform的chart曲线生成时有凸起
  • ¥15 msix packaging tool打包问题
  • ¥15 finalshell节点的搭建代码和那个端口代码教程
  • ¥15 Centos / PETSc / PETGEM
  • ¥15 centos7.9 IPv6端口telnet和端口监控问题
  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 海浪数据 南海地区海况数据,波浪数据
  • ¥20 软件测试决策法疑问求解答