Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
114 changes: 70 additions & 44 deletions index.php
Original file line number Diff line number Diff line change
@@ -1,43 +1,69 @@
<?php
if (isset($_POST["submit"])) {
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$human = intval($_POST['human']);
$from = 'Demo Contact Form';
$to = 'example@domain.com';
$subject = 'Message from Contact Demo ';

$body ="From: $name\n E-Mail: $email\n Message:\n $message";
error_reporting( E_ALL );
ini_set( 'display_errors', 1 );

// Check if name has been entered
if (!$_POST['name']) {
$errName = 'Please enter your name';
}

// Check if email has been entered and is valid
if (!$_POST['email'] || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$errEmail = 'Please enter a valid email address';
}

//Check if message has been entered
if (!$_POST['message']) {
$errMessage = 'Please enter your message';
}
//Check if simple anti-bot test is correct
if ($human !== 5) {
$errHuman = 'Your anti-spam is incorrect';
}
if (isset($_POST["submit"])) {
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$human = intval($_POST['human']);
$from = 'Demo Contact Form';
$to = 'example@domain.com';
$subject = 'Message from Contact Demo ';

$body ="From: $name\n E-Mail: $email\n Message:\n $message";
}

// Check if name has been entered
if (!isset($_POST) || !key_exists('name', $_POST)) {
$errName = 'Please enter your name';
}

// Check if email has been entered and is valid
if (!isset($_POST) || !key_exists('email', $_POST) || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$errEmail = 'Please enter a valid email address';
}

//Check if message has been entered
if (!isset($_POST) || !key_exists('message', $_POST)) {
$errMessage = 'Please enter your message';
}
//Check if simple anti-bot test is correct
if (!isset($human) || $human !== 5) {
$errHuman = 'Your anti-spam is incorrect';
}
// If there are no errors, send the email
if (!$errName && !$errEmail && !$errMessage && !$errHuman) {
if (mail ($to, $subject, $body, $from)) {
$result='<div class="alert alert-success">Thank You! I will be in touch</div>';
} else {
$result='<div class="alert alert-danger">Sorry there was an error sending your message. Please try again later.</div>';
}
if (!isset($errName) && !isset($errEmail) && !isset($errMessage) && !isset($errHuman)) {
$result = fakemail($to, $subject, $body, $from);
if (isset($result)) {
$result .= '<div class="alert alert-success">Thank You! I will be in touch</div>';
} else {
$result .= '<div class="alert alert-danger">Sorry there was an error sending your message. Please try again later.</div>';
}
}


/**
* if you want to send real mail, substitute mail for fakemail
* with the same parameters.
*
* @param $to
* @param $subject
* @param $body
* @param $from
* @return string faking mail output.
*/
function fakemail($to, $subject, $body, $from) {
$result = "<br/>Sending email to $to from $from with subject $subject and body <p>$body</p>";
return $result;
}
}

function showPost($name) {
if (isset($_POST[$name])) {
echo htmlspecialchars($_POST[$name]);
}
}

?>

<!DOCTYPE html>
Expand All @@ -60,29 +86,29 @@
<div class="form-group">
<label for="name" class="col-sm-2 control-label">Name</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="name" name="name" placeholder="First & Last Name" value="<?php echo htmlspecialchars($_POST['name']); ?>">
<?php echo "<p class='text-danger'>$errName</p>";?>
<input type="text" class="form-control" id="name" name="name" placeholder="First & Last Name" value="<?php showPost('name'); ?>">
<?php if (isset($errName)) echo "<p class='text-danger'>$errName</p>";?>
</div>
</div>
<div class="form-group">
<label for="email" class="col-sm-2 control-label">Email</label>
<div class="col-sm-10">
<input type="email" class="form-control" id="email" name="email" placeholder="example@domain.com" value="<?php echo htmlspecialchars($_POST['email']); ?>">
<?php echo "<p class='text-danger'>$errEmail</p>";?>
<input type="email" class="form-control" id="email" name="email" placeholder="example@domain.com" value="<?php showPost('email'); ?>">
<?php if (isset($errEmail)) echo "<p class='text-danger'>$errEmail</p>";?>
</div>
</div>
<div class="form-group">
<label for="message" class="col-sm-2 control-label">Message</label>
<div class="col-sm-10">
<textarea class="form-control" rows="4" name="message"><?php echo htmlspecialchars($_POST['message']);?></textarea>
<?php echo "<p class='text-danger'>$errMessage</p>";?>
<textarea class="form-control" rows="4" name="message"><?php showPost('message');?></textarea>
<?php if (isset($errMessage)) echo "<p class='text-danger'>$errMessage</p>";?>
</div>
</div>
<div class="form-group">
<label for="human" class="col-sm-2 control-label">2 + 3 = ?</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="human" name="human" placeholder="Your Answer">
<?php echo "<p class='text-danger'>$errHuman</p>";?>
<input type="text" class="form-control" id="human" name="human" placeholder="Your Answer" value="<?php showPost('human'); ?>">
<?php if (isset($errHuman)) echo "<p class='text-danger'>$errHuman</p>";?>
</div>
</div>
<div class="form-group">
Expand All @@ -92,7 +118,7 @@
</div>
<div class="form-group">
<div class="col-sm-10 col-sm-offset-2">
<?php echo $result; ?>
<?php if (isset($result)) {echo $result;} else { echo "No result yet.";}?>
</div>
</div>
</form>
Expand Down