すみません。質問があります。
ActivePerl 5.6.0.620でSMTPプロトコルで
メール送信したいのです。
が「TO」に複数のアドレスを指定すると
エラーメールが返ってきます。
(「TO」に1つのみ設定した場合は
OKなんですが)
誰かアドバイスをご教授下さい。

-----以下ソースの一部分
data{'To'} = 'b@aaa.co.jp , c@aaa.co.jp , d@aaa.co.jp';
$server->to($data{'To'});

-----以下エラーメール-----
----- The following addresses had permanent fatal errors -----
<b@aaa.co.jp,c@aaa.co.jp,d@aaa.co.jp>

----- Transcript of session follows -----
... while talking to mta.excite.com.:
>>> RCPT
o:<b@aaa.co.jp,c@aaa.co.jp,d@aaa.co.jp>
<<< 553 Invalid address syntax
550
b@aaa.co.jp,c@aaa.co.jp,d@aaa.co.jp>...
ser unknown

このQ&Aに関連する最新のQ&A

A 回答 (4件)

確かSMTPのRCPTでは同時に1つのアドレスしか指定できなかったと思います。


自前で分解してRCPTを連発する必要がありますね。

参考URLはSMTPのRFC日本語版です。

参考URL:http://www.geocities.co.jp/SiliconValley-PaloAlt …
    • good
    • 0
この回答へのお礼

アドバイスありがとうございました。
1件1件送付することにします。
ありがとうございました。

お礼日時:-0001/11/30 00:00

自己レスです。


>で、@userの個数分、それに相当するメールアドレスを
@usersの個数分ですね。
失礼しました。
    • good
    • 0

data{'To'}で拾ったデータをsplitして、


それぞれを<>でくくれば大丈夫なはず。

確かSMTPサーバは、<>で囲まれた情報を
一つのメールアドレスだと解釈するはず。

従って、a@ne.jp、b@com、c@eduに送る
場合、<a@ne.jp>, <b@com>, <c@edu>と
する必要があったはずです。

だめなときは補足してください。
ではでは☆

この回答への補足

アドバイスありがとうございました。
試してみましたがダメでした。

補足日時:2000/12/04 10:50
    • good
    • 0

ActivePerlは使ったことはないのですが、


data{'To'}内の文字列を","の部分でsplitしてひとつづつおくるというのはどうでしょう?
@users = split(/,/,data{'To'})
で、@userの個数分、それに相当するメールアドレスを
foreach $user (@users)
{
$server->to($user)
......
......
}
とかってできませんでしょうか?
あんまりスマートではないかもしれません。
だめでしょうか?
    • good
    • 0
この回答へのお礼

早速のアドバイスありがとうございます。
最終的にはその手しかないと考えてます。
でも一挙に送信できたらなぁ...って思ってます。

お礼日時:-0001/11/30 00:00

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qメールの署名設定

メールの署名設定がリッチテキスト形式のなっていて、テキスト形式に代えると青字のアドレスが黒字になってしまします。
返信の場合は変えても大丈夫なのですが、どうすればテキスト形式に変更できますか?

Aベストアンサー

オプションでテキスト形式で作成するようにしていますよね?
それでもリッチテキストになってしまうのですか?
返信するときに元のメールと同じ形式にする、とかしてます?

それ以外に設定はありません。
これでもおかしいなら、IEを再インストールしてみましょう。

Q$wfurikae = 1 if ( &ccom::getShukujitsu( &com::tD( $wwy,$wwm,$wwd )) ne '' );がよく

$wfurikae = 1 if ( &ccom::getShukujitsu( &com::tD( $wwy,$wwm,$wwd )) ne '' );

というスクリプトがあったのですが、

$wfurikae = 1 の後に;もいれずifがきています。

違和感があります。

どのような意味になるのでしょうか。

宜しくお願い致します。

Aベストアンサー

そのまんまだと思いますよ。
if 以下の条件が真の時 $wfurikae = 1となります。
Perlはいろいろな書き方ができますので、こういう書き方もありです。
英語の文法の並びにする書き方です。

QOutlook 2003 メール返信時の署名のずれについて

よろしくお願いします。
現在の設定
【OS】 Windows XP
【メール】 OutLook 2003
【形式】  HTML
【フォント】MS P明朝 新規・返信すべて
【署名】 返信時、新規作成時に設定

メールを返信する際に、署名を設定しているのですが、
相手のフォントが自分のフォントと違っている
場合、署名がずれておかしな形になります。
どんなフォントでも署名がずれないやり方って
ありますでしょうか?

Aベストアンサー

基本的にありません。

もともとメールは単なるテキストです。
質問者さんは、HTML形式でメールを送られているようですが、
メールを受け取った方が、HTMLメールに対応していなければ、
文字サイズやフォントはすべて無効になり、
相手の環境に依存します。

また、HTMLメールで同じフォントを指定している場合でも、
Windows XPとVistaでは、見え方が異なるようです。

メールの署名を凝ったものにするのも結構ですが、
ちょっとでもずれると表示が激しく乱れるようなものは
避けた方が無難と思います。

Q@color1 = ('0000ae',・・・,'$user_color')で・・

とまとです。

行き詰まりました(TェT)

標題の代入で、'$user_color'の部分を文字列ではなく、後から出て来るinputで入力した文字を代入させるにはどうしたらいいのでしょう?
※標題のままだと「$user_color」という"文字列"が代入されてしまいます。

Aベストアンサー

変数の内容を展開したければ、
' でくくらなければいいわけですが、
後から出てくるなら、その代入時点では
undefine 状態ですか?

Qアウトルックのメール送信時に手動で署名を入れたいのですが

アウトルック200のメール送信時に、通常は署名を入れない状態にしておいて、必要な時にだけ手動で入れるようにするにはどうすれば良いのでしょうか?
メール本文作成画面で、挿入から定型句の中の署名を選んで入れることはできるのですが、それだと、ツールのオプションののメール形式の中の署名で作成された署名が入力されずに、ただ単純に名前だけ入力されます。
アウトルックのヘルプを見たら、メール作成のエディタをワードにした時とアウトルックにした時とでは違うらしく、ワードをエディタとして選んだ場合、手動で入力される署名は、ワード起動時に入力した使用者名が挿入されるとのこと。
ならば、アウトルック上で作った署名を手動で入力するには、エディタをアウトルックにしないと不可能なのでしょうか?
それと、エディタをワードにした場合とアウトルックにした場合とでは何が違うのでしょうか?どちらの方が便利でしょうか?

Aベストアンサー

アウトルック2000を使ってます。
アウトルックのツールメニューのオプションでメール形式を選びます。
ここでたくさんの署名を作る事が出来ます。
私の場合、遊び感覚や正式な署名など色々作っています。
私は通常使用頻度の高い署名を設定してます。

テキストメール・HTMLメール・雛型メールについての署名の事。

メールを書くとき署名が既に入る設定にしていますが、その署名を使いたくないときは、面倒でもデリートで裂く一旦削除します。
メール作成画面で、挿入メニューの署名を選択すると、たくさん作った署名にタイトルを付けてありますので数ある署名から適宜を選びます。


ワードなどのオフィスドキュメントのメールについての事。

ワードエディターでの署名はワードのツールメニューの中のオプションの全般タブに電子メールオプションがあります。
その中で電子メール用の署名を作ります。そこでも色々な署名が出来ます。
そこで各種作るとワードメールを使った場合、挿入から署名を選ぶとワード起動時の使用者名の他にも、先ほど作った署名を任意に選ぶ事が出来ます。

余談ですが、動画のイラスト入り署名も出来ますよ。


説明が下手で申しわけありません。
わからなかったら補足します。

間違いなく出来ますよ。
色々署名で楽しんでいます。

(奥が深いです)

