Intereting Posts
Как CodeIgniter сохраняет данные сеанса даже при закрытии браузера? Как правильно настроить xdebug.file_link_format? как преобразовать число в php, например 1.905e + 06 будет 1905000 Как использовать оператор switch PHP, чтобы проверить, содержит ли строка слово (но может также содержать другие)? Как использовать jQuery AJAX $ .post для хранения переменных PHP $ _SESSION? Поиск базы данных в PHP Как создать монолитную (отображать отдельные элементы) из моей базы данных? PHP Как Regex заменить несколько тегов <br /> одним тегом <br />? Проблема с MySQL localhost / 127.0.0.1 MySQL Запросить два разных условия для разных счетчиков в 1 запросе Вход в систему Opencart Force, когда вы видите страницу Cart? ошибка phpunit при тестировании реализации с инъецированными зависимостями Многократные приложения CodeIgniter htaccess Лучший способ реализовать метаязык, скомпилированный до PHP Как подсчитывать строки по дате с использованием MySQL и PHP

отправить ссылку, используя функцию php mail ()

Пользователь должен получить электронное письмо в формате: —– Скопировать маркер: xxxxx И вставить его в эту ссылку —– Мои коды:

$message="Copy the token: ". token_generator(10)." ". "And paste it in the link "."<a href='recover_pass_get_mail.php'>Link</a>"; 

где xxxxx возвращается функцией token_generator (10). но пользователь получает в формате код написан

похоже, что ваша функция электронной почты не очень хорошо реагирует на html-теги, вы, вероятно, пропустили это в своем $header объекте you'r $header .

 $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; 

прочитайте это, https://css-tricks.com/sending-nice-html-email-with-php/

он имеет большое объяснение

Существует много моментов, о которых вам следует подумать. Вы можете заметить их в следующем примере кода:

 <?php $fromTitle = "From Title"; $emailFrom = 'example_from@gmail.com'; $emailTo = 'example_to@gmail.com'; $token = token_generator(10); $subject = "Password Recovery"; $message = "Copy the token: $token And paste it in the link <a href='recover_pass_get_mail.php'>Link</a>"; $random_hash = md5(uniqid(time())); $header = "From: $fromTitle <$emailFrom>\r\n"; $header .= "Reply-To: ".$emailFrom."\r\n"; $header .= "MIME-Version: 1.0\r\n"; $header .= "Content-Type: multipart/mixed; boundary=\"".$random_hash."\"\r\n\r\n"; $header .= "This is token email.\r\n"; $header .= "--".$random_hash."\r\n"; $header .= "Content-type:text/html; charset=UTF-8\r\n"; $header .= "Content-Transfer-Encoding: 7bit\r\n\r\n"; @mail($emailTo, $subject, $message, $header); ?> 

Однако в ваших строках есть некоторые проблемы, вот несколько вещей, чтобы рассмотреть здесь:

Прежде всего, вы можете захотеть (как практический) назначить token_generator(10) переменной на вашем скрипте.

Что-то вроде этого

 $token = token_generator(10) 

и передать $token скрипту

Во-вторых, у вас возникают проблемы со строками в вашем письме. Вам не нужно обертывать вашу ссылку в тегах a href (на самом деле это будет проблемой, если у пользователя нет включенной электронной почты HTML (как это многие не делают). Просто опубликуйте ссылку.

В-третьих, почему бы просто не прикрепить токен к URL-адресу? Это простой шаг для пользователя. Вот пример:

 $message="Follow this link: http://(url)recover_pass_get_mail.php?token=$token"; 

а затем вы можете просто получить токен из URL-адреса, используя

 $_GET['token']; 

Ты пробовал ?

 $myToken = token_generator(10); $message="Copy the token: $myToken And paste it in the link <a href='recover_pass_get_mail.php'>Link</a>"; 

DEMO