Introduction
Every website have their own contact page to get feedback and messages from visitor, By the way it will help site owners to improve their website performance And Have idea about user experience. Here I am going to develop a simple contact form using HTML and send mails to administrative contacts with help of PHPMailer (A PHP Class).First we need to create a contact form with help of HTML forms and design it with some CSS work based on your needs.You might save this file as
contact.php
<?php if(isset($_GET['result']) && $_GET['result'] == 'success') { echo '<div class="success_msg" > Thank you for contacting us. We will get back to you soon. </div> '; } ?> <style> .success_msg { background-color: #fed; color: green; border: 1px solid green; } </style> <form name="kv-contact-form" method="post" action="kv-contact-process.php"> <table width="450px"> </tr> <tr> <td valign="top"> <label for="first_name">First Name *</label> </td> <td valign="top"> <input type="text" name="first_name" maxlength="50" size="30"> </td> </tr> <tr> <td valign="top""> <label for="last_name">Last Name *</label> </td> <td valign="top"> <input type="text" name="last_name" maxlength="50" size="30"> </td> </tr> <tr> <td valign="top"> <label for="email">Email Address *</label> </td> <td valign="top"> <input type="text" name="email" maxlength="80" size="30"> </td> </tr> <tr> <td valign="top"> <label for="telephone">Telephone Number</label> </td> <td valign="top"> <input type="text" name="telephone" maxlength="30" size="30"> </td> </tr> <tr> <td valign="top"> <label for="subject">Subject</label> </td> <td valign="top"> <input type="text" name="subject" maxlength="30" size="30"> </td> </tr> <tr> <td valign="top"> <label for="comments">Comments *</label> </td> <td valign="top"> <textarea name="comments" maxlength="1000" cols="25" rows="6"></textarea> </td> </tr> <tr> <td colspan="2" style="text-align:center"> <!-- We are grateful to you for keeping this link in place. thank you. --> <input type="submit" value="Submit"> ( <a href="http://kvcodes.com/2014/01/how-to-create-contact-form-with-phpmailer-to-send-mails/">Get Help from Kvcodes tut.</a> ) </td> </tr> </table> </form>
Than style it with the help of CSS(Cascading Style Sheet).When User click on Submit button, it will send the data’s to `kv-contact-process.php`.
PHP
Here we are going to handle the user entered data’s and send it to administrative email address at the same time we send a acknowledge to the respective user.<?php require_once("PHPMailerAutoload.php"); // this will include smtp and pop files. if(isset($_POST['email'])) { $email_to = "info@yourdomain.com"; function died($error) {// your error code can go here echo "We're sorry, but there's errors found with the form you submitted.<br /><br />"; echo $error."<br /><br />"; echo "Please go back and fix these errors.<br /><br />"; die(); } // validation expected data exists if(!isset($_POST['first_name']) ||!isset($_POST['last_name']) ||!isset($_POST['email']) ||!isset($_POST['telephone']) ||!isset($_POST['subject']) || !isset($_POST['comments'])) { died('We are sorry, but there appears to be a problem with the form you submitted.'); } $first_name = $_POST['first_name']; // required $last_name = $_POST['last_name']; // required $email_from = $_POST['email']; // required $telephone = $_POST['telephone']; // not required $subject = $_POST['subject']; // required $comments = $_POST['comments']; // required $error_message = ""; $email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/'; if(!preg_match($email_exp,$email_from)) { $error_message .= 'The Email Address you entered does not appear to be valid.<br />'; } $string_exp = "/^[A-Za-z .'-]+$/"; if(!preg_match($string_exp,$first_name)) { $error_message .= 'The First Name you entered does not appear to be valid.<br />'; } if(!preg_match($string_exp,$last_name)) { $error_message .= 'The Last Name you entered does not appear to be valid.<br />'; } if(!preg_match($string_exp,$subject)) { $error_message .= 'The Last Name you entered does not appear to be valid.<br />'; } if(strlen($comments) < 2) { $error_message .= 'The Comments you entered do not appear to be valid.<br />'; } if(strlen($error_message) > 0) { died($error_message); } $email_message = "\n\n"; $email_message .= "First Name: ".clean_string($first_name)."\n"; $email_message .= "Last Name: ".clean_string($last_name)."\n"; $email_message .= "Email: ".clean_string($email_from)."\n"; $email_message .= "Telephone: ".clean_string($telephone)."\n"; $email_message .= "Subject: ".clean_string($subject)."\n"; $email_message .= "Comments: ".clean_string($comments)."\n"; $mail = new PHPMailer(); $mail->isSendmail(); $mail->setFrom($email_from, $first_name.$last_name); $mail->addAddress($email_to, 'Kv Varadha); $mail->Subject = $subject; $mail->msgHTML(file_get_contents('path/to/file/attachment-file.extension'), dirname(__FILE__)); if (!$mail->send()) { //send the message, check for errors echo "Mailer Error: " . died($error); } else { header('Location: contact.php?result=success'); } ?> <!-- place your own success html below --> <?php } die(); ?>
No comments:
Post a Comment