电子邮件验证和从文本文件中删除 - PHP


Email Validation and Deletion from text file - PHP

我正在尝试进行电子邮件验证。

我有一个输入文本字段,当用户将数据

输入输入字段时,我会将其写入文件。

我想要一个简单的代码来检查电子邮件是否有效,如果电子邮件无效,请返回原始页面,不要将其添加到.txt文件中

目前我有:

// only do file operations when appropriate
if(isset($_POST['email']) && (filter_var($a, FILTER_VALIDATE_EMAIL)) {
    $a = $_POST['email'];
    $myFile = "email.txt";
    $fh = fopen($myFile, 'a') or die("can't open file");
    fwrite($fh, $a);
    fclose($fh);
}
else
{
    echo "Email is not Valid" . "<script>history.back()</script>";
}

如您所见,我还没有弄清楚如何不将其添加到文本文件中,但是我想先让电子邮件过滤器工作。 谁能帮我解决这个问题?

编辑:我也不断收到错误:

解析错误:语法错误,意外的"{" "C:.......''授权.php在第59行

if 语句的左括号是什么?

我认为

问题可能是您正在使用的$a if条件检查中未定义

我说你应该有

if(isset($_POST['email']) && (filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))) 

而不是

if(isset($_POST['email']) && (filter_var($a, FILTER_VALIDATE_EMAIL))

代码中存在错误。您正在检查"if"中的变量$a但此变量是在 if 之后定义的。您可以使用filter_input代替filter_var:

$a = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);