PHP mail


  Share  
|


In dit artikel gaan we kijken naar enkele van de meest gestelde vragen over e-mail en PHP. We zullen beginnen door te kijken naar een meer fundamentele kwestie: hoe om daadwerkelijk stuur een e-mail als HTML.

Hoe verstuur ik een e-mail als HTML?

Zoals de PHP mail functie is standaard ingesteld op het verzenden van platte tekst e-mails, tenzij anders vermeld, een veel voorkomende vraag is hoe te sturen HTML-e-mails met behulp van de mail functie. Het formaat voor de mail functie is als volgt:

mail ($ to, $ subject, $ message, $ headers); 

waar $, is het e-mailadres te sturen, $ onderwerp is het onderwerp voor de e-mail, $ bericht bevat de e-mail bericht en $ headers bevat een optionele headers kunt u wenst toe te voegen.

Als u een e-mail dat is erkend en behandeld als HTML, moet u gebruik maken van twee speciale headers:

MIME-Version: 1.0 Content-Type: text / html; charset = iso-8859-1 

Deze moeten worden opgenomen in de variabele $ headers zoals weergegeven in de volgende volledige code:

 "; $ Message .=" Dit is een HTML-e-mail bericht "; $ message .=" "; $ headers =" MIME-Version: 1.0 \ n "; $ headers .=" Content-type: text / html; charset = iso-8859-1 \ n "; $ headers .=" From: Gareth  "; Mail ($ to, $ subject, $ message, $ headers);?> 

Het is belangrijk op te merken dat aan de code uit te voeren, moet u een e-mail server ingesteld hebt, dus het makkelijkst om deze code te testen op de server van uw website host.

Als de e-mail wordt verzonden als HTML, kunt u HTML-tags in het bericht, zoals in de voorgaande code. Wanneer de e-mail is ontvangen, wordt de e-mail zal worden weergegeven als een HTML-pagina (ervan uitgaande dat de gebruiker e-mail programma heeft die faciliteit).

Hoe stuur ik een nieuwsbrief met PHP?

Wilt u een nieuwsbrief uit te sturen naar een aantal gebruikers in een keer, het verbergen van de e-mailadressen, zodat de ontvanger niet kan zien wie je de mail gestuurd, kunt u gebruik maken van de BCC-header, die staat voor "blind carbon kopiëren. " Alle adressen in de BCC-header wordt verstuurd een kopie van de e-mail, maar ze niet kunnen zien wie het is verzonden. De volgende code toont een werkend voorbeeld, die stuurt de e-mail naar elk adres in de array op voorwaarde dat:

  
\n";  
$headers .= "bcc: ";  
$count = 0;  foreach($addresses as $address){  
if($count == 0){ $headers .= $address;  
}else{  
$headers .= ", " . $address;  
} 
$count ++;  
}  
$headers .= "\n";  
mail($to, $subject, $message, $headers);  
?> 

In de voorgaande code, die alle de e-mail adressen worden gespecificeerd in de $ adressen array. Dit zou kunnen worden veranderd in een veld te gebruiken van een recordset aan de e-mail adressen te krijgen van een database tabel.

Als u het verzenden van hetzelfde e-mail aan een groot aantal gebruikers, de vorige methode is de beste manier. Dit komt omdat PHP contact op met de mailserver een keer, en dan de e-mailserver is de taak van het versturen van de e-mail naar alle e-mailadressen vermeld, wat betekent dat het PHP-script klaar is sneller en maakt gebruik van minder middelen.

Als echter, je bent een gepersonaliseerde e-mail verzenden, elke e-mail zal apart moeten worden gestuurd door PHP aan de geïndividualiseerde gegevens toe te voegen.

Hoe stop ik een script van een time-out Wanneer u veel e-mails?

Als u een gepersonaliseerde e-mail verstuurt naar een groot aantal gebruikers, moet u sturen elke e-mail individueel, en het kan een tijdje duren voor het script te versturen alle e-mails. Dit creëert een probleem soms, als het script kan uit tijd voordat alle e-mails zijn verzonden.

Om dit te voorkomen, moet u de verhoging van het bedrag van de tijd dat het script kan draaien. De standaardinstelling is meestal 30 seconden. U kunt verhogen de termijn voor een script door toevoeging van de volgende code naar de bovenkant van de pagina:

 

Hierdoor zal het script voor een periode van maximaal 5 minuten (60 * 5 = 300 seconden).

een artikel afkomstig van Stratus Huo Quan


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions