2012-06-12 5 views
-4

Посмотрите этот код:функция почты()

$to="$email"; 
$sub="Hi"; 
$mex="hi <br /> \"<a href='http://exemple.com/ver.php?id=$cod'</a>"\"; 
$int = "From:[email protected]"; 
$int .= "Reply-To:[email protected]"; 
$int .= "X-Mailer: PHP/".phpversion(); 
mail($to, $sub, $mex, $int); 

Ошибка находится на $ MEX, я думаю, что это на "<a href.."

Как это исправить?

+1

вы даже не пытались добавить цитату и использовать подсветку синтаксиса, чтобы увидеть ошибки кода. – Gntem

ответ

0
$to="$email"; 
$sub="Hi"; 
$mex="hi <br /> <a href='http://exemple.com/ver.php?id=$cod'>something</a>"; 
$int = "From:[email protected]"; 
$int .= "Reply-To:[email protected]"; 
$int .= "X-Mailer: PHP/".phpversion(); 
mail($to, $sub, $mex, $int); 
2
$mex="hi <br /> \"<a href='http://exemple.com/ver.php?id=$cod'></a>\""; 

Вы неуместны последний обратный слеш (\), он должен быть использован, чтобы избежать ";

Примечание: Использование библиотеки как Swiftmailer вместо mail() сделает вашу жизнь намного проще. Например, с добавлением заголовков (вы должны добавить CRLF после каждого заголовка, как указано на manual page). Честно говоря, я не думаю, что новички должны использовать функцию mail(). Был там, сделал это.

2

Попробуйте так

$mex="hi <br /> \"<a href='http://exemple.com/ver.php?id=$cod'</a>\""; 
0
$mex="hi <br /> \"<a href='http://exemple.com/ver.php?id=$cod'</a>"\"; 

должен быть

$mex= "hi <br/><a href='http://exemple.com/ver.php?id=$cod'>something here</a>"; 

Нет необходимости окружать <a href ... ></a> в кавычках, и вы, вероятно, хотите, чтобы положить что-то в середине > и </a>, чтобы пользователь нажимает

0
$mex="hi <br /> <a href=\"http://exemple.com/ver.php?id=$cod\">Your link text HERE</a>"; 

Также заголовки должны заканчиваться новой строкой:

$int = "From:[email protected]\n\r"; 
$int .= "Reply-To:[email protected]\n\r"; 
$int .= "X-Mailer: PHP/".phpversion()."\n\r"; 

\n\r символ новой строки ОС зависит и это работает на Windows, UNIX для использования только \n или \n\n.

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