Webサイトの作成でメーラーを起動させる方法として
aタグとmailtoがある。mailtoリンクはさらに
あらかじめタイトルや本文を入れることができる。
これを使ってメール作成の効率をアップさせようと
思ってやってみたら文字化けしまくりですガーン

最初からShift-JISだと問題なくできるのですが
EUC-JPとかUTF-8だと文字化けします。

いろいろ悩んで解決できたので対処方法をメモひらめき電球
解決策としては、PHPで文字コードを変換して
そのあとでさらにエンコードをかけます。


$title = "タイトル";
$title = mb_convert_encoding($title, 'Shift-JIS', 'EUC-JP');
$title = urlencode($title);

$body = "本文";
$body = mb_convert_encoding($body, 'Shift-JIS', 'EUC-JP');
$body = urlencode($body);

<a href="mailto:xx@test.xx?subject=タイトル&body=本文">メーラー起動</a>

これでOKだと思ったら、mailtoでは文字数制限があるようで
多すぎるとメーラーが起動しません。
やられましたo(TωT )
私が調べた感じだと全体で255バイトらしいです。