アウトルック2000を使ってます。
アウトルックのツールメニューのオプションでメール形式を選びます。
ここでたくさんの署名を作る事が出来ます。
私の場合、遊び感覚や正式な署名など色々作っています。
私は通常使用頻度の高い署名を設定してます。

テキストメール・HTMLメール・雛型メールについての署名の事。

メールを書くとき署名が既に入る設定にしていますが、その署名を使いたくないときは、面倒でもデリートで裂く一旦削除します。
メール作成画面で、挿入メニューの署名を選択すると、...続きを読む

Q@b = grep(/マッチパターン/, @a);でなく@a = grep(/マッチパターン/, @a);でOKについて

@b = grep(/マッチパターン/,@a);だと配列@aの中でマッチするものを探して@bに入れる・・・というのは理解できるんですが、
@a = grep(/マッチパターン/,@a);とし、
foreach $_ (@a) {
print $_;
}
で参照した場合、@aの中のマッチパターンにマッチするのだけ表示されますけれども、ここでマッチしないのは削除されるのでしょうか・・。

@aから@aにいれる・・・となる事について、どのように@aにマッチしたものを入れ、マッチしないものは削除されるのかの仕組みについて、ご説明できる方はいらっしゃいますでしょうか(例えば内部的にpopやshiftが機能していて・・・みたいな事なのかな・・とか思うんですけれども)

お手数ですが、ご存知の先生方ご教授願えましたら幸いです。

Aベストアンサー

#1でのTacosanさんの回答の1です。
つまり、
@a = grep(/マッチパターン/,@a);
これは
@aの内容を列挙→ grepに掛ける→条件に合うものだけのリストを作成→作成したリストを代入。
となります。
grepに掛かる前の@aの内容は、代入の際に「丸ごと」破棄されます。

perly.y
/* Binary operators between terms */
termbinop:term ASSIGNOP term /* $x = $y */
{ $$ = newASSIGNOP(OPf_STACKED, $1, IVAL($2), $3);
TOKEN_GETMAD($2,$$,'o');
}

op.c

OP *
Perl_newASSIGNOP(pTHX_ I32 flags, OP *left, I32 optype, OP *right)
{
dVAR;
OP *o;

(略

if (is_list_assignment(left)) {
static const char no_list_state[] = "Initialization of state variables"


という具合なので、代入の左右両辺が同じ変数かどうかのチェックは多分やってません。

#1でのTacosanさんの回答の1です。
つまり、
@a = grep(/マッチパターン/,@a);
これは
@aの内容を列挙→ grepに掛ける→条件に合うものだけのリストを作成→作成したリストを代入。
となります。
grepに掛かる前の@aの内容は、代入の際に「丸ごと」破棄されます。

perly.y
/* Binary operators between terms */
termbinop:term ASSIGNOP term /* $x = $y */
{ $$ = newASSIGNOP(OPf_STACKED, $1, IVAL($2), $3);
TOKEN_GETMAD($2,$$,'o');
}

op.c

OP *
Perl_newASSIGNOP...続きを読む

QMicrosoft Office Outlookメール文に署名貼付で

Microsoft Office Outlookメールを利用しております。
Outlook expressの時は、メール文中に署名の貼付が、メニュー[挿入]、[署名]から署名を挿入できましたが、Microsoft Office Outlookでは、どのようにすれば良いのでしょうか、よろしく、お願い致します。

Aベストアンサー

Microsoft Office : Office Outlook 2003 コミュニケーション テクニック - 署名を作成してメールを使い分けたい!
http://www.microsoft.com/japan/office/previous/2003/experience/workstyle/tips/outlook/tips3.mspx

Outlook 2007 で電子メールの署名を作成する方法
http://support.microsoft.com/kb/931825/ja

Q正規表現で$1...$9を超える数の場合

正規表現で
"(.+?)","(\d+?)"なら
$1 $2で取得できますが、

(\d+?)\.(\d+?)... \.(\d+?)と20個ある場合に
$1から $20まで使えるのでしょうか?
できない場合は、どうすれば、スマートに取得できるのでしょうか?

Aベストアンサー

> $1から $20まで使えるのでしょうか?

使えます。
また、次のように配列に入れることもできます。

@match = $str =~ /(\d+?)\.(\d+?) ...中略... \.(\d+?)/;

# $match[0]~$match[19] に格納される。

Qヤフーメールで署名がつけられない

ヤフーのメールを使っています。昨日あたりに突然仕様変更がありました。

そして、メール作成画面の下にあった、「メールに署名を入れる」とかいうボタンが見当たらなくなりました。この仕様で署名を入れるにはどうすればいいのでしょうか?

設定画面の「全てのメールに署名を入れる」だと、個人的には都合が悪いです。あと、これにチェックを入れて自分にテスト送信してみても、署名がありませんでした。

勝手に仕様変えるのって不便極まりないですね。

Aベストアンサー

#1です。

私は、YahooBB会員ですが、署名の入り具合を確認しました。

Yahooの契約IDのybb.ne.jpでの送信では、メールオプションの「メールアドレスの追加・編集・削除」の編集で作成した署名が、

yahoo.co.jpでの送信では、メールオプションの「署名」の項目で作成した署名が、「すべての送信メールに署名を付ける」を有効にすると、そのまま本文にそれぞれの署名が自動的に入るようです。

従って、作成画面での「利用する」のチェック入れは無くなって、不要であれば、本文から削除する必要があります。

追加アドレスでも使う署名はそれぞれ会員IDと同じですが、「署名を利用する」のチェックを入れる項目は作成画面にあって、チェックを入れてそのまま送信するとそのメールに自動的に入るようです。

まだ、完全にすべてのIDに行き渡っていない仕様のようですが、確認した状況はそのようになっていました。

QCGI.pmで'&'が'&'に置き換わってしまう!

文字「&」を出力したいのにCGI.pmが自動的に「&amp;」に変換してしまいます。

具体的には、
<a href="abc" accesskey="&">abc</a>
のような文字列を出力させるために、
print($q->a({-href => 'abc', -accesskey => '&'}, 'abc'))
というコードを実行したのですが、
出力される文字列は、
<a accesskey="&amp;" href="abc">abc</a>
のように「&」が自動的に「&amp;」に置き換わってしまいます。

これの解決策として、オブジェクトを使用せずに、直接CGI.pmのメソッドを呼び出すと、なぜか変換されません。
すなわち、上のコードの「$q」の部分を「CGI」として、
print(CGI->a({-href => 'abc', -accesskey => '&'}, 'abc'))
とします。

これは何か意味があるのでしょうか。それともただのバグ?
直接CGI.pmのメソッドを呼び出さなくても解決する方法はありますか。

accesskeyに関するご意見は、先日質問したこちらのスレへ頂けるとうれしいです。
http://oshiete1.goo.ne.jp/qa5707867.html

文字「&」を出力したいのにCGI.pmが自動的に「&amp;」に変換してしまいます。

具体的には、
<a href="abc" accesskey="&">abc</a>
のような文字列を出力させるために、
print($q->a({-href => 'abc', -accesskey => '&'}, 'abc'))
というコードを実行したのですが、
出力される文字列は、
<a accesskey="&amp;" href="abc">abc</a>
のように「&」が自動的に「&amp;」に置き換わってしまいます。

これの解決策として、オブジェクトを使用せずに、直接CGI.pmのメソッドを呼び出すと、なぜか変換されま...続きを読む

Aベストアンサー

えぇと, #2 の参考にあげた URL を読んでいただけるとありがたいのですが,
Certain attributes call for a single character from the document character set. These attributes take the %Character type in the DTD.

Single characters may be specified with character references (e.g., "&amp;").
とあります. 最後の 1文を読めば分かるように, 「1文字」であっても文字実体参照を使うことは仕様上可能です.


人気Q&Aランキング

おすすめ情報