SoftBank の mailto

SoftBank の mailto には rawurlencode() で。

携帯電話用に mailto を作成していて SoftBank だけうまくいかなかった。

原因は urlencode() を使って subject, body をエンコーディングしていたから。

urlencode() だとスペース(空白)が ”+” になってしまい、
SoftBank の携帯が “+” をデコードせずそのまま表示してしまいます。

DoCoMo, AU は問題なし。

SoftBank だけ rawurlencode() を使うようにしたところOK。
文字コードは UTF-8 で。

$body = rawurlencode($body);
 
$subject = rawurlencode($subject);
 
echo "<a href="mailto:" . $rcptaddr . "?subject=" . $subject . "&amp;body=" . $body . "">メールする</a>";