2012-08-25 5 views
17

Ich benutze mailto Link zu füllen Bcc der Benutzer Standard-E-Mail-Programm.Was ist der beste Separator zum Trennen mehrerer E-Mails

$mem_email=" ";  
$sql="SELECT email_address FROM employee"; 
$contacts = $db->query($sql); 
while($contact = $db->fetchByAssoc($contacts)) 
{ 
    if($contact['email_address']!="" && $contact['email_address']!=NULL) 
    { 
     $mem_email.=$contact['email_address'].", "; 
    } 
} 

header("Location: mailto:?bcc={$mem_email}"); 

Meine Frage ist, was der beste Separator mehr E-Mails in bcc Feld oder zu trennen ist; .

In meinem Fall verwende ich ','.

+0

Wenn Sie plain alten 'mailto' Anker dann ja verwenden, ist das der beste Weg. –

Antwort

24

Der Separator sollte ein Komma sein (,) und es sollte kein Platz sein.

Siehe RFC 6068.

+1

Danksagung, RFC 6068 Link ist wirklich großartig, um 'mailto' URI Scheme zu lernen. – mansoor

1

Verwenden Sie folgenden Code,

implode(',', $contacts); 

oben Code Komma geben E-Mails getrennt.

+0

Ich habe '$ mem_email. = $ Contact ['email_address'].", ";' Und es geht gut, – mansoor

+0

Ich habe '$ mem_email. = $ Contact ['email_address'].", ";' Und es geht gut. Ist 'implode (',', $ Kontakte);' hat einen zusätzlichen Vorteil? – mansoor

+0

mansoor, mit Ihrer Version wird Ihre verkettete E-Mail-Adresse Zeichenfolge ein nachkommendes Komma, aber mit implode wird nur ein Komma zwischen den Adressen, nicht am Ende. Abgesehen davon, es ist rein ästhetisch - einfacher Code sieht schöner aus und ist einfacher zu folgen, aber letztendlich liegt es an Ihnen - die winzigen Unterschiede in der Optimierung werden in diesem Fall keinen Unterschied machen. –

7

Hier ist ein spät Vorbehalt falls es jemand braucht:

Obwohl RFC empfiehlt ausdrücklich ein Komma, Microsoft Outlook wird die „Listentrennzeichen“ definiert in den regionalen Einstellungen verwenden. Ihre Mailto-Links funktionieren möglicherweise nicht korrekt für Ihre Windows + Outlook-Benutzer, deren Systeme mit einem anderen Listentrennzeichen wie Semikolons konfiguriert sind. Outlook wird es einfach ablehnen, die E-Mail-Adressen mit Kommas zu teilen.

Nur etwas zu beachten.

Verwandte Themen