Wat is PHP-mail?
PHP-mail is de ingebouwde PHP-functie die wordt gebruikt om e-mails te verzenden vanuit PHP-scripts.
De mailfunctie accepteert de volgende parameters;
- E-mailadres
- Onderwerpen
- Bericht
- CC- of BC-e-mailadressen
- Het is een kosteneffectieve manier om gebruikers op de hoogte te stellen van belangrijke gebeurtenissen.
- Laat gebruikers contact met u opnemen via e-mail door een contactformulier op de website te plaatsen dat de verstrekte inhoud e-mailt.
- Ontwikkelaars kunnen het gebruiken om systeemfouten per e-mail te ontvangen
- U kunt het gebruiken om uw nieuwsbriefabonnees te e-mailen.
- U kunt het gebruiken om links voor het opnieuw instellen van wachtwoorden te verzenden naar gebruikers die hun wachtwoord zijn vergeten
- U kunt het gebruiken om activerings- / bevestigingslinks te e-mailen. Dit is handig bij het registreren van gebruikers en het verifiëren van hun e-mailadressen
In deze tutorial leer je-
- Waarom / wanneer de PHP-mail gebruiken
- Eenvoudig e-mailverzendingsprotocol
- Invoer van e-mailgebruikers opschonen
- Beveiligde e-mail
Waarom / wanneer de e-mail PHP
E-mail verzenden met PHP
De PHP-mailfunctie heeft de volgende basissyntaxis
HIER,
- "$ To_email_address" is het e-mailadres van de e-mailontvanger
- "$ Subject" is het onderwerp van de e-mail
- "$ Message" is het te verzenden bericht.
- "[$ Headers]" is optioneel, het kan worden gebruikt om informatie op te nemen zoals CC, BCC
- CC is de afkorting voor carbon copy. Het wordt gebruikt wanneer u een kopie naar een geïnteresseerde wilt sturen. Een e-mail met een klacht naar een bedrijf kan bijvoorbeeld ook als CC naar de klachtencommissie worden gestuurd.
- BCC is de afkorting voor blind carbon copy. Het is vergelijkbaar met CC. De e-mailadressen die in de BCC-sectie zijn opgenomen, worden niet aan de andere ontvangers getoond.
Simple Mail Transmission Protocol (SMTP)
PHP-mailer gebruikt Simple Mail Transmission Protocol (SMTP) om e-mail te verzenden.
Op een gehoste server zouden de SMTP-instellingen al zijn ingesteld.
De SMTP-mailinstellingen kunnen worden geconfigureerd vanuit het “php.ini” -bestand in de PHP-installatiemap.
SMTP-instellingen configureren op uw localhost Ervan uitgaande dat u xampp op Windows gebruikt, zoek dan “php.ini” in de directory “C: \ xampp \ php”.
- Open het met kladblok of een teksteditor. In dit voorbeeld zullen we kladblok gebruiken. Klik op het menu Bewerken
- Klik op het menu Zoeken…
- Het dialoogvenster Zoeken zal verschijnen
- Klik op de knop Volgende zoeken
- Zoek de vermeldingen
- [mailfunctie]
- XAMPP: verwijder de halve kolom niet als u met een SMTP-server zoals Mercury wilt werken
- SMTP = localhost
- smtp_port = 25
- Verwijder de puntkomma's voor SMTP en smtp_port en stel de SMTP in op je smtp-server en de poort op je smtp-poort. Uw instellingen zouden er als volgt uit moeten zien
- SMTP = smtp.voorbeeld.com
- smtp_port = 25
- Merk op dat de SMTP-instellingen kunnen worden verkregen van uw webhostingproviders.
- Als de server authenticatie vereist, voeg dan de volgende regels toe.
- auth_username = Dit e-mailadres wordt beschermd tegen spambots. JavaScript moet ingeschakeld zijn om het te kunnen bekijken.
- auth_password = voorbeeld_wachtwoord
- Sla de nieuwe wijzigingen op.
- Start de Apache-server opnieuw.
Php Mail Voorbeeld
Laten we nu eens kijken naar een voorbeeld dat een eenvoudige e-mail verstuurt.
Uitgang:
Opmerking: het bovenstaande voorbeeld neemt alleen de 4 verplichte parameters.
U dient het bovenstaande fictieve e-mailadres te vervangen door een echt e-mailadres.
Invoer van e-mailgebruikers opschonen
Het bovenstaande voorbeeld gebruikt hard gecodeerde waarden in de broncode voor het e-mailadres en andere details voor de eenvoud.
Laten we aannemen dat u een contactformulier moet maken voor gebruikers die de details invullen en vervolgens verzenden.
- Gebruikers kunnen per ongeluk of opzettelijk code in de headers injecteren, wat kan resulteren in het verzenden van spam-mail
- Om uw systeem tegen dergelijke aanvallen te beschermen, kunt u een aangepaste functie maken die de waarden opschoont en valideert voordat de e-mail wordt verzonden.
Laten we een aangepaste functie maken die het e-mailadres valideert en opschoont met de ingebouwde functie filter_var.
Filter_var-functie De filter_var-functie wordt gebruikt om de gebruikersinvoergegevens op te schonen en te valideren.
Het heeft de volgende basissyntaxis.
HIER,
- "Filter_var (…)" is de validatie- en opschoningsfunctie
- "$ Field" is de waarde van het veld dat moet worden gefilterd.
- "SANITISERINGSTYPE" is het type desinfectie dat op het veld moet worden uitgevoerd, zoals;
- FILTER_VALIDATE_EMAIL - het retourneert true voor geldige e-mailadressen en false voor ongeldige e-mailadressen.
- FILTER_SANITIZE_EMAIL - het verwijdert illegale tekens uit e-mailadressen. info \ @domain. (com) retourneert Dit e-mailadres is beschermd tegen spambots. JavaScript moet ingeschakeld zijn om het te bekijken ...
- FILTER_SANITIZE_URL - het verwijdert illegale tekens uit URL's. http: //[email protected]é retourneert> http: //[email protected]
- FILTER_SANITIZE_STRING - het verwijdert tags uit stringwaarden . vetgedrukt wordt vetgedrukt.
De onderstaande code implementeert een aangepaste functie om beveiligde e-mail te verzenden.
Uitgang:
Beveiligde e-mail
E-mails kunnen tijdens verzending worden onderschept door onbedoelde ontvangers.
Hierdoor kan de inhoud van de e-mail worden blootgesteld aan onbedoelde ontvangers.
Beveiligde mail lost dit probleem op door e-mails te verzenden via Hypertext Transfer Protocol Secure (HTTPS).
HTTPS versleutelt berichten voordat ze worden verzonden.
Overzicht
- De in PHP ingebouwde functie mail () wordt gebruikt om e-mail te verzenden vanuit PHP-scripts
- Validatie- en opschoningscontroles van de gegevens zijn essentieel voor het verzenden van beveiligde post
- De in PHP ingebouwde functie filter_var () biedt een gebruiksvriendelijke en efficiënte manier om gegevensopschoning en validatie uit te voeren