CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Results 1 to 15 of 23

Threaded View

  1. #23
    Join Date
    Apr 2006
    Location
    Kolkata, India
    Posts
    278

    Re: How to email from WEBpage?

    After doing much of Permutation & Combination & research I ended up in this , Which is working perfectly alright.
    This is the PHPcode for Contact_process.php
    Code:
    <?php
    /* 
    */
    
    // ------- three variables you MUST change below  -------------------------------------------------------
    $replyemail="[email protected]"; //change to your email address
    $valid_ref1="http://www.yourwebsite.com/form.html"; //change to your domain name
    $valid_ref2="http://www.yourwebsite.com/form.html"; //change to your domain name
    
    // -------- 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) OR ($_POST["block_spam_bots"]!=12))//you can change this but remember to change it in the contact form too
    {
     echo '<h2>ERROR - not sent.';
     if (file_exists("debug.flag")) echo '<hr>"$valid_ref1" and "$valid_ref2" are incorrect within the file:<br>
                                          contact_process.php <br><br>On your system these should be set to: <blockquote>
                                                                              $valid_ref1="'.str_replace("www.","",$ref_page).'"; <br>
                                                                              $valid_ref2="'.$ref_page.'";
                                                                              </blockquote></h2>
                                                                              : contact_process.php <br> (.)';
     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/';
     $patterns[3] = '/Content-Transfer-Encoding/';
     $patterns[4] = '/to:/';
     $patterns[5] = '/cc:/';
     $patterns[6] = '/bcc:/';
     $forbidden = 0;
     for ($i=0; $i<count($patterns); $i++)
      {
       $forbidden = preg_match($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 trim($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>Secure Connection By :
            <a href=\"http://www.yourwebsite.com/\">http://www.yourwebsite.com/</a>";
      exit();
     }
    }
    
    foreach ($_REQUEST as $key => $value) //check all input
    {
     if ($key == "themessage") is_forbidden($value, false); //check input except for line breaks
     else is_forbidden($value);//check all
    }
    
    $name = $_POST["name"];
    $email = $_POST["email"];
    $thesubject = $_POST["thesubject"];
    $themessage = $_POST["themessage"];
    
    $success_sent_msg='<font color=red><center><h3>Success! Message sent.</font></h3><br><b>
                       <p align="center"><strong>&nbsp;</strong></p>
                       <font color=blue><p align="center"><h3><strong>Your message has been successfully sent to us</font></h3><br><b>
                       <font color=green><h3></strong> and we will reply as soon as possible.</font></h3><br><b></p>
                       <font color=magenta><h3><p align="center">A copy of your query has been sent to you.</font></h3><br><b></p>
                       <font color=black><h3><p align="center">Thank you for contacting us.</font></h3><br><b></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;
    /*
      
    
    */
    ?>
    Next this is the Form.html
    Code:
    <html>
    
    <head>
    <title> -  - anything.
    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">Secure Method: <a
          href="http://www.yourwebsite.com" title="Your Brand name.">Your Brand name.</a></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">
          <input type="hidden" name="block_spam_bots" value="1">
          </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">&nbsp;
            <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>
            <a href="http://www.yourwebsite.com"> </a></td>
        </tr>
        <tr>
          <td width="162"></td>
          <td width="556"><p>
            <input type="button" class="button"
          value="Post This Message." name="B1" ONCLICK="javascript:validateForm()">
              <small> <small>You must fill in
            the fields marked with a *</p>
            </td>
        </tr>
      </table>
          <p>&nbsp;</p>
          <p>&nbsp;</p>
          <p>&nbsp;</p>
          <p>&nbsp;</p>
          <p>&nbsp;</p>
          <p><span class="style3">Protected by: <a
          href="http://www.yourwebsite.com" title="Your Brand name">Your Brand name</a></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)  
      {
       block_spam_bots.value=4*3;//spam bots currently can not read JavaScript, if could then they'd fail the maths!
       submit();                  // do check for updatea often at:   
      } 
     }
    }
    // --></script>
    </body>
    </html>
    this works perfectly alright.
    Last edited by dsrahul; October 12th, 2012 at 07:51 AM. Reason: tags

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured