2015-12-03 3 views
-1

Я отправляю электронную почту через почтовую программу PHP для проверки учетной записи, и она отправляется и работает. Но есть ошибка в части $mail->body, потому что я пропускаю $name переменной в тег <a>, но когда я нажимаю на полученную почту, она по-прежнему $name. Это должно быть опубликованное имя моей формы, но оно просто отображает текст $name и не получает значение $name. Я думаю, проблема в этой строке (проблема синтаксиса).Переменная не получает ее значение

<?php 
$name=$_POST['name']; 
$mail->isHTML(true); 

$mail->Body = '<b>Hello,this is just account activation process please click</b><a href="http://localhost/email_verification/register.php?nm=$name">Here</a><b> and you will be good to go.</b>'; 
?> 
+2

Переменные не расширяются при использовании одинарных кавычек. – j08691

+0

какой у вас метод формы? –

ответ

0

Пожалуйста, используйте двойную кавычку в методе тела.

$mail->Body = "<b>Hello,this is just account activation process please click</b><a href=\"http://localhost/email_verification/register.php?nm=".$name."\">Here</a><b> and you will be good to go.</b>"; 
+0

Было бы полезно, если бы вы объяснили, почему это устраняет его проблему, поэтому OP может учиться на этом. –

+0

Да, это работает, спасибо ... –

+0

и почему есть конкатенация aruond. $ Name. –

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