mysql和php——条目太多??时事通讯

trnvg8h3  于 2021-06-25  发布在  Mysql
关注(0)|答案(0)|浏览(354)

所以我试着给2560封邮件发一份时事通讯。php脚本为表中的每封电子邮件创建一个条目,每15分钟发送50封邮件,这样服务器就不会忙了。
问题是,当我试图发送通讯到所有2560封电子邮件,我得到一个404页,当我只选择我的电子邮件,一切如常。我认为有一些限制阻止mysql添加那么多条目,那么快。
有办法解决吗?
代码部分:

$conn =  sfContext::getInstance()->getDatabaseManager()->getDatabase('doctrine')->getDoctrineConnection(); 

    ini_set('memory_limit', '1024M');
    set_time_limit(0);
    try 
    { 

    $conn->beginTransaction();

    foreach ($to as $email => $name)
    {
      if (is_integer($email))
      {
        $email = $name;
      }

      $hash = substr(md5($email), 0, 5);

      //save to cron job

      $html = str_replace(array('[+hash+]', '[+email+]'),array($hash, $email), $content);

      $query = $conn->prepare($sql = "INSERT INTO CronEmail (sendto_name, sendto_email, from_name, from_email, subject, message, created_at)
       VALUES (:sendto_name, :sendto_email, :from_name, :from_email, :subject, :message, :created_at);");

      $query->execute(
        array('sendto_name' => $name,
            'sendto_email' => $email,
            'from_name' => "Newsletter " . $fromsite,
            'from_email' =>  "newsletter@office.ro",
            'subject' => $newsletter->getSubject(),
            'message' => $html,
           'created_at' => date('Y-m-d H:i:s'))
       );

    }

    $conn->commit();

    }catch (Doctrine_Exception $e) { // Rollback if transaction fail 
      $conn->rollback(); 
      echo $sql;  
      echo $e->getMessage();
      die();
    }

    $this->getUser()->setFlash('alert', '<div class="alert_ok">Newsletterul a fost salvat si va fi trimis!</div>');

    $this->redirect('newsletter_send/index');
  }
}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题