Wwwmailのメールタイトルを変更する方法

このQ&Aのポイント
  • Wwwmailを使用してメールのタイトルを変更する方法はありますか?現在、Wwwmailを使ってメールを送ろうとしていますが、フォームのダイアログボックスの入力項目を繋げてメールのタイトルにしたいです。しかし、変更しても文字列として認識されてしまいます。どなたかご存知の方がいたら教えてください。
  • Wwwmailでメールのタイトルを変更する方法を知りたいです。現在、Wwwmailを使用してメールを送ろうとしていますが、フォームのダイアログボックスの入力項目を繋げてメールのタイトルにしたいです。しかし、変更しても文字列のままメールのタイトルとして送られてきます。どなたかご存知の方がいたら教えてください。
  • Wwwmailのメールタイトルを変更する方法を教えてください。現在、Wwwmailを用いてメールを送ろうとしていますが、フォームのダイアログボックスの入力項目を繋げた文字列をメールのタイトルにしたいです。しかし、変更しても文字列がそのままメールのタイトルになってしまいます。どなたか知っている方がいたら教えてください。
回答を見る
  • ベストアンサー

Wwwmailの変更の方法(Perl)

現在とほほさんのフリーウェアであるWwwmailを使ってf-無メールを送ろうとしているのですが、送られるsubjectをとフォームのダイアログボックスの入力項目のいくつかを繋げた物にしたいのですが、変更しても方法が悪いのか文字列として認識されてしまいます。 その部分は:subject ='ここがタイトル';となっていたのでsubject ="$FORM{'Email'}+$FORM{'name'}";の様に変更しても””の間がその文字のままメールのタイトルになって送られてきます。出来れば入力フォームで取得している日時もタイトルに入れたいので、どなたかWwwmailを使用してメールのタイトルを変更する方法をご存知の方がいたら教えて下さい。

noname#2601
noname#2601
  • Perl
  • 回答数6
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
noname#45976
noname#45976
回答No.5

>日付の欄は私が追加してJavascriptでwindow.statusと言う変数に時間を、日時をnowと言う変数に入れて表示させるようにしたので、出来ればその日時も取り出したい とのことですが、では、フォーム(<form>と</form>の間)に以下のタグを追加してください。 <INPUT TYPE=hidden NAME="HIDUKE" VALUE="日付を取得した変数名"> そうすれば、他の入力値と同様に$FORM{'HIDUKE'}で取得できるようになります。

その他の回答 (5)

noname#45976
noname#45976
回答No.6

もしかして、、、Javascriptの変数ってバリューにそのまま入れられませんでしたっけ。(滝汗) でしたら、アホなアドバイスしてすみません^^; CGI側で取得して追加するのでしたら、以下のソースを追加してください。 日付と時間は、$HIDUKEと$ZIKANに取得できます。 あとはsubjectに変数名をいれればOKです。 @days = ('SUN','MON','TUE','WED','THU','FRI','SAT'); ($sec,$min,$hour,$mday,$month,$year,$wday,$yday,$isdst) = localtime(time); $HIDUKE = sprintf( "%04d/%02d/%02d", $year+1900, $month+1, $mday, $days ); $ZIKAN = sprintf( "%02d:%02d", $hour, $min );

noname#2601
質問者

お礼

ありがとうございました。動かす事が出来ました。 なにぶんにもお手数かけましたが本当にありがとうございました。

noname#45976
noname#45976
回答No.4

>メールの件名が「 +名前 」と言う形で来てしまい、完全に上手くはいかない 「+」は、わざと入れたいわけではないのですか? 入れたくなければはずしてください。^^; あとは、変数名に気をつけて、再確認してみてください。

noname#2601
質問者

補足

再確認した所上手く動きました。ただ、日時の取り方が・・・これはCGIの方で日時を取得して$submitに渡した方が効率的でしょうか?

noname#45976
noname#45976
回答No.3

たびたびすみません^^; 、、、変数の記述ですが、フォームを見ると大文字みたいですね。 $FORM{'Email'}ではなく、$FORM{'EMAIL'}です。 他も同様。 あと、 >フォームで取得している日時もタイトルに入れたい とは? フォームには日付の欄は見当たりませんでしたが、それはhonronさんが追加したものなのでしょうか。 とりあえず、変数名、入力位置に気をつけて、頑張ってみてください。m(_ _)m

noname#2601
質問者

