Jump to content

phpFormMailer help


golearn

Recommended Posts

Hi all

 

I want to use this phpFormMailer script on my website with 2 additional fields but can't figure out how to do that. I want to add a "contact number" field and one "country" field in this existing form. Any help will be very much appreciated. Here are the codes below.

 

contact.html

 

<html>

<head>
<title>PHP Form Mailer - phpFormMailer (easy to use and more secure than many cgi form
mailers)</title>
<style>
BODY{color:#000000; font-size: 8pt; font-family: Verdana}
.button {background-color: rgb(128,128,128); color:#ffffff; font-size: 8pt;}
.inputc {font-size: 8pt;}
.style3 {font-size: xx-small}
</style>
</head>

<body>

<form name="phpformmailer" action="contact_process.php" align="center" method="post">
  <div align="center"><center><table bgcolor="#F2F2F2" width="742" cellspacing="6">
    <tr>
      <td width="162"><strong>Contact Us</strong></td>
      <td width="556"><span class="style3">Protected by: <a
      href="http://thedemosite.co.uk/phpformmailer/">phpFormMailer</a> the freely available PHP form mailer</span></td>
    </tr>
    <tr>
      <td align="right" width="162"><small>Your name:</small></td>
      <td width="556"><font face="Arial"><input class="inputc" size="50" name="name">
      </font></td>
    </tr>
    <tr>
      <td align="right" width="162"><font color="#000080" size="1">*</font><small> Your email
      address:</small></td>
      <td align="left" width="556"><font face="Arial"><input class="inputc" size="50"
      name="email">
      </font></td>
    </tr>
    <tr align="middle">
      <td align="right" width="162"><font color="#000080" size="1">*</font><small> Confirm email
      address:</small></td>
      <td width="556" align="left"><font face="Arial"><input class="inputc" size="50"
      name="email2">
      </font></td>
    </tr>
    <tr>
      <td align="right" width="162"><font color="#000080" size="1">*</font><small> Subject:</small></td>
      <td width="556"><font face="Arial"><input class="inputc" size="60" name="thesubject">
      </font></td>
    </tr>
    <tr>
      <td align="right" width="162"> 
        <p><font color="#000080" size="1">*</font><small> Your
      request or query:</small></td>
      <td width="556"><textarea style="FONT-SIZE: 10pt" name="themessage" rows="7" cols="60"></textarea></td>
    </tr>
    <tr>
      <td width="162"></td>
      <td width="556"><p>
        <input type="button" class="button"
      value="Send" name="B1" ONCLICK="javascript:validateForm()">
          <small> <small>You must fill in
        the fields marked with a *</p>
        </td>
    </tr>
  </table>
      <p> </p>
      <p> </p>
      <p> </p>
      <p> </p>
      <p> </p>
      <p><span class="style3">Protected by: <a
      href="http://thedemosite.co.uk/phpformmailer/">phpFormMailer</a> the freely available PHP form mailer</span></p>
  </center></div>
</form>

<script language="JavaScript"><!--
function validateForm() 
{
var okSoFar=true
with (document.phpformmailer)
{
  var foundAt = email.value.indexOf("@",0)
  if (foundAt < 1 && okSoFar)
  {
    okSoFar = false
    alert ("Please enter a valid email address.")
    email.focus()
  }
  var e1 = email.value
  var e2 = email2.value
  if (!(e1==e2) && okSoFar)
  {
    okSoFar = false
    alert ("Email addresses you entered do not match.  Please re-enter.")
    email.focus()
  }
  if (thesubject.value=="" && okSoFar)
  {
    okSoFar=false
    alert("Please enter the subject.")
    thesubject.focus()
  }
  if (themessage.value=="" && okSoFar)
  {
    okSoFar=false
    alert("Please enter the details for your enquiry.")
    themessage.focus()
  }
  if (okSoFar==true)  submit();
}
}
// --></script>
</body>
</html>

 

 

Contact_process.php

 

<?php
/* PHP Form Mailer - phpFormMailer v2.2, last updated 23rd Jan 2008 - check back often for 

updates!
   (easy to use and more secure than many cgi form mailers) FREE from:
                  www.TheDemoSite.co.uk
      Should work fine on most Unix/Linux platforms
      for a Windows version see: asp.thedemosite.co.uk
*/

// ------- three variables you MUST change below  

-------------------------------------------------------
$replyemail="you@yourdomain.com";//change to your email address
$valid_ref1="http://yourdomain.com/index.html";// chamge "Your--domain" to your domain
$valid_ref2="http://yourdomain.com/index.html";// chamge "Your--domain" to your domain
// -------- No changes required below here 

-------------------------------------------------------------
// email variable not set - load $valid_ref1 page
if (!isset($_POST['email']))
{
echo "<script language=\"JavaScript\"><!--\n ";
echo "top.location.href = \"$valid_ref1\"; \n// --></script>";
exit;
}

$ref_page=$_SERVER["HTTP_REFERER"];
$valid_referrer=0;
if($ref_page==$valid_ref1) $valid_referrer=1;
elseif($ref_page==$valid_ref2) $valid_referrer=1;
if(!$valid_referrer)
{
echo "<script language=\"JavaScript\"><!--\n alert(\"ERROR - not sent.\\n\\nCheck your 

'valid_ref1' and 'valid_ref2' are correct within contact_process.php.\");\n";
echo "top.location.href = \"contact.html\"; \n// --></script>";
exit;
}

//check user input for possible header injection attempts!
function is_forbidden($str,$check_all_patterns = true)
{
$patterns[0] = 'content-type:';
$patterns[1] = 'mime-version';
$patterns[2] = 'multipart/mixed';
$patterns[3] = 'Content-Transfer-Encoding';
$patterns[4] = 'to:';
$patterns[5] = 'cc:';
$patterns[6] = 'bcc:';
$forbidden = 0;
for ($i=0; $i<count($patterns); $i++)
  {
   $forbidden = eregi($patterns[$i], strtolower($str));
   if ($forbidden) break;
  }
//check for line breaks if checking all patterns
if ($check_all_patterns AND !$forbidden) $forbidden = preg_match("/(%0a|%0d|\\n+|\\r+)/i", 

$str);
if ($forbidden)
{
  echo "<font color=red><center><h3>STOP! Message not sent.</font></h3><br><b>
        The text you entered is forbidden, it includes one or more of the following:
        <br><textarea rows=9 cols=25>";
  foreach ($patterns as $key => $value) echo $value."\n";
  echo "\\n\n\\r</textarea><br>Click back on your browser, remove the above characters and try 

again.
        </b><br><br><br><br>Thankfully protected by phpFormMailer freely available from:
        <a 

href=\"http://thedemosite.co.uk/phpformmailer/\">http://thedemosite.co.uk/phpformmailer/</a>";
  exit();
}
else return $str;
}

$name = is_forbidden($_POST["name"]);
$email = is_forbidden($_POST["email"]);
$thesubject = is_forbidden($_POST["thesubject"]);
$themessage = is_forbidden($_POST["themessage"], false);

$success_sent_msg='<p align="center"><strong> </strong></p>
                   <p align="center"><strong>Your message has been successfully sent to us<br>
                   </strong> and we will reply as soon as possible.</p>
                   <p align="center">A copy of your query has been sent to you.</p>
                   <p align="center">Thank you for contacting us.</p>';

$replymessage = "Hi $name

Thank you for your email.

We will endeavour to reply to you shortly.

Please DO NOT reply to this email.

Below is a copy of the message you submitted:
--------------------------------------------------
Subject: $thesubject
Query:
$themessage
--------------------------------------------------

Thank you";

$themessage = "name: $name \nQuery: $themessage";
mail("$replyemail",
     "$thesubject",
     "$themessage",
     "From: $email\nReply-To: $email");
mail("$email",
     "Receipt: $thesubject",
     "$replymessage",
     "From: $replyemail\nReply-To: $replyemail");
echo $success_sent_msg;
/*
  PHP Form Mailer - phpFormMailer (easy to use and more secure than many cgi form mailers)
   FREE from:

    www.TheDemoSite.co.uk       */
?>

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.