【问题标题】:Hundreds of emails in MailTo - Outlook/Windows?MailTo - Outlook/Windows 中的数百封电子邮件?
【发布时间】:2011-09-07 14:40:59
【问题描述】:

基本上,我的联系人数据库中有一个表。它有一个分配给每个用户的电子邮件地址。

我正在尝试创建一个按钮,当单击该按钮时,会在新电子邮件的密件抄送字段中执行 mailto,从整个表格的条目中填充:

mailto:?bcc=<?php 
  while($rows=mysql_fetch_array($result))
  { 
    echo $rows['EMAIL']; 
    echo ", "; 
  } 
  mysql_close(); ?>

它在我的 Mac 上的 Firefox/MacMail 上运行良好,但是当我在 Windows 上尝试使用 Internet Explorer/Outlook 时没有任何反应(即我单击按钮但它没有打开新的 Outlook 消息)。

有什么想法吗?

【问题讨论】:

    标签: php mysql html


    【解决方案1】:

    Internet Explorer(最多 2,083 个字符,请参阅 KB208427)和 Outlook(字符数相似,我找不到权威参考)都具有它们可以处理的最大 URL 长度。如果您有数百个电子邮件地址,则很容易达到这些限制。

    【讨论】:

      【解决方案2】:

      您的代码有问题,电子邮件地址列表总是以额外的, 结尾。
      我会摆脱它。

      另外我建议你在数据库中完成所有工作,将代码重写为:

      <?php
      $param = mysql_real_escape_string($_POST['param']);
      $query = "SELECT GROUP_CONCAT(email) as emailadresses 
                FROM email WHERE afield = '$param' ";
      ?>
      
      mailto:?bcc=
      <?php 
        $rows=mysql_fetch_array($result));
        echo $rows['EMAIL']; //no while loop needed, group_concat does all the work.
        mysql_close(); 
      ?>
      

      见:http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-05-08
        • 2013-08-22
        • 2015-04-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-14
        相关资源
        最近更新 更多