2015-04-19 5 views
2

Пользователь должен получить по электронной почте в формате: ----- Скопируйте маркер: ххххх и вставить его в этом Ссылка ----- Мои коды:отправить ссылку с помощью PHP почты() функция

$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). , но пользователь получает в формате код написан

+0

Что именно ваша ошибка? –

+0

user get --- Скопируйте токен: xxxxx И вставьте его в ссылку Link partho

+0

, которая не ожидается – partho

ответ

4

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

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

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

это великое объяснение

+0

Вы хотите, чтобы я скопировал этот контекст с этого сайта? основная проблема заключается в том, что люди не google, прежде чем открывают новый вопрос. – Danny

+0

Нет, вы должны добавить код с этого сайта и объяснить, как, почему, когда он лучше всего работает на OP, на основе ссылки, которую вы публикуете. –

+0

я много раз искал. Я попытался, как они сказали. даже ответы из переполнения стека не работают для меня. но эти ответы работали для адеектов. – partho

0

Вы пробовали?

$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

+0

Как это будет работать для пользователей, которые не используют HTML-почту? – nomistic

+0

да. но все же я получаю: ...... И вставьте его в ссылку Link partho

+0

функция 'token_generator (10)', не работает. –

1

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

Прежде всего вы можете (как показывает практика) назначения 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']; 
2

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

<?php 

$fromTitle = "From Title"; 
$emailFrom = '[email protected]'; 
$emailTo = '[email protected]'; 
$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); 


?> 
+0

Я не знаю, почему кто-то проголосует .. если есть что-то не так, просто дайте нам знать .. мой ответ проверен и работает правильно –

+0

is 'token_generator (10)' эхом ничего? –

+0

да, я согласен, мы должны использовать переменную для этого .. я изменю свой ответ .. и вашу функцию token_generator, как я думаю, должен вернуть токен, а не эхо-токен –

Смежные вопросы