如何在 PHP 中验证我的联系表单?解决我的代码

S·科比

我的网站上有一个联系表格,其中包含必填的电子邮件字段。我正在尝试验证 PHP 中的输入字段,以避免用户提交空的电子邮件字段。我尝试了几个教程,但到目前为止都没有成功。如果这里有人可以帮助我修复下面的代码,我将不胜感激

<?php
$recipient_email    = "[email protected]"; //recepient
$from_email         = "[email protected]";

if($_POST){

    $subject = 'Example.com';
    $from = "[email protected]";
    $to = "[email protected]";
    $name   = filter_var($_POST["name"], FILTER_SANITIZE_STRING); 
    $street = filter_var($_POST["strasse"], FILTER_SANITIZE_STRING); 
    $tel    = filter_var($_POST["tel"], FILTER_SANITIZE_STRING);
    $email  = filter_var($_POST["email"], FILTER_VALIDATE_EMAIL);
    $name   = filter_var($_POST["name"], FILTER_SANITIZE_STRING); 
    $street = filter_var($_POST["strasse"], FILTER_SANITIZE_STRING); 
    $email  = filter_var($_POST["email"], FILTER_SANITIZE_STRING); 
    $tel    = filter_var($_POST["tel"], FILTER_SANITIZE_STRING); 

    $message_body =  "Message from $name\n";
    $message_body .=  "------------------------------\n";

    $message_body .=  "Name: $name\n";
    $message_body .=  "Street: $street \n";
    $message_body .=  "Email: $email \n";
    $message_body .=  "Telefon: $tel \n";

    $headers = "MIME-Version: 1.0\r\n"; 
    $headers .= "From:".$from_email."\r\n"; 
    $headers .= "Reply-To: ".$email."\r\n";
    $headers .= "Content-Type: multipart/mixed; boundary = $boundary\r\n\r\n"; 

    //message text
    $body = "--$boundary\r\n";
    $body .= "Content-Type: text/plain; charset=ISO-8859-1\r\n";
    $body .= "Content-Transfer-Encoding: base64\r\n\r\n"; 
    $body .= chunk_split(base64_encode($message_body)); 
    exit;
}

$headers = "From:".$from_email."\r\n".  
            "Reply-To: ".$email. "\r\n" .
            "X-Mailer: PHP/" . phpversion();
$body = $message_body;
}

$sentMail = mail($recipient_email, $subject, $body, $headers);
if($sentMail) //output success or failure messages
{       
    header("Location: http://www.example.com");
}else{
    print 'Could not send mail! Please check your PHP mail configuration.';  
    exit;
}
}
?>
Wr1t3r

由于您已经在检查变量,因此您只需要简单的 if 即可退出代码。在您的 filter_vars 执行此操作后:

... start of your code

    $name   = filter_var($_POST["name"], FILTER_SANITIZE_STRING); 
    $street = filter_var($_POST["strasse"], FILTER_SANITIZE_STRING); 
    $tel    = filter_var($_POST["tel"], FILTER_SANITIZE_STRING);
    $email  = filter_var($_POST["email"], FILTER_VALIDATE_EMAIL);
    $name   = filter_var($_POST["name"], FILTER_SANITIZE_STRING); 
    $street = filter_var($_POST["strasse"], FILTER_SANITIZE_STRING); 
    $email  = filter_var($_POST["email"], FILTER_SANITIZE_STRING); 
    $tel    = filter_var($_POST["tel"], FILTER_SANITIZE_STRING); 

if(!$email) {
  print 'Your email is wrong.';
  exit;
}

... continue with your code

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在我的php联系人表单中设置UTF-8编码。仅拉丁字符正确显示

如何在我的PHP文件中添加简短的PHP代码

如何验证此 PHP 联系表单中的电子邮件?

我们如何在php中处理动态表单

如何在ajax php中编写验证我的sql

如何在php联系人表单中添加抄送?

如何在php中调试我的班级

我如何在php中获取json

我如何在php中定义委托

我如何在我的代码中解决这个分段错误

如何解决我缓慢的代码(使用 PHP - PDO)

我如何解决我在 php 中的 sql 请求问题

如何在最新的PHP代码(功能和类)中修改我的CaptchaSecurityImages.php页面

如何在表单的输入值中添加PHP代码

PHP - 如何在我的函数中传递我的变量

如何在PHP代码中向可编辑按钮添加可折叠表单?我尝试了一些东西,但是没有用

我如何在Flutter中验证单个表单字段

如何在此联系表单中使用 OOP PHP?

如何在我的Matlab代码中解决这些错误?

如何在 PHP 联系表单的每个不同字段中显示错误消息?

当我使用php调用数据时,如何在textarea标签中隐藏html代码?

我如何在php页面中插入一个阻止代码?

现在如何在李之间的我的php代码中显示空字段

我将如何在php和html中引用此代码

如何在 php 中删除除零消息并改进我的代码?

如何在 PHP 中显示表单?

如何在我的提交表单中实施代码检查

我如何php验证我的表单数据,使其必须包含内容?

如何在php中验证整数