トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   サーバ関連【CGI・FCS・XMLSocket etc】
     flashからプロバイダ提供のCGIへデータを送る
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ゲスト
Åê¹ÆNo.2575
投稿日時: 2003-12-29 15:16
Re: flashからプロバイダ提供のCGIへデータを送る
youichさん、いろいろとご丁寧なアドバイスをありがとうございます。
youichさんがとられている
POSTの内容をダンプしてみると

というダンプはどのような方法で得られているのでしょうか?
もしよろしければ今後の参考としたいので教えていただけないでしょうか?
よろしくお願いします。
youich
Åê¹ÆNo.2576
投稿日時: 2003-12-29 15:36
職人
居住地: kobe
投稿: 349
使用環境:
Tiger
Re: flashからプロバイダ提供のCGIへデータを送る
引用:

というダンプはどのような方法で得られているのでしょうか?

私は、macなので標準でtcpdumpというtoolがついてるんです。
http://developer.apple.com/qa/qa2001/qa1176.html
普段はこれにGUIをかぶせたものを使ってます。

windows環境ではどういうToolが一般的なのかはちょっと解りませんが
macでもありますが、Etherealというのが有名なんではないでしょうか?
http://www.space-peace.com/ethereal/

しかし、windowsのtoolについてはwindowsな方に尋ねるほうが堅いです?。


----------------
- yo

hide_tk
Åê¹ÆNo.2577
投稿日時: 2003-12-29 17:31
新米
居住地:
投稿: 10
使用環境:
MX
XP
Re: flashからプロバイダ提供のCGIへデータを送る
ちょっと横ヤリ。

OCNを使っておられるというので下記のHPを観ると
http://page-on.ocn.ne.jp/faq.html
FAQの
「フォームCGIメールの項目名を変更したり、増やしたりすることはできますか?」
の欄に「Subject」と「email」が必須指定項目になっているというニュアンスで書かれているので

youichさんの言っておられる
引用:
2)ocn側のCGIが、変数としてemail,name,subject,comment等を送ってないとはじいている。

だと思われます。

以下のコードでいっぺんやってみてください。

on (release) {
    //文字化け防止
    System.usecodepage = True;
    //変数設定
    myLoadVars = new LoadVars();

    // 送信先
    myLoadVars.recipient = "xxx@xx.ocn.ne.jp";
    // subject
    myLoadVars.subject   = dataA;
    // 送信者メルアド
    myLoadVars.email     = dataB;
    // 名前
    myLoadVars.name      = dataC;
    // コメント
    myLoadVars.comment   = "ちぇきぇら";

    myLoadVars.send("/cgi-bin/formmail.pl","_blank","POST");
}
ゲスト
Åê¹ÆNo.2578
投稿日時: 2003-12-29 18:33
Re: flashからプロバイダ提供のCGIへデータを送る
hide_tkさん、詳しく調べていただいてありがとうございます。
頂いたコードで試してみたのですが、やはりCGIエラーとなってしまいました。

youichさん
しかし、windowsのtoolについてはwindowsな方に尋ねるほうが堅いです?。

自分で調べてからお聞きすれば良かったのに聞くが早しと逃げてしまいました。
こちらも少し調べてみようと思います。ありがとうございました。

うぉ?勉強することばかりだぁ?
ゲスト
Åê¹ÆNo.2583
投稿日時: 2003-12-30 16:36
Re: flashからプロバイダ提供のCGIへデータを送る
プロバイダからの回答がきました。

