1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- <?php
- /**
- * This example shows how to handle a simple contact form.
- */
- $msg = '';
- //Don't run this unless we're handling a form submission
- if (array_key_exists('email', $_POST)) {
- date_default_timezone_set('Etc/UTC');
- require '../PHPMailerAutoload.php';
- //Create a new PHPMailer instance
- $mail = new PHPMailer;
- //Tell PHPMailer to use SMTP - requires a local mail server
- //Faster and safer than using mail()
- $mail->isSMTP();
- $mail->Host = 'localhost';
- $mail->Port = 25;
- //Use a fixed address in your own domain as the from address
- //**DO NOT** use the submitter's address here as it will be forgery
- //and will cause your messages to fail SPF checks
- $mail->setFrom('from@example.com', 'First Last');
- //Send the message to yourself, or whoever should receive contact for submissions
- $mail->addAddress('whoto@example.com', 'John Doe');
- //Put the submitter's address in a reply-to header
- //This will fail if the address provided is invalid,
- //in which case we should ignore the whole request
- if ($mail->addReplyTo($_POST['email'], $_POST['name'])) {
- $mail->Subject = 'PHPMailer contact form';
- //Keep it simple - don't use HTML
- $mail->isHTML(false);
- //Build a simple message body
- $mail->Body = <<<EOT
- Email: {$_POST['email']}
- Name: {$_POST['name']}
- Message: {$_POST['message']}
- EOT;
- //Send the message, check for errors
- if (!$mail->send()) {
- //The reason for failing to send will be in $mail->ErrorInfo
- //but you shouldn't display errors to users - process the error, log it on your server.
- $msg = 'Sorry, something went wrong. Please try again later.';
- } else {
- $msg = 'Message sent! Thanks for contacting us.';
- }
- } else {
- $msg = 'Invalid email address, message ignored.';
- }
- }
- ?>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Contact form</title>
- </head>
- <body>
- <h1>Contact us</h1>
- <?php if (!empty($msg)) {
- echo "<h2>$msg</h2>";
- } ?>
- <form method="POST">
- <label for="name">Name: <input type="text" name="name" id="name"></label><br>
- <label for="email">Email address: <input type="email" name="email" id="email"></label><br>
- <label for="message">Message: <textarea name="message" id="message" rows="8" cols="20"></textarea></label><br>
- <input type="submit" value="Send">
- </form>
- </body>
- </html>
|