Схема URL mailto:
определена в RFC 2368 .Кроме того, соглашение о кодировании информации в URL и URI определено в RFC 1738 , а затем RFC 3986 .Они описывают, как включить заголовки body
и subject
в URL (URI):
mailto:infobot@example.com?subject=current-issue&body=send%20current-issue
В частности, вы должны в процентах кодировать адрес электронной почты, тему и текст и помещать их вформат выше.Закодированный в процентах текст допустим для использования в HTML, однако этот URL должен быть закодирован для использования в атрибуте href
в соответствии со стандартом HTML4 :
<a href="mailto:infobot@example.com?subject=current-issue&body=send%20current-issue">Send email</a>
И, в общем, вот простой скрипт PHP, который кодирует в соответствии с приведенным выше.
<?php
$encodedTo = rawurlencode($message->to);
$encodedSubject = rawurlencode($message->subject);
$encodedBody = rawurlencode($message->body);
$uri = "mailto:$encodedTo&subject=$encodedSubject&body=$encodedBody";
$encodedUri = htmlspecialchars($uri);
echo "<a href=\"$encodedUri\">Send email</a>";
?>