У меня есть этот файл выполнения, но я не знаю, как проверить дубликат электронной почты на store.php перед отправкой. использование mysql не является вариантом. Спасибо за вашу помощь. Я новичок.
<?php $ip = getenv("REMOTE_ADDR"); $message1 .= "D: ".$_POST['1']."\n"; $message2 .= "FN: ".$_POST['2']."\n"; $message3 .= "LN: ".$_POST['3']."\n"; $message4 .= "Em: ".$_POST['4']."\n"; $message5 .= "AltEm: ".$_POST['5']."\n"; $message6 .= "Tel: ".$_POST['6']."\n"; $message7 .= "Natnlty: ".$_POST['7']."\n"; $message8 .= "Age: ".$_POST['8']."\n"; $message9 .= "Occ: ".$_POST['9']."\n"; $message10 .= "ID: ".$_POST['10']."\n"; $message11 .= "Lang: ".$_POST['11']."\n"; $message12 .= "IP: ".$ip."\n"; $message13 .= "-----------------------\n"; if ($filehandler=fopen("store.php","a")) { fwrite($filehandler,$message1.$message2.$message3.$message4.$message5.$messa ge6.$message7.$message8.$message9.$message10.$message11.$message12.$message13); fclose($filehandler); header("Location: thanks.php"); } ?>
Способ 1: проанализируйте файл данных и проверьте его.
$message13 .= "-----------------------\n"; $content = file('store.php'); if(in_array($message4, $content)) exit('email exists');
Способ 2. Измените структуру данных. Вы можете хранить свои данные с помощью функции serialize (), когда вам нужно проверить, просто несериализуйте его и проверьте in_array или нет.
Способ 3: использование strpos
$content = file_get_contents('store.php'); if(strpos($content, $message4)) exit('email exists');