у меня есть сайт, который позволяет людям отписываться от других сайтов (рассылки, спама и т.д...)
мое веб-приложение позволяет клиентам и пользователям загружать зашифрованный список электронной почты для массовой отписки.
у меня есть таблица: unsubs. в этой таблице есть email и домен.
структура файла выглядит так:
jhq232q3hq2yq3yuh2qyuqU/A$Ja324ju3a4jah34u3w$UQ"$Uq4u q34/hRYHSEa34uw34uQ"/YQ/$84?%JHHdfhdFJKAjaRJSErjsrjse W%$?p09-*Y+_)y8p7uYJgADGq2/TYQgSj1qR"3tQ"/gEHseruDUId
вот мой PHP:
function decrypt($line) {
// do my logic etc...
return $line;
}
function isEmail($email) {
if(preg_match("/^([a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9_-]+)+$/", $email)){
return true;
}
return false;
}
function checkEmail($email) {
// logic
return array('baddomain.com');
}
function emailExists($email) {
// my logic
return TRUE; // for example
}
$file = file_get_contents('sample.txt');
$lines= explode("\n", $file);
foreach($lines as $line) {
if(!empty($line)) {
$line = decrypt($line);
if(isEmail($line)) {
$services = checkEmail($line);
if(is_array($service)) {
foreach($services as $service) {
insertEmail($db, $service, $line); // this is used
}
}
}
}
}
функция check email проверяет, отписан ли email во всех списках, возвращает false, если все отписаны, и массив (список сервисов = домен), если нет.
теперь моя проблема в том, что каждый раз, когда я хочу проверить, является ли email действительным, возвращается false. Мое шифрование работает нормально и оно пуленепробиваемо.
что я упускаю?