dsa88886666 2019-05-22 14:18
浏览 83
已采纳

Swiftmailer destinatarios mysql

I need to send multiple emails stored in a mysql database with phpmailer, but when I want to execute it it returns a 500 page error, I understand that the problem is when I enter the data inside:

->setTo(["'".$row['email']."'" => "'".$row['nombre']."'"])

I clarify that everything works perfect, only that when I enter any type of variable or call to the db within the: -> setTo (["'". $ row [' email ']. "'" => "'". $ row [' name ']. "'"]) It returns an error. This is my complete code:

<?php 
include ('../db.php');
$query =$db->query("SELECT id, email, status, nombre, enviados FROM 
contactos WHERE email='example@gmail.com' OR 
email='example@icloud.com'");
require_once './vendor/autoload.php';
// Create the Transport
$transport = (new Swift_SmtpTransport('smtp.hostinger.com.ar', 
587))
->setUsername('example@example.com')
->setPassword('example')
   ;

 // Create the Mailer using your created Transport
 $mailer = new Swift_Mailer($transport);

 // Create a message
 $message = (new Swift_Message('msm'))
  ->setFrom(['example@example.com' => 'John Doe'])

 $datos_seleccionados = [];
  while($row = mysqli_fetch_array($query))
  {
   ->setTo(["'".$row['email']."'" => "'".$row['nombre']."'"])

   }
   ->setBody('INTENTO')
   ;
   // Send the message
   $result = $mailer->send($message);

What I need is for me to take multiple recipients stored in my database

  • 写回答

1条回答 默认 最新

  • duanguoyin7008 2019-05-22 14:24
    关注
    <?php 
    include ('../db.php');
    $query =$db->query("SELECT id, email, status, nombre, enviados FROM 
    contactos WHERE email='example@gmail.com' OR 
    email='example@icloud.com'");
    require_once './vendor/autoload.php';
    // Create the Transport
    $transport = (new Swift_SmtpTransport('smtp.hostinger.com.ar', 
    587))
    ->setUsername('example@example.com')
    ->setPassword('example')
       ;
    
     // Create the Mailer using your created Transport
     $mailer = new Swift_Mailer($transport);
    
    
    
     $datos_seleccionados = [];
    $toEmailList=[];
      while($row = mysqli_fetch_array($query))
      {
        $toEmailList[$row['email']]=$row['nombre'];
    
       }
     // Create a message
     $message = (new Swift_Message('msm'))->setFrom(['example@example.com' => 'John Doe'])->setTo($toEmailList)->setBody('INTENTO');
       // Send the message
       $result = $mailer->send($message);
    

    Problem with your code is you are trying to concat key and value. You have to call all the function at once. Thanks

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 Matlab怎么求解含参的二重积分?
  • ¥15 苹果手机突然连不上wifi了?
  • ¥15 cgictest.cgi文件无法访问
  • ¥20 删除和修改功能无法调用
  • ¥15 kafka topic 所有分副本数修改
  • ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
  • ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
  • ¥40 串口调试助手打开串口后,keil5的代码就停止了
  • ¥15 电脑最近经常蓝屏,求大家看看哪的问题
  • ¥60 高价有偿求java辅导。工程量较大,价格你定,联系确定辅导后将采纳你的答案。希望能给出完整详细代码,并能解释回答我关于代码的疑问疑问,代码要求如下,联系我会发文档