Php codeigniter电子邮件功能在发送多封带有附件的电子邮件时无法正常工作

Php codeigniter电子邮件功能在发送多封带有附件的电子邮件时无法正常工作,php,codeigniter,email,dompdf,Php,Codeigniter,Email,Dompdf,这是发送多封带有附件的电子邮件的代码。该循环仅运行了第一次。因此,它将邮件发送给第一个人,而所有剩余的人都没有收到邮件。这是我的代码。因为我从2天开始工作。但我仍然没有达到我犯错误的地方。我希望这是向你们学习的最佳时间。这是我的代码我的密码 ------------------------这就是我要克服的错误---------- 致命错误:未捕获异常“DOMPDF_exception”,消息为“未找到块级父级”。不好。'in/home/mycityon/public_html/navy/ap

这是发送多封带有附件的电子邮件的代码。该循环仅运行了第一次。因此,它将邮件发送给第一个人,而所有剩余的人都没有收到邮件。这是我的代码。因为我从2天开始工作。但我仍然没有达到我犯错误的地方。我希望这是向你们学习的最佳时间。这是我的代码我的密码


------------------------这就是我要克服的错误----------


致命错误:未捕获异常“DOMPDF_exception”,消息为“未找到块级父级”。不好。'in/home/mycityon/public_html/navy/application/libraries/dompd/include/inline_positioner.cls.php:38堆栈跟踪:#0/home/mycityon/public_html/navy/application/libraries/dompd/include/frame_decorator.cls(546):inline_positioner->position()#1/home/mycityon/public_html/navy/application/libraries/dompd/include/inline_frame_reflower.cls.php(37):frame_Decorator->position()#2/home/mycityon/public_html/navy/application/libraries/dompd/include/frame_Decorator.cls.php(556):inline_frame_reflower->reflow(NULL)#3/home/mycityon/public_html/navy/application/libraries/dompd/include/page_frame_reflower.cls.php(138):frame_Decorator->reflow()#4/home/mycityon/public_html/navy/application/libraries/dompd/include/frame_Decorator.cls.php(556):page_frame_reflower->reflow(NULL)#5/home/mycityon/public_html/navy/application/libraries/dompf/include/dompf.cls.php(817):Frame\u Decorator->reflow()#6/home/mycityon/public_in/home/mycityon/public_html/navy/application/libraries/dompd/include/inline\u positioner.cls.php第38行

因为我不知道到底是什么错误,所以这里是通用的解决方案

 $this->load->library('email');
 $this->email->from('noreply@example.com', 'Example');
 $this->email->to('to@example.com');
 $this->email->subject('Subject Goes Here');
 $this->email->message('Message goes here');
 $this->email->attach('Path/to/saved/filename.pdf');
 $this->email->send();
to参数也可以接受数组。这样您就可以一次发送给多个收件人。如果您希望在不隐藏其他收件人信息的情况下单独发送每封电子邮件,请使用foreach循环将其附上:

foreach($emails as $recipient){
     $this->email->from('noreply@example.com', 'Example');
     $this->email->to('to@example.com');
     $this->email->subject('Subject Goes Here');
     $this->email->message('Message goes here');
     $this->email->attach('Path/to/saved/filename.pdf');
     $this->email->send();
}
希望这能有所帮助

您可能希望检索申请者列表,如下所示:

$query = $this->db->get('table_name'); // This will get all rows in your applicant table.
$result = $query->result();
echo "<pre>"; print_r($result); die(); // Will print all applicants in your table.
$query=$this->db->get('table_name');//这将获取申请人表中的所有行。
$result=$query->result();
回声“;打印(结果);模具();//将打印表中的所有申请者。

然后,您可以从foreach循环中进一步处理它。

我认为修复方法是重新实例化dompdf。请参见以下内容,

您会遇到哪些错误?如何生成pdf?您使用哪种库生成pdf?我正在使用dompdf库,它将html页面转换为pdf文档,并在电子邮件中作为附件发送。最好先将附件(由dompdf生成的附件)保存在某个位置,可能是在临时文件夹中,而不是直接输出。是的,我正在将生成的pdf保存在名为“pdf”的临时文件夹中。您可以在mycode中找到这一行,该行用于将pdf保存在pdf文件夹中检查
if($this->email->send()){echo'您的电子邮件已发送。;}否则{show_error($this->email->print_debugger());}
即使我也在遵循相同的过程,但效果并不好。我正在以附件的形式发送pdf,该附件是在您单独发送电子邮件时在DOMPDF的帮助下动态生成的(如我的示例所示),你会遇到什么错误?尝试发送那些没有附件的电子邮件,看看你是否会遇到同样的错误。没有附件,它工作正常。但我必须用邮件发送附件。我发现了我的错误,但我不知道如何克服。在生成pdf@1st tym之后。它停止了循环执行。那么你能帮我解决吗克服这个prob@user3141441你能更新你的帖子并打印你的错误信息吗?要想想出一个解决方案而不看到任何错误信息是非常困难的。
$query = $this->db->get('table_name'); // This will get all rows in your applicant table.
$result = $query->result();
echo "<pre>"; print_r($result); die(); // Will print all applicants in your table.