Skip to content
View in the app

A better way to browse. Learn more.

Web Designer Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Email form

Featured Replies

i am trying to add a email form to my website however when i put the form in it keeps coming up with an outlook box to send message.

 

this form is to send feedback and comments from my website to my email address.

 

can someone please look at the code below and tell me where i am going wrong.

 

<?php

// OPTIONS - PLEASE CONFIGURE THESE BEFORE USE!

 

$yourEmail = "YOU@YOURWEBSITE.COM"; // the email address you wish to receive these mails through

$yourWebsite = "WEBSITE NAME"; // the name of your website

$maxPoints = 4; // max points a person can hit before it refuses to submit - recommend 4

 

 

function isBot() {

$bots = array("Indy", "Blaiz", "Java", "libwww-perl", "Python", "OutfoxBot", "User-Agent", "PycURL", "AlphaServer", "T8Abot", "Syntryx", "WinHttp", "WebBandit", "nicebot");

$isBot = false;

 

foreach ($bots as $bot)

if (strpos($_SERVER['HTTP_USER_AGENT'], $bot) !== false)

$isBot = true;

 

if (empty($_SERVER['HTTP_USER_AGENT']) || $_SERVER['HTTP_USER_AGENT'] == " ")

$isBot = true;

 

return $isBot;

}

 

if ($_SERVER['REQUEST_METHOD'] == "POST") {

if (isBot())

exit("Bots not allowed.</p>");

 

function clean($data) {

$data = trim(stripslashes(strip_tags($data)));

return $data;

}

 

// lets check a few things - not enough to trigger an error on their own, but worth assigning a spam score..

// score quickly adds up therefore allowing genuine users with 'accidental' score through but cutting out real spam :)

$points = (int)0;

 

$badwords = array("adult", "beastial", "bestial", "blowjob", "clit", "cum", "cunilingus", "cunillingus", "cunnilingus", "****", "ejaculate", "fag", "felatio", "fellatio", "****", "fuk", "fuks", "gangbang", "gangbanged", "gangbangs", "hotsex", "hardcode", "jism", "jiz", "orgasim", "orgasims", "orgasm", "orgasms", "phonesex", "phuk", "phuq", "porn", "pussies", "pussy", "spunk", "xxx", "viagra", "phentermine", "tramadol", "adipex", "advai", "alprazolam", "ambien", "ambian", "amoxicillin", "antivert", "blackjack", "backgammon", "texas", "holdem", "poker", "carisoprodol", "ciara", "ciprofloxacin", "debt", "dating", "porn", "link=", "voyeur");

$exploits = array("content-type", "bcc:", "cc:", "document.cookie", "onclick", "onload", "javascript");

 

foreach ($badwords as $word)

if (strpos($_POST['comments'], $word) !== false)

$points += 2;

 

foreach ($exploits as $exploit)

if (strpos($_POST['comments'], $exploit) !== false)

$points += 2;

 

if (strpos($_POST['comments'], "http://") === true || strpos($_POST['comments'], "www.") === true)

$points += 2;

if (isset($_POST['nojs']))

$points += 1;

if (preg_match("/(<.*>)/i", $_POST['comments']))

$points += 2;

if (strlen($_POST['name']) < 3)

$points += 1;

if (strlen($_POST['comments']) < 15 || strlen($_POST['comments'] > 1500))

$points += 2;

// end score assignments

 

if (empty($_POST['name']) || empty($_POST['email']) || empty($_POST['comments'])) {

$error_msg .= "Name, e-mail and comments are required fields. \n";

} elseif (strlen($_POST['name']) > 15) {

$error_msg .= "The name field is limited at 15 characters. Your first name or nickname will do! \n";

} elseif (!ereg("^[A-Za-z' -]*$", $_POST['name'])) {

$error_msg .= "The name field must not contain special characters. \n";

} elseif (!ereg("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,6})$",strtolower($_POST['email']))) {

$error_msg .= "That is not a valid e-mail address. \n";

} elseif (!empty($_POST['url']) && !preg_match('/^(http|https):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/?/i', $_POST['url']))

$error_msg .= "Invalid website url.";

 

if ($error_msg == NULL && $points <= $maxPoints) {

$subject = "Automatic Form Email";

 

$message = "You received this e-mail message through your website: \n\n";

foreach ($_POST as $key => $val) {

$message .= ucwords($key) . ": $val \r\n";

}

$message .= 'IP: '.$_SERVER['REMOTE_ADDR']."\r\n";

$message .= 'Browser: '.$_SERVER['HTTP_USER_AGENT']."\r\n";

$message .= 'Points: '.$points;

 

if (strstr($_SERVER['SERVER_SOFTWARE'], "Win")) {

$headers = "From: $yourEmail \r\n";

$headers .= "Reply-To: {$_POST['email']}";

} else {

$headers = "From: $yourWebsite <$yourEmail> \r\n";

$headers .= "Reply-To: {$_POST['email']}";

}

 

if (mail($yourEmail,$subject,$message,$headers)) {

echo '<p>Your mail was successfully sent.</p>';

} else {

echo '<p>Your mail could not be sent this time.</p>';

}

}

}

function get_data($var) {

if (isset($_POST[$var]))

echo htmlspecialchars($_POST[$var]);

}

if ($error_msg != NULL) {

echo '<p><strong style="color: red;">ERROR:</strong><br />';

echo nl2br($error_msg) . "</p>";

}

?>

 

 

<form action="mail_form_v2.php" method="post">

<noscript>

<p><input type="hidden" name="nojs" id="nojs" /></p>

</noscript>

<p>

<label for="name">Name:</label>

<input type="text" name="name" id="name" value="<?php get_data("name"); ?>" /><br />

 

<label for="email">E-mail:</label>

<input type="text" name="email" id="email" value="<?php get_data("email"); ?>" /><br />

 

<label for="comments">Comments:</label>

<textarea name="comments" id="comments" rows="5" cols="20"><?php get_data("comments"); ?></textarea><br />

</p>

<p>

<input type="submit" name="submit" id="submit" value="Send" />

</p>

</form>

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.