質問概略(実際はもっと詳しくフォーラム論議の結果の問合せですが・・と丁寧です。
POSTの内容をダンプで見てみると
(HTML)
recipient=eriko8%40smile.ocn.ne.jp
(flash)
recipient=eriko8%40smile%2Eocn%2Ene%2Ejp
となっており、"."のエスケープの有無でこけている気がする。
ocn側のCGIが%2Eの展開をしていないので、無効なemailアドレスとしてはじかれているのではないか。
その答えまたは対応方法を教えてほしい。

その回答概略
フォームCGIメールについてOCN側設定例による基本的な利用方法以外の設定や、
ユーザー側にて追記されたタグ等のカスタマイズ・設定はその動作保障も含めてサポートしていない。
だそうです・・

皆さんにアドバイスいただいたことと、この回答を貰った結果、プロバイダ提供のCGIメールへFlashから直接データを渡すことは難しいと思いました。
回避策としてFlash→Javascript→HTML経由でCGIへデータを渡そうと思います。
(それもまた問題なのですが..
当初はそれをしようと思っていたのですが、 Flashから直接送ればいいのでは?と思い、今回のことに取り組んでいました。)

長々とお付合いくださりありがとうございました。
今後ともちょこちょこ顔を出すと思いますが、どうぞよろしくお願いいたします。

# 皆様!良いお正月をお過ごし下さい☆
# 来年も皆様お一人お一人にとって良き年となりますよう心よりお祈り申し上げております
youich
Åê¹ÆNo.2584
投稿日時: 2003-12-30 21:27
職人
居住地: kobe
投稿: 349
使用環境:
Tiger
Re: flashからプロバイダ提供のCGIへデータを送る
引用:

皆さんにアドバイスいただいたことと、この回答を貰った結果、プロバイダ提供のCGIメールへFlashから直接データを渡すことは難しいと思いました。

う?ん、そうですか、、
プロパがcgiのコードをちらっと見せてくれたら問題かどうか解るんですけどね(笑)

では、"%2E"の展開の問題だと仮定して↓では、どうでしょうか?
moriさんやhide_tkさんのコードを拝借しておりますが、
一度試してみてもよろしいんじゃないかと思います。

on (release) {
 //追加
 LoadVars.prototype._toString = LoadVars.prototype.toString;
 LoadVars.prototype.toString = function(){
	return unescape(this._toString());
 }
   ASSetPropFlags(LoadVars.prototype,"_toString",1);
   //
    System.usecodepage = True;
    myLoadVars = new LoadVars();
    myLoadVars.recipient = "xxx@xx.ocn.ne.jp";
    myLoadVars.subject   = dataA;
    myLoadVars.email     = dataB;
    myLoadVars.name      = dataC;
    myLoadVars.comment   = "ちぇきぇら";

    myLoadVars.send("/cgi-bin/formmail.pl","_blank","POST");
}


----------------
- yo

ゲスト
Åê¹ÆNo.2624
投稿日時: 2004-1-4 1:31
Re: flashからプロバイダ提供のCGIへデータを送る
youichすみません。お返事が遅くなりました。

頂いたコードを試してみたのですが同じ結果となってしまいました..
(メールアドレスもちゃんと指定してるんだけどなぁ..(>.<)
もう少し自分のレベルをあげてどこに問題があるのか、scriptが何をしているのか理解出来るようになったらまた
flashからの直接渡しには挑戦しようと思います。

ありがとうございました。m(_ _)m
youich
Åê¹ÆNo.2636
投稿日時: 2004-1-4 4:34
職人
居住地: kobe
投稿: 349
使用環境:
Tiger
Re: flashからプロバイダ提供のCGIへデータを送る
引用:

erikoさんは書きました:
youichすみません。お返事が遅くなりました。

なにをおっしゃいます、お正月ですよ?。
引用:

頂いたコードを試してみたのですが同じ結果となってしまいました..
(メールアドレスもちゃんと指定してるんだけどなぁ..(>.<)
もう少し自分のレベルをあげてどこに問題があるのか、scriptが何をしているのか理解出来るようになったらまた
flashからの直接渡しには挑戦しようと思います。

そですか、残念ですね?、
scriptは、LoadVarsはもともとデーターを送信する時にescapeしたものを送るようになってるので、
それをescapeしてないデーターを送るように書き換えたものです。
escapeしないということはhoge@ocn.ne.jpとかをそのまま送るので
うまくいくかなぁと思ったのです。


----------------
- yo

« 1 (2)
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops