【发布时间】:2021-05-07 05:34:59
【问题描述】:
我已经创建了一个表单和用于发送电子邮件的 PHP 代码,但是在提交表单时,如果没有页面刷新,我似乎无法实现某种无缝警报。我需要某种绿色/红色文本出现在按钮下方的某处。我还需要在电子邮件输入框中验证电子邮件的正确输入。并且还需要保护这个网站免受垃圾邮件机器人的攻击,现在我只有 HTML 和 PHP,我的 PHP:
<?php
if(isset($_POST['button']))
{
$to = $_POST['emailTo'];
$from = $_POST['email'];
$name = $_POST['fullName'];
$comment = $_POST['comment'];
$headers = "From: $from";
$headers = "From: " . $from . "\r\n";
$headers .= "Reply-To: ". $from . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$mailsubject = "Online Contact Form Inquery";
$body = "<!DOCTYPE html><html lang='en'><head><meta charset='UTF-8'></head><body>";
$body .= "<table style='width: 100%;'>";
$body .= "<tbody>";
$body .= "<tr><td style='border:none;'><strong>Dear Gumcash Employee,</strong></td></tr>";
$body .= "<tr><td style='border:none;'>You Received an e-mail from the online website, see details below:</td></tr>";
$body .= "<tr><td style='border:none;'> </td></tr>";
$body .= "<tr><td style='border:none;'><strong>Name:</strong> {$name}</td></tr>";
$body .= "<tr><td style='border:none;'><strong>Email:</strong> {$from}</td></tr>";
$body .= "<tr><td style='border:none;'><strong>Comment:</strong> {$comment}</td></tr>";
$body .= "<tr><td style='border:none;'> </td></tr>";
$body .= "<tr><td style='border:none;'>Thank you</td></tr>";
$body .= "</tbody></table>";
$body .= "</body></html>";
$send = mail($to, $mailsubject, $body, $headers);
header('Location:contact.html');
die();
}
还有我的 HTML:
<form action="contact_process.php" method="POST" id="form">
<div class="contact-form">
<div class="col-md-6 form-field input-halfrght">
<input name="fullName" id="fullName"type="text" class="form-input" placeholder="Full Name*" required>
</div>
<div class="col-md-6 form-field input-halflft">
<input name="email" id="email" type="text" class="form-input" placeholder="Email*" required>
</div>
<div class="col-lg-12 col-md-12 form-field">
<select id="emailTo" name="emailTo" type="text" class="form-input" placeholder="Send To*" required>
<option value="e_cashdan@cashdan.com">Eric Cashdan</option>
<option value="r_gumersell@gumcash.com">Rich Gummersell</option>
<option value="g_garibaldi@gumcash.com">Gino Garibaldi</option>
<option value="d_macgillivray@gumcash.com">Don Macgillivray</option>
<option value="k_ohrnberger@gumcash.com">Kevin Ohrnberger</option>
<option value="d_samuylov@gumcash.com">Dmitri Samuylov</option>
<option value="m_caputo@gumcash.com">Mike Caputo</option>
<option value="f_meza">Frank Meza</option>
<option value="j_javett@gumcash.com">Joann Javett</option>
<option value="c_baum@gumcash.com">Colleen Baum</option>
<option value="d_payne@gumcash.com">Devin Arciprete</option>
<option value="m_roche">Melissa Roche</option>
<option value="a_collora@gumcash.com">Amy Collora</option>
<option value="c_aguilar@gumcash.com">Carlos Aguilar</option>
<option value="accounting@gumcash.com">Accounting</option>
<option value="quotations@gumcash.com">Quote</option>
<option value="orders@gumcash.com">Orders</option>
<option value="office@lovolta.com">Eugene TESTING</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-field">
<textarea name="comment" cols="1" rows="2" class="form-comment" placeholder="Comment*"></textarea>
</div>
<div class="col-md-12 form-field no-margin">
</div>
<div class="col-md-12 form-field no-margin">
<input name="submit" type="submit" class="form-submit-btn" value="Submit Now">
</div>
</div>
</form>
尝试验证电子邮件输入,然后下拉选择选择我要将此表单提交给的电子邮件。特殊类型的场景。任何帮助将不胜感激验证,发送确认和阻止机器人。谢谢!
【问题讨论】:
标签: javascript php html forms validation