[PHP-users 16455]Re: mailto送信時の文字化け
KiyohitoTanaka
tanaka-tec @ masecon.co.jp
2003年 7月 3日 (木) 19:06:26 JST
田中です。
スレッドがMLの主旨から外れて、まるで○ちゃんねるチックに傾いて
しまっていたのは反省しております。m(_ _)m
解らない上に次から次へと諸説が出てきたので、まだ整理がついていない
段階です。
また、極論的解釈をされるだけの投稿者にも閉口しております。
早く話しをPHPに戻してー。
>
> $subj = "日本語";
> $subj = mb_convert_encoding($subj,
> mb_internal_encoding(), // from, script encoding
> 'JIS'); // to
> $subj = base64_encode($subj); // MIME-B, いわゆる BASE64
> $subj = "=?ISO-2022-JP?B$subj?="; // 組み立てます
> $subj = urlencode($subj); // URL エンコ〜ド
> if (strlen($url_eubj) > 60) die("長すぎ!\n");
> $url = "mailto:me @ example.com?subject=$subj"; // 完成
>
> とまあ、こんな感じでよいのではと思いますけど、試してません。
ご親切なお話、ありがとうございます。
あまり安全な得策ではないのでしたらタイトルと本文を飛ばすのを
止めておこうと考えています。
>
> だいだい、subject= で題名渡したところで、送信者が書き換えたら、
> おしまいだし、識別するだけなら、US-ASCII で十分だし。
>
どこでこの方法を使おうとしているかと言えば、
・承認が必要な書類について
・ブラウザ上で押しボタンのクリックで承認行為ができる
・承認すると承認欄に承認者の名前(クリッカブル)が表示される
・その名前をクリックするとメーラーが立ち上がり、その承認者
にメールを送信できるようになる
このような機能なのです。承認もあれば差戻しもあります。
例えば訂正が発生した場合には一度差し戻してから訂正を行い、
再度承認を行います。
差戻しを必要とする場合、承認者にメールで差戻しの依頼を
行います。その依頼メールの作成に使おうと考えたのです。
このようなメールですから、タイトルは『○×書類について』
という一定のものでよいですし。本文の行頭に
『お疲れ様です・・。』というような挨拶の一行をデフォルト
挿入しようと思ったのです。
もちろん、ユーザがタイトル・本文共変更することもあるで
しょう。
HTMLは全てEUC-JPで書いていて、そのブラウザからJIS(SJIS)
のメーラーにデータを渡そうと考えたのです。
ユーザは限定できますので、必要ならばメーラーも指定は
できます。
少し時間がかかりますが、虱潰しにやってみます。
ありがとうございました。m(_ _)m
PHP-users メーリングリストの案内