У меня возникла проблема с попыткой создать ссылку для проверки электронной почты. Я добавляю lin k в тело письма, и когда этот URL-адрес посещен, он проверяет emial, используя параметры в URL-адресе. Однако, когда отправляется электронное письмо, он автоматически посещает эту ссылку и проверяет ее. Кто-нибудь знает, почему он это делает, или что я делаю неправильно?
Здесь мой код
$to = $_POST['email'];
$subject = "";
$headers = "From: [email protected]" . "\r\n";
$headers .= "Reply-To: [email protected]\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$message = "<html><body><p>Here a message</p>";
$message .= '<a href="http://www.example.com/verification.php?mv6e='.$encode.'&cv6v='.$verification.'">Click here to verify your application</a></body></html>';
mail($to, $subject, $message, $headers);
Это должно установить поле в базе данных для "Проверено". Однако, когда отправляется электронное письмо, поле устанавливается на "Проверено", прежде чем пользователь может даже щелкнуть ссылку. Это создает впечатление, что что-то посещает ссылку заранее. Любое понимание было бы весьма благодарным.
Может быть спам-фильтр, который проверяет ссылки во всех сообщениях электронной почты. Например, gmail сканирует все электронные письма для ссылок на вредоносные веб-сайты.
Вы можете добавить recaptcha на страницу проверки, чтобы убедиться, что ее посетил человек, а не какой-то спам-фильтр-бот.