mailtoの中にスキーマ情報を入れると文字化けします

「まったく何も分からない・・・」そんなユーザーさんの為のフォーラムです。どんなご質問でもお気軽にどうぞ。
返信
bcacsato
パワーユーザー
記事: 234
登録日時: 2005年11月27日(日) 14:05

mailtoの中にスキーマ情報を入れると文字化けします

投稿記事 by bcacsato » 2005年11月27日(日) 14:14

初めまして。現在、初めてCMS Designerでサイトを作成しています。

mailtoのsubjectやbodyに、例えば、

<a href=mailto:a@a.jp?subject={title}>

のようにスキーマの内容(日本語)を入れたいのですが、
EUCのため文字化けしてしまいます。

スキーマをエンコードする手段はないものでしょうか?
もし良い方法がありましたらご紹介下さい。

webmaster
Site Admin
記事: 1451
登録日時: 2004年12月10日(金) 10:09

Re: mailtoの中にスキーマ情報を入れると文字化けします

投稿記事 by webmaster » 2005年11月27日(日) 19:21

 webmasterです。bcacsatoさん、ご質問ありがとうございます。

 今回の件についていろいろと調べてみたのですが、xsltで出力の一部の
文字コードを変換する方法や、javascriptを使ってクライアント側で制御する
方法など、良い方法を見つけることができませんでした。m(_ _;)m

 出力エンコーディングをeuc-jp以外に指定できるようになれば解決する問題
だと思いますので、その方向で今後の改善案を検討させて頂きます。

 今回はお役に立てず申し訳ありません。
 mailto:を使う方法ではなく、メールフォーム等をご利用頂ければと思います。
 (使えないシチュエーションだとしたらすいません)

bcacsato
パワーユーザー
記事: 234
登録日時: 2005年11月27日(日) 14:05

投稿記事 by bcacsato » 2005年11月29日(火) 20:23

webmasterさま

素早い対応、ありがとうございます。

ご回答の内容につきましては承知いたしました。
とりあえずはmailtoの中に2バイト文字は入れないようにしたいと思います。

今後のご検討を期待しております。

bcacsato
パワーユーザー
記事: 234
登録日時: 2005年11月27日(日) 14:05

投稿記事 by bcacsato » 2008年4月29日(火) 05:44

以前に質問させていただいた、こちらの件ですが、
現在でもやはり改善はされてませんでしょうか?

出力文字コードの変換機能が追加されたため、
マニュアルに従い、該当ページshift_jisにしてみたのですが、
やはり文字化けしてしまいました。

この方法では、ダメなのでしょうか?

webmaster
Site Admin
記事: 1451
登録日時: 2004年12月10日(金) 10:09

投稿記事 by webmaster » 2008年4月29日(火) 15:10

 申し訳ありません、てっきり出力文字コードの指定機能の追加で解決したものと
思い込んでいたのですが、よく調べてみると、mailtoに日本語を指定するという方法
そのものが、良い解決策が無いようです。
 http://q.hatena.ne.jp/1182531773

 JavaScriptなどで良いライブラリがあるような気がしますが、軽く探したところ、
見つける事ができませんでした。

 現在のところは、subjectに日本語を含めないか、mailtoではなくフォームメール
CGIなどを使って送信して頂くなどの回避策をとって頂くことになるかと思います。

 当方の勘違いでお手数をおかけし、申し訳ありませんでした。

bcacsato
パワーユーザー
記事: 234
登録日時: 2005年11月27日(日) 14:05

投稿記事 by bcacsato » 2008年4月29日(火) 16:19

ご回答ありがとうございます。

そうですか〜、やはりmailtoには使えないんですね。

本当は、セキュリティ上の問題もあるため、メール起動ではなく、
送信フォームにしたいところなのですが、送信フォームに飛ばした場合、
どのエントリに対する質問なのかが分からなくなってしまうため、
やむを得ずメール起動を利用してました。

エントリの情報を、送信フォームに引き渡すことも可能なものでしょうか?

webmaster
Site Admin
記事: 1451
登録日時: 2004年12月10日(金) 10:09

投稿記事 by webmaster » 2008年4月29日(火) 21:42

 bcacsatoさん、いつもありがとうございます。

 CMSDとメールフォームCGIの連携は弊社でもよく行っています。

 項目をhiddenタグなどで自由に増やすことができるメールフォームCGIが
ありますので、それを利用すれば、「どのエントリに対する質問か」という
情報を埋め込むことが可能です。

 エントリの詳細を表示しているページに、メールフォームそのものを
埋め込みます。
 例えば、そのメール送信フォームCGIが、次のような形式で送信項目を
追加できる場合、
<input type="hidden" name="項目名" value="値" />
 デザイン定義側でメール送信フォームを生成する際に、

<input type="hidden" name="お問い合わせURL" v ... ={@id}" />

 のように送信項目をフォームの中に埋め込んでおけばOKです。
 この例では、エントリIDそのものではなく、問い合わせのURLとして組み立てた
ものを送信しています。

 過去にメール送信フォームなどをご利用になっているという前提で書いて
おります。ご不明な点がございましたらまたご質問頂ければ幸いです。

 尚、問い合わせ用のメール送信フォームが常に記事の下に表示されている
のが困るという場合には、最初は display:none でフォーム全体を非表示に
しておき、「この内容について問い合わせる」などのボタンを押した際に
JavaScriptを使ってフォームを表示させるなどといった対策が考えられる
かと思います。

bcacsato
パワーユーザー
記事: 234
登録日時: 2005年11月27日(日) 14:05

投稿記事 by bcacsato » 2008年5月07日(水) 22:18

webmasterさま、ご回答ありがとうございます。

フォームと連動させることもできるのですね!
この方法で試してみたいと思います。

どうもありがとうございました。

返信