简单的php电子邮件验证

时间:2014-09-10 10:03:18

标签: php validation email

我正在制作一个简单的“将您的电子邮件添加到我们的订阅”列表。我只想要有效的电子邮件。

我正在使用write-to-txt函数。

这个验证码似乎只是说输入有效或无效。但它并没有阻止代码将无效的电子邮件写入txt。我做错了什么?

<form action= "" method="post" name="form">
<input type="text" name="email">
<br>
<br>
<input type="submit" name="submit" value="submit"><br>
</form>

<?php
if(isset($_POST['submit']))
{
    $email = $_POST['email'];
    $file = fopen("emaillist.txt","a+");
    fwrite($file,$email . "\n");
   fclose($file); 
   print_r(error_get_last());

if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
  echo 'Thanks for subscribing';
} else {
  echo 'You have entered an invalid email - try again'; 
}

}

?>

1 个答案:

答案 0 :(得分:1)

验证成功后,您应该只写入文本文件,如下所示:

<?php
    if (isset($_POST['submit'])) {
        $email = $_POST['email'];
        if (filter_var($email, FILTER_VALIDATE_EMAIL)) {

            echo 'Du er nu tilmelds nyhedsbrevet';
            $file = fopen("emaillist.txt","a+");
            fwrite($file,$email . "\n");
            fclose($file); 
            // print_r(error_get_last());

        } else {

            echo 'Du har indtastet en ugyldig email'; 

        }

    }

?>