補足

たびたびありがとうございます。 日付の欄は私が追加してJavascriptでwindow.statusと言う変数に時間を、日時をnowと言う変数に入れて表示させるようにしたので、出来ればその日時も取り出したいのです。お手数をかけて申し訳ないですがアドバイスお願いします。m(_ _)m

noname#45976
noname#45976
回答No.2

あ、ちなみに、、、 subjectは、$subjectで書いてくださいね。^^;

noname#45976
noname#45976
回答No.1

こんにちは。 subjectを設定している位置が、入力値を読み取る前になっているので、この位置のままではただの文字列になってしまいます。 # # メールヘッダを作成する # { の次行あたりに subject ="$FORM{'Email'} + $FORM{'name'}"; の記述を入れてみてください。

noname#2601
質問者

補足

$subject ="$FORM{'Email'} + $FORM{'name'}"; とした所メールの件名が「 +名前 」と言う形で来てしまい、完全に上手くはいかないみたいなのですが・・・方法があればお教え下さい。

関連するQ&A

  • perl フォームの入力値のチェック セキュリティ

    フォームの入力値のチェック方法についての質問です。 名前、電話番号、Eメール、住所、注文商品、数量の入力フォームです。 入力値の取得は、ライブラリ「cgi-lib.cgi」を利用しています。 (以下perlのソース) #!/usr/bin/perl -T #入力値の取得 require 'cgi-lib.cgi'; &ReadParse(*form); $name = $form{'name'}; $tel = $form{'tel'}; $email = $form{'email'}; ・・・・以下同様の処理が続くだけなので省略 #サブルーチンを利用して入力値をチェック $name = &Wash($name); $tel = &Wash($tel); $email = &Wash($email); ・・・・以下同様の処理が続くだけなので省略 #サブルーチン部分 sub Wash{ if($_[0] =~ /^([^|><\/]+)$/){return $_[0];} elsif($_[0] eq undef){return "未入力";} else{return undef;} } (perlのソース ここまで) としてから、通常の処理に入るようにしてみたのですが セキュリティー上の問題があれば教えてください。 入力値から、コマンドやスクリプトが実行(XSS)されてしまう可能性はありますか? お願いします。 またメタ文字が見つかった場合の処理についてですが とりあえずよくわからないので。「undef」を返して いるのですが、他に良い方法があれば教えてください。

    • ベストアンサー
    • CGI
  • メールフォームから送信すると文字化けします^^;

    海外のHPのテンプレサイトにてダウンロードしたテンプレート内のメールフォームで送信すると文字化けしてしまいます^^; 下記がsendmail.php内の中身なのですが、何が足りないでしょうか?^^; ご教授よろしくお願いします。 http://www.premiumfreebies.eu/previews/ProFolio/ <? //This php file receives the post vars of the contact page and sends it to a email address //Settings $email = 'メールアドレス'; $subject = '[NAME] HP form mail '; $name = $_POST['name']; $from = $_POST['email']; $message = $_POST['message']; mb_language("ja"); mb_internal_encoding("UTF-8"); //Set the headers and send the mail $subject = str_replace('[NAME]', $name, $subject); $headers = 'From: '.$name.' <'.$from.'>'; mail($email, $subject, $message, $headers); ?>

    • ベストアンサー
    • PHP
  • perl   フォームメール送信の文字化けについて

    フォームメール送信の文字化けについてお教え下さい。 よろしくお願い致します。 まずは環境より申し上げます。 環境 xampp-win32-1.7.7-VC9 同封 apache2.2.21 php5.3.8 perl 同封されているもの -----------------------------  xmailサーバーも動いています。 内部、外部、外部から外部、ともに正常に送受信できています。 以前はANHTTPDとperlとsendまね~るで問題なく動いていましたが このたびPHPが必要になりましたので以前のperlをアンインストールしてXAMPPをインストールしました。 以前からの自作のメールフォームを設置してメールを送信すると 受付確認メールと問い合わせ報告メールのすべてが文字化けしています。 一応 文字コードはUTF-8で mail.html、 perlプログラム、ともに統一しています。 apacheのhttpd.confの中にはAddDefaultCharset・・・の設定項目がなぜかありませんので apacheについては文字コードの設定などはおこなっておりません。 症状ですが メールフォームに入力して確認ボタンを押すと現れる確認画面は 文字化けしておりません、高崎、申す、表示という文字も化けていません。 このあと送信ボタンを押すと メールは宛先へ正常に届きますが タイトルからすべてが文字化けで読む事はできません。 原因探しが三日くらい続き、気になって寝られません。 ひろいあつめて書いたコードですが、 よろしくお願いいたします。 # MIMEエンコード $mail_to = mimeencode($MAILTO); $mail_from = mimeencode($FORM{'name'}); $mail_subject = mimeencode($FORM{'subject'}); # 文字コードの変換 $body = jcode::jis($user_owner); # メールヘッダーの生成 $header = <<END; To: $mail_to From: $mail_from<$FORM{'email'}> Subject: $mail_subject Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-2022-JP # サーバー出力 print <<END; Content-type: text/html; charset=utf-8 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> # メールの送信 open(MAIL, "| $SENDMAIL -i -t -f $FORM{'email'}") or die("エラー:sendmailへのパイプが開けません"); print MAIL $header, $body; close MAIL; 部分的で分かりにくいかもしれませんが どなたか どうぞよろしくお願いいたします。

    • ベストアンサー
    • Perl
  • HPでフォームメールの送信ができない

    OSはWin xp、サーバーはOCNの「Page ON」を使っています。 メールフォームの設置をしたいのですが、OCNのホームページにある記述では、メールの送信が出来ません。アップロードもしています。 <FORM METHOD="post" ACTION="/cgi-bin/formmail.pl"> <INPUT TYPE="hidden" NAME="recipient" VALUE="???@???.ocn.ne.jp"> [メッセージ]:<INPUT NAME="subject" SIZE="30"><BR> [おなまえ]:<INPUT NAME="name" SIZE="30"><BR> [E-mail]:<INPUT NAME="email" SIZE="30"><BR> <INPUT TYPE="submit" VALUE="送信"> <INPUT TYPE="reset" VALUE="クリア"> </FORM> [メッセージ][おなまえ]のところに記入すると、メールは送信されるときとされないときがあります。 [E-mail]に記入すると送信できません。 送信されない時は、上にFORM MAILとグレーに文字がでてくるだけです。 どこが悪いのでしょうか? よろしくお願いします。

    • ベストアンサー
    • CGI
  • 任意のフォームのみ右クリック禁止

    入力フォーム中でEMAILの入力部分のみ、コピペさせないように 適用させる方法はあるのでしょうか。 なお、アラートで「EMAILのコピーペストはできません」と表示する場合とアラートも出さずに単に右クリックができないようにする方法を 教えてください。 *email_01とemail_02の入力項目のみ右クリック禁止。 <form> <input size="20" type="text" name="email_01"> <br> <input size="20" type="text" name="email_02"> <br> <input size="20" type="text" name="namae"> </form> また、参考になるようなサンプルサイトをご存知でしたら教えてください。

  • メール文書の文字化けに困っています。

    下記のPHPを使ったメールフォームを作成しました。 送信は問題無く行うことができるのですが、送信先に受信されたメール文書について日本語が文字化けしてしまいます。 下記のソースをご覧頂き、原因がおわかりの方がおりましたらご教授頂けますと誠に幸いです。 宜しくお願いいたします。 <?php //create short variable names $name=utf8_decode($HTTP_POST_VARS['name']); $email=utf8_decode($HTTP_POST_VARS['email']); $subject=utf8_decode($HTTP_POST_VARS['subject']); $message=utf8_decode($HTTP_POST_VARS['message']); $name=trim($name); $email=trim($email); $subject=StripSlashes($subject); $message=StripSlashes($message); //modify the next line with your own email address $toaddress='test@test.domain'; mail($toaddress,$subject,$message,"From: $name <$email>"); //clear the variables $name=''; $email=''; $subject=''; $message=''; echo "response=passed"; ?>

    • 締切済み
    • PHP
  • $_POSTで文字化け?

    フォーム <input name="Eメール" type="text" id="mail"> $_POSTで受け取ると、上記"Eメール"が"Eメ\ル"になります。 同じフォーム内のテキストエリアなどで入力した文字は化けません。 文字コードはフォームも受け取り側もSJISです。 お心当たりありましたらお助けください。

    • ベストアンサー
    • PHP
  • au メールアドレスが変更できない

    今日auのW21Tを買いました。 メールアドレスを変更しようと説明書どおり進んでいたのですが 自分の好きなメールアドレスを入力して次へいこうとすると 『Eメールネームを確認してください』と出て変更ができません。 20文字以内とかそういうことは全部守っているのですが・・・どうしてなのでしょうか?涙

  • PHPフォームのスパム対策

    PHPフォームのスパム対策についてなのですが 氏名のふりがなをひらがな入力でチェックをしたいのですが 下記記述でうまくいきません。PHPの初心者なのでご教授いただけますでしょうか? ( PHPの一部抜粋ですが //20090403 in の箇所を追記しました。) //////////////// // メイン処理 // //////////////// if ($method == 3) { include($smtp_class); } @header("Content-Type: text/html; charset=EUC-JP"); if (isset($_POST['FORM'])) { //フォームからのデータを評価 if ($_POST['FORM']['NAME'] == "") { die('名前が入力されていません'); } //20090403 in if ($_POST['FORM']['FURIGANA'] == "") { die('ふりがなを ひらがなで入力してください。'); } if ($_POST['FORM']['EMAIL'] == "") { die('Eメールが入力されていません'); } if ($_POST['FORM']['MESSAGE'] == "") { die('メッセージが入力されていません'); } if (strlen($_POST['FORM']['MESSAGE']) > $max) { die('文字数が多すぎます'); } if ($_POST['FORM']['SUBJECT'] == "") { $_POST['FORM']['SUBJECT'] = '(untitled)'; //タイトルなしの場合 } //改行コードを<LF>に統一 $_POST['FORM']['MESSAGE'] = str_replace("\r\n", "\n", $_POST['FORM']['MESSAGE']); $_POST['FORM']['MESSAGE'] = str_replace("\r", "\n", $_POST['FORM']['MESSAGE']); //先頭と末尾のホワイトスペースを削除 $_POST['FORM']['MESSAGE'] = trim($_POST['FORM']['MESSAGE']); //メッセージ部分のフォーマット $_POST['FORM']['MESSAGE'] = "\n" . "----------------------------------------------------------------------\n" . $_POST['FORM']['MESSAGE']."\n" . "----------------------------------------------------------------------\n"; //メール本文の作成 $body = ""; //初期化 while (list($item, $value) = each($_POST['FORM'])) { if (get_magic_quotes_gpc()) { $value = stripslashes($value); } $body .= sprintf("%-8s", $item)." : ".$value."\n"; } //漢字コード変換( EUC → JIS ) if ($enable_EUCtoJIS) { $body = EUCtoJIS($body); $subject = '=?ISO-2022-JP?B?'.base64_encode(EUCtoJIS($_POST['FORM']['SUBJECT'])).'?='; $from_name = '=?ISO-2022-JP?B?'.base64_encode(EUCtoJIS($_POST['FORM']['NAME'])).'?='; $kana_name = '=?ISO-2022-JP?B?'.base64_encode(EUCtoJIS($_POST['FORM']['FURIGANA'])).'?='; } //20090403 in if (!mb_ereg("^[ぁ-ん]+$", $_POST['FORM']['FURIGANA'])) { $from = $kana_name." <".$_POST['FORM']['FURIGANA'].">"; } if (ereg("^[0-9A-Za-z._-]+@[0-9A-Za-z.-]+$", $_POST['FORM']['EMAIL'])) { $from = $from_name." <".$_POST['FORM']['EMAIL'].">"; } else { $from = $from_name." <".$to.">"; }    以下略 ------------ 御多忙のところ恐縮ですがよろしくお願いいたします。

    • ベストアンサー
    • PHP
  • 指定名のオブジェクトを探す方法

    こんにちは、honiyonです。  あるHTML中に、 <FORM name="hoge1" ...> ~ </FORM> <FORM name="hoge2" ...> ~ </FORM> ...  と同じ名前で連番の振られたフォームが複数あります。  この数が固定ならいいのですが、場合によって増減します。  この各フォームの要素を操作するため、 object = document.findobject("hoge1");  みたいな、指定名のオブジェクトを取得する方法が必要になっています。  このような関数がありましたら、是非教えてください(..  また、連番を振るという方法も、増減する各フォームを処理する為に考えた1つの方法です。他に良い方法があれば教えてください(..  現在までとほほさんのサイトを参照して勉強してきましたが、もっと様々なプロパティやメソッドが載っているサイトがないかと模索中です。  良いサイトがありましたら、併せてお教え願えれば幸いです。  宜しくお願いします。