人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Webサイトを製作しています。
あるページからメールフォームのページへリンクした時に、特定の文字列がメールフォームの「件名」欄に入るようにしたいと思っています。

送る(リンクする)ページには
<a href="http://www.villaangelica.to/cgi-bin/postmail01/postmail2.html?modefg=2010&amp;xxx=02&amp;yyy=28&amp;zzz=14:00?subject=2010/02/28">
というリンク要素を置いています。
リンクされる側のHTMLにはフォームタグがあり、その中へ<input>要素と、日付情報を取得するjavascriptを設置してあります。

<input type="hidden" name="date" value="subject">
<script type="text/javascript">
function getHikisuu(){
-中略-
document.write("" + getHikisuu.data.modefg +" ");
document.write("" + getHikisuu.data.xxx +" ");
document.write("" + getHikisuu.data.yyy +" ");
document.write("" + getHikisuu.data.zzz +"");
document.write("</p>");
</script>

というものです。

サーバーへ設置して稼働させてみたのですが、どうしても送られてくるメールのSubjectに必要な情報が入ってきません。
要点は、このHTMLファイルから「2010/02/28/14:00」という情報をメールフォームへ渡し、その情報がメールに入った状態で送信されたい、という事です。
よろしくお願いいたします。

●質問者: dics
●カテゴリ:インターネット ウェブ制作
✍キーワード:00 28 HTML JavaScript webサイト
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● misosoup
●15ポイント

?subject=2010/02/28

&subject=2010/02/28

でいかがでしょう?


http://q.hatena.ne.jp/1266221121

◎質問者からの返答

早速ありがとうございます。

ソースを変更して試してみましたが、結果は「subject」という文字が入ってくるだけでした。


2 ● km1967
●15ポイント

「2010/02/28/14:00」をURLエンコードする必要があります。

&subject=2010%2F02%2F28%2F14%3A00

としてください。


URLエンコード用ツール

http://urlencode.net/result.cgi

◎質問者からの返答

ありがとうございます。

早速試してみたのですが、送られてきたメールは「date = subject」とだけ入ったものでした。(これは変更前と同じです)

ここで仰る「2010/02/28/14:00」は、メールフォームへリンクするHTMLファイルの側のお話しだと思うのですが、間違っていますでしょうか。お書きになっているとおりの文字列を、リンクする側のファイルのlink要素へ入れました。


3 ● rouge_2008
●50ポイント ベストアンサー

「date = subject」となって送信されてくるのでしたら、次の値が送信されているのだと思います。

<input type="hidden" name="date" value="subject">

この値を書き換えて送信すると良さそうです。

まず、ご紹介する方法で動作するように、上記タグに「id="date"」を追加します。

<input type="hidden" name="date" id="date" value="subject">

次に、prototype.jsを使用しますので、以下からダウンロードします。

http://www.prototypejs.org/download

headタグ内に読み込む記述を追加します。

<script type="text/javascript" src="prototype.js"></script>

次の記述を

new getHikisuu();
document.write("<p>");
document.write("" + getHikisuu.data.modefg +" ");
document.write("" + getHikisuu.data.xxx +" ");
document.write("" + getHikisuu.data.yyy +" ");
document.write("" + getHikisuu.data.zzz +"");
document.write("</p>");

以下のように変更します。

new getHikisuu();
var datetext = getHikisuu.data.modefg +"/"
 + getHikisuu.data.xxx +"/"
 + getHikisuu.data.yyy +" "
 + getHikisuu.data.zzz +"";
document.write("<p>");
document.write(datetext);
document.write("</p>");

var elem = $('date'); 
elem.setAttribute("value", datetext); 

これで確認してみてください。

※なお、リンクには以下のように記述してください。

(今回の方法では、「&subject=2010/02/28」は使用していませんので、必要ありません。)

<a href="http://www.villaangelica.to/cgi-bin/postmail01/postmail2.html?modefg=2010&xxx=02&yyy=28&zzz=14:00">XXXXX</a>

※何か分からない事がある場合は、コメント欄を開けてくださった方が、やり取りしやすいです。

◎質問者からの返答

ありがとうございます。

午後に試してみます。

コメント欄の事もありがとうございました。慣れないもので申し訳ありません。

これ以後は活用しようと思います。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