Как я могу отправить результаты запроса оракула по электронной почте. Я бы предпочел прикрепить к электронной почте в виде файла Excel.

0

Мне нужно отправить эту таблицу по электронной почте в качестве приложения Excel, используя PhpExcel и PhpMailer. Эта таблица является результатом запроса моего DB оракула. Мне нужно знать, как я могу использовать PhpExcel для записи этой таблицы в Excel, а затем присоединить ее к адресу электронной почты с помощью phpMailer и, наконец, отправить его. Заранее спасибо.

<?php

$username = "xxx";
$passwd = "yyy";
$db="(DESCRIPTION =
   (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 123.43.56.789)(PORT = 1234))

   )
   (CONNECT_DATA =

     (SERVICE_NAME = xxx)


   )
  )";

$c = OCILogon($username,$passwd,$db);
if (!$c)
{
    echo "Connection failed";

}
else
{
    echo "We are connected to KYC.Querying DB now...Please wait... ";
}

$s = oci_parse($c, "
select MSISDN SUBSCRIBER_NUMBER, OUTLET_NUMBER,time_stamp, Company,NAMES SUBSCRIBER_NAME,GENDER, DOB DATE_OF_BIRTH,Dealer_name Dealer_name,  Agent_name 
from subscribers  where time_stamp between trunc(sysdate)-1 And trunc(sysdate)-1/86400 order by time_stamp");

if (!$s) {
$e = oci_error($c);
trigger_error('Could not parse statement: '. $e['message'], E_USER_ERROR);
}
$r = oci_execute($s);
if (!$r) {
$e = oci_error($s);
trigger_error('Could not execute statement: '. $e['message'], E_USER_ERROR);
    }


$html .= '<table width="720" border="0" cellspacing="0" cellpadding="0">
 <tr>
 <th class="header" colspan="7"> KYC Details</th>
 <tr>

 <tr>
  <th>SUBSCRIBER_NUMBER</th>
  <th>OUTLET_NUMBER</th>
  <th>TIME_STAMP</th>
  <th>COMPANY</th>
  <th>SUBSCRIBER_NAME</th>
  <th>GENDER</th>
  <th>DATE_OF_BIRTH</th>
<tr>';


while($rows=oci_fetch_array($s, OCI_ASSOC+OCI_RETURN_NULLS)){
        $sub = $rows['SUBSCRIBER_NUMBER'];
        $agt = $rows['OUTLET_NUMBER'];
        $tim = $rows['TIME_STAMP'];
        $com = $rows['COMPANY'];
        $nam = $rows['SUBSCRIBER_NAME'];
        $sex = $rows['GENDER'];
        $dob = $rows['DATE_OF_BIRTH'];

$html .= '<tr>
        <td>'.$sub.'</td>
        <td>'.$agt.'</td>
        <td>'.$tim.'</td>
        <td>'.$com.'</td>
        <td>'.$nam.'</td>
        <td>'.$sex.'</td>
        <td>'.$dob.'</td>';
$html .= '<tr>';

    }
$html .='</table><hr>';

echo $html;

?>
Теги:
excel
email

1 ответ

1

Я бы проигнорировал материал HTML и просто написал его как файл значений с разделителями-запятыми с новой строкой после каждой записи, затем откройте это в Excel и сохраните его как XLSX.

  • 0
    $ html - это просто переменная, к которой я добавил таблицу. Таким образом, вся таблица результатов хранится в переменной
  • 0
    Вы пытались взять полученный файл и сохранить его с расширением ".xlsx", а затем открыть его в Excel? Excel может читать таблицы в формате HTML.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню