2

这是我第一次使用 php,我不知道我在做什么。我已经采用了这个模板并编写了一个 html 表单来配合它,除了没有必填字段之外,它一切正常,因此如果您单击提交,它可以发送一封空白电子邮件。我希望它在“名称”和“电子邮件”以及“消息”输入为空时出现错误消息。任何人都可以帮忙吗?

<?php

$EmailFrom = "joejlomax@gmail.com";
$EmailTo = "joejlomax@gmail.com";
$Subject = "T/V/C Inquiry";
$Name = Trim(stripslashes($_POST['Name'])); 
$Tel = Trim(stripslashes($_POST['Tel'])); 
$Email = Trim(stripslashes($_POST['Email'])); 
$Message = Trim(stripslashes($_POST['Message'])); 


// validation
$validationOK=true;
if (!$validationOK) {
  print "<meta http-equiv=\"refresh\" content=\"0;URL=error.php\">";
  exit;
}

// prepare email body text
$Body = "";
$Body .= "Name: ";
$Body .= $Name;
$Body .= "\n";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "Message: ";
$Body .= $Message;
$Body .= "\n";

// send email 
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");

// redirect to success page 
if ($success){
  print "<meta http-equiv=\"refresh\" content=\"0;URL=contactthanks.php\">";
}
else{
  print "<meta http-equiv=\"refresh\" content=\"0;URL=error.php\">";
}
?>
4

1 回答 1

0

您可以使用empty检查变量是否为.. 为空。

$validationOK = true;
if(empty($Name) OR empty($Tel) OR empty($Email) OR empty($Message)) {
    $validationOK = false;
}
if (!$validationOK) {
    print "<meta http-equiv=\"refresh\" content=\"0;URL=error.php\">";
    exit;
}
于 2015-07-20T20:57:53.047 回答