I have devloped a contact form with PHP code. It work perfectly. when you submit the form all the information e-mail to you perfectly. After submitting the contact form it will take you back to you same contact page. Know want to make some changes in it. When some one submit the contact form a message appear "Thanks for contacting us we will reply you withing in 5 business days" and then return to you on contact page. I try to modify the code myself but can't able to do that.
PHP CODE:

<?php

if(!$_POST) exit;

$email = $_POST['email'];


//$error[] = preg_match('/\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b/i', $_POST['email']) ? '' : 'INVALID EMAIL ADDRESS';
if(!eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*" ."@"."([a-z0-9]+([\.-][a-z0-9]+)*)+"."\\.[a-z]{2,}"."$",$email )){
    $error.="Invalid email address entered";
    $errors=1;
}
if($errors==1) echo $error;
else{
    $values = array ('URL','email','Keyword','Title');
    $required = array('URL','email','Keyword','Title');

    $your_email = "info@bannistermarketinggroup.co.uk"; 
    $email_subject = "Bannister Marketing Group: ".$_POST['subject'];
    $email_content = "Following is the keyword report:\n";

    foreach($values as $key => $value){
      if(in_array($value,$required)){
        if ($key != 'subject' && $key != 'company') {
          if( empty($_POST[$value]) ) { echo 'PLEASE FILL IN REQUIRED FIELDS'; exit; }
        }
        $email_content .= $value.': '.$_POST[$value]."\n";
      }
    }

    if(@mail($your_email,$email_subject,$email_content)) {
        //echo 'thanks you we receive report witing 24hr';
        header("Location:http://bannistermarketinggroup.co.uk/site_optimization/");
        exit();

    } //else {
        //echo 'ERROR!';
    //}
}
?>

HTML CODE

<form action="contact.php" method="post">
                    <Div class="fieldbox">
                        <div class="textname">URL:</div>
                        <div class="field"><input type="text" id="URL" name="URL" /></div>
                        <div class="icon22"><img src="images/URLicon.jpg" /></div>
                    </Div>

                    <Div class="fieldbox">
                        <div class="textname">Title:</div>
                        <div class="field"><input id="Title" type="text" name="Title" /></div>
                        <div class="icon22"><img src="images/titleicon.jpg" /></div>
                    </Div>

                      <Div class="fieldbox">
                        <div class="textname">Keyword:</div>
                        <div class="field"><input id="Keyword" type="text" name="Keyword" />  </div>
                        <div class="icon22"><img src="images/keywordicon.jpg" /></div>
                    </Div>

                    <Div class="fieldbox">
                        <div class="textname">E-mail:</div>
                        <div class="field"><input id="name" type="text" name="email" />  </div>
                        <div class="icon22"><img src="images/emailicon.jpg" /></div>
                    </Div>

                    <div class="button">
                    <input type="image" type="text" src="images/submit.jpg" />   
                    </div>
                    </form>

Looking for help.

Recommended Answers

All 3 Replies

Member Avatar for diafol

You could try this:

<?php
session_start();
if(!$_POST) exit;
$email_content = "";
if(filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)){ 
    $req = array("URL","email","keyword","Title");
    foreach($_POST as $k=>$v){
        if(in_array($k,$req) && $k != 'subject' && $k != 'company'){
            if(empty($k)){
                $errors[] = 'Please fill in the $k field';
            }else{
                $email_content .= "$k: $v\n";
            }
        }
    }
    if(!isset($errors)){
        if(@mail($your_email,$email_subject,$email_content)) {
            header("Location:http://bannistermarketinggroup.co.uk/site_optimization/");
            exit();
        }else{
            $errors[] = "Could not send email at this time";    
        }
    }

}else{
    $errors[] = 'Invalid Email Entered';
}

$_SESSION['error'] == implode("<br />",$errors); 
header("Location: form.php");
exit();
?>

HTML FORM

<?php
session_start();
if(isset($_SESSION['error'])){
    $err = $_SESSION['error'];
    unset($_SESSION['error']);
}else{
    $err = '';  
}
?>

<div><?php echo $err;?></div>
<!-- your form here -->

Off top of head, so not tested. Got a bit spaghetti-ish - sorry.

The form is working fine. Know After Submitting the form we want to send the some thank you message to user e-mail also. How can we do that in PHP code. Code is there in a post.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.