Help with PHP Form Mail

Discussion in 'PHP' started by skaggmo, Nov 25, 2012.

  1. #1
    Hi,

    I'm new at this PHP stuff, so please bear with a newbie and help me out.

    I'm trying to set up a form mail on this page- http://directsite.net/40dollars/#contact

    I hope this works- I will try to paste the code here-

    This is what's on my HTML page-
    <HR>
    <form method="post" action="contact.php" id="contactform">

    <div>
    <p>Send me a message</p>
    </div>

    <div>
    <label>Name <span class="required">*</span></label>
    <input name="name" type="text" id="name" value="" />
    </div>

    <div>
    <label>Email <span class="required">*</span></label>
    <input name="email" type="text" id="email" value="" />
    </div>

    <div>
    <label>Website</label>
    <input name="website" type="text" id="website" value="" />
    </div>

    <div>
    <label>Subject</label>
    <input name="subject" type="text" id="subject" value="" />
    </div>

    <div>
    <label>Message <span class="required">*</span></label>
    <textarea name="message" rows="20" cols="50" id="message" ></textarea><br /><br />
    </div>

    <div>
    <input type="submit" value="Submit" class="button">
    <input type="reset" value="Reset" class="button">
    </div>


    </form>
    <HR>

    And this is what's on my contact.php page-

    <?php
    $field_name = $_POST['cf_name'];
    $field_email = $_POST['cf_email'];
    $field_message = $_POST['cf_message'];

    $mail_to = 'me@kenskaggs.com';
    $subject = 'Message from a site visitor '.$field_name;

    $body_message = 'From: '.$field_name."\n";
    $body_message .= 'E-mail: '.$field_email."\n";
    $body_message .= 'Message: '.$field_message;

    $headers = 'From: '.$field_email."\r\n";
    $headers .= 'Reply-To: '.$field_email."\r\n";

    $mail_status = mail($mail_to, $subject, $body_message, $headers);

    if ($mail_status) { ?>
    <script language="javascript" type="text/javascript">
    alert('Thank you for the message. We will contact you shortly.');
    window.location = 'contact_page.html';
    </script>
    <?php
    }
    else { ?>
    <script language="javascript" type="text/javascript">
    alert('Message failed. Please, send an email to ');
    window.location = 'contact_page.html';
    </script>
    <?php
    }
    ?>
    <HR>

    Thank you for your help!
     
    Solved! View solution.
    skaggmo, Nov 25, 2012 IP
  2. skaggmo

    skaggmo Well-Known Member

    Messages:
    113
    Likes Received:
    5
    Best Answers:
    0
    Trophy Points:
    130
    #2
    I do receive the email, but the fields are empty. All I get is this-

    From:
    E-mail:
    Message:
     
    skaggmo, Nov 25, 2012 IP
  3. #3
    You need replace

    $field_name = $_POST['cf_name'];
    $field_email = $_POST['cf_email'];
    $field_message = $_POST['cf_message'];
    PHP:
    with

    $field_name = $_POST['name'];
    $field_email = $_POST['email'];
    $field_message = $_POST['message'];
    PHP:
     
    Sano000, Nov 25, 2012 IP
  4. skaggmo

    skaggmo Well-Known Member

    Messages:
    113
    Likes Received:
    5
    Best Answers:
    0
    Trophy Points:
    130
    #4
    Thank you Sano000! It works. You are brilliant!

    One more question if you don't mind...

    How do I get the website address to appear in the email?

    I tried this after field message
    $field_website = $_POST['website'];

    But I got a synatax error. Any ideas?

    Thanks!
     
    skaggmo, Nov 25, 2012 IP
  5. Sano000

    Sano000 Active Member

    Messages:
    52
    Likes Received:
    4
    Best Answers:
    5
    Trophy Points:
    53
    #5
    Skaggmo, show complete code
     
    Sano000, Nov 25, 2012 IP
  6. Isuru

    Isuru Active Member

    Messages:
    363
    Likes Received:
    6
    Best Answers:
    1
    Trophy Points:
    68
    #6
    What is the syntax error you get?
     
    Isuru, Nov 25, 2012 IP