As usual, the mail () function puts the above text in the header of the message, so now the header has additional Cc :, Bcc:, and To: fields. When the user clicks the submit button, this e-mail will be sent to all the above address!
PHP to prevent E-mail injection
The best way to prevent e-mail injection is to validate the input.
The code below is similar to the previous section, but we have added the input validation procedure for email fields in the test form:
<html> <body> <? php function spamcheck ($ field) {// filter_var () sanitizes the e-mail // address using FILTER_SANITIZE_EMAIL $ field = filter_var ($ field, FILTER_SANITIZE_EMAIL); // filter_var () validates the e -mail // address using FILTER_VALIDATE_EMAIL if (filter_var ($ field, FILTER_VALIDATE_EMAIL)) {return TRUE;} else {return FALSE;}} if (isset ($ _REQUEST ['email'])) {// if "email" is filled out, proceed // check if the email address is invalid $ mailcheck = spamcheck ($ _ REQUEST ['email']); if ($ mailcheck == FALSE) {echo "Invalid input";} else {// send email $ $ subject = $ _REQUEST ['subject']; $ message = $ _REQUEST ['message']; mail ("someone@example.com", "Subject: $ subject", $ echo "Thank you for using our mail form";}} else {// if "email" is not filled out, display the form echo "<form method = 'post' action = 'mailform.php'> Email: <input name = 'email' type = 'text' /> <br /> Subject: <input name = 'subject' type = 'text' /> <br /> Message: <br /> <text area name = 'message' rows = '15 'cols = '40'> </ textarea> <br /> <input type = 'submit' /> </ form> ";}?> </ body> </ html >
In the code above, we used a PHP filter to validate the input:
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.