このページは福井県立大学の田中求之が2006年1月まで運用していた Mac のサーバ運用に関する会議室 「Web Scripter's Meeting」の記録です。情報が古くなっている可能性がありますのでご注意ください。

SuperCardをWeb上で動かし、Field内容をMailしたいのですが..

発言者:Oscar
( Date Sunday, September 17, 2000 15:33:01 )


たびたびの質問で申し訳ありません。
SuperCardをWeb上で動かし、Field内容をMailしたいのですが...
SuperTalk中にCGIにデータを渡す、コマンドはあるのですが
guestMail.acgiを使ってトライしているのですがうまくいき
ません...
どなたか、ご存じないでしょうか?

田中求之 さんからのコメント
( Sunday, September 17, 2000 15:39:56 )

何をなさりたいのかが、いまひとつ具体的に分らないので、確認させて
ください。

SuperCard で作った CGI を動かし、その中でメールの送信を行いたい、
ということでよろしいのでしょうか? つまり、SuperCard の CGI の
中でメールを出す方法を知りたい、ということですか?

SuperCard が AppleScript、あるいは少なくとも AppleEvent が
扱えるのならば、可能です。HyperCard では可能ですので、おそらく
SuperCard でも可能だと思います。

もっとも、最近の SuperCard がどうなっているのかは知らないのですが。

…そういや、Marionet ってツールもあったなぁ…

Oscar さんからのコメント
( Sunday, September 17, 2000 16:29:45 )

申し訳ありません..SuperCardで作ったStackをSuperCard WebPlug-inで
Web上に公開し、その中でMailを出す方法を知りたいのです。
SuperCardをCGIとして使用しようとしているのでは無いのです。

田中求之 さんからのコメント
( Sunday, September 17, 2000 21:19:42 )

>SuperCardで作ったStackをSuperCard WebPlug-inで

この仕組みが良く分ってないのですが、SuperCard のスクリプトの中で
メールが発信できるようにすればよいということなのでしょうか?

Oscar さんからのコメント
( Monday, September 18, 2000 07:01:40 )

田中さん、いつもこの会議室では色々勉強させていただいています。
>SuperCard のスクリプトの中でメールが発信できるようにすればよい
以下の3つのCGIに処理を渡すスクリプトがあるのですが、
send expression to URL <cgiPath> using get method with callBack <callbackMessage> 
send expression to URL <cgiPath> using post method with callBack <callbackMessage>
send expression to URL <cgiPath> using send method with callBack <callbackMessage> 
どうも、うまくいかないのです。
guestMailはForm形式ではないと処理できないのでしょうか?


田中求之 さんからのコメント
( Monday, September 18, 2000 13:52:09 )

SuperCard の中から CGI を呼びだしたいということですね。

この場合、おそらく、expression の部分は、Form で投稿されたデータに
該当する URL エンコードされた文字列になっていないといけないと思います。
つまり、単純にメッセージを書いたものではなく、ブラウザから Web サーバへ
送信されるものと同じ形式のデータになっている必要があると思います。
この点については、SuperCard のマニュアルで確認してください。

もしそうなのであれば、URL Encode の XFCN などを使って、データを
自分で URL エンコードする処理がひつようになるはずです。

この点さえクリアすれば、CGI の呼び出しは可能だと思います。 


ただ、わざわざ CGI を呼びだすというのはなぜでしょうか? CGI が
動いているマシンと SuperCard が動いているマシンは同じですよね?

CGI を経由するより、SuperCard の中で、直接、メールを送信する処理
を行った方が良いと思うのですが(たとえば AppleEvent で UVJ Mailer
を呼びだすといった方法なら、面倒な文字処理や URL エンコードの問題
などは出てきませんが)

Oscar さんからのコメント
( Tuesday, September 19, 2000 04:39:57 )

>SuperCard の中から CGI を呼びだしたいということですね。
そうなのです、
>URL エンコードされた文字列になっていないといけないと思います。
英文のPDFを調べてみると、そういうスクリプトが紹介されていました。
CGIが動いているマシンとSuperCardをWeb上で見ているマシンは違う物で
す。簡易ショッピングカートのようなものが出来ないかと考えているの
ですが...
もうすこし、試してみます。

田中求之 さんからのコメント
( Tuesday, September 19, 2000 17:28:37 )

>CGIが動いているマシンとSuperCardをWeb上で見ているマシンは違う物で

Plugin を使うと、SuperCard のスタックが、ユーザーのブラウザの中で
動くことになるんですね?

それであれば、確かにスタックの中からメール送信の CGI にアクセスという
ことになりますね。

URL エンコードの方法については、以下の ClipDecoder のページの解凍の
仕組みの説明のところを見てもらえばよいのではないかと思います。
ClipDecoder が行っているのとは逆の処理を行えば、URL エンコードされた
データを組み立てることができます。

→  ClipDecoder

Oscar さんからのコメント
( Wednesday, September 20, 2000 19:13:37 )

田中さん、いつもレスありがとうございます。
ClipDecoderは以前、妻が使っておりました。
ClipDecoderのスクリプトを参考にしつつ、UVJ Mailerの使い方を
マスターしようと思います。

小島健治 さんからのコメント
( Thursday, September 21, 2000 14:55:37 )

始めて通りかかったらSuperCard という文字が見えたので、
開けてみましたら、私が答えられそうな内容ですので。

カードにフィールド2つ「Address」と「Data」を作ります。
ボタンを作ってその中に以下のスクリプトを書き込みます。

on mouseUp  
  put "mailto:"& cd fld "Address" into tURL
  put cd fld "Data" into tData  
  send tData to URL tURL using POST  
end mouseUp

件名は書き込めません。 その他、ウインドウズで使用すると
ブラウザーのメ−ル機能がオープンされてしまいます。 
マッキントシュをターゲットとしたSCWEBプロジュクトの一部に
付け加えるくらいなら、使えるかもしれません。

サンプルを見れるようにしました。


→  SuperCard WEB でメール

Oscar さんからのコメント
( Friday, September 22, 2000 06:45:41 )

小島さん、コメントどうもありがとうございます。
サンプルありがとうございます。Addressの部分に自分のAddressを書くと
自分に送られてくるのでしょうか?
Mailが送られて来ないのですが...
僕の設定が悪いのでしょうか?

Oscar さんからのコメント
( Friday, September 22, 2000 08:18:10 )

小島さん、うまくいきました!!
ところで、CGIは何をお使いなのでしょうか?AppleScriptでしょうか?
Perlでしょうか?

小島健治 さんからのコメント
( Saturday, September 23, 2000 15:15:54 )

あのサンプルでは、フィールドのデータを直接メールアドレスに送っていますから、
CGI は使っていません。 

ランゲージガイドの「send」の終わり近くに、データをCGI 用に作り変え、
アドレスをCGI にして、同じ方法で送る方法が「send」の項目にあります。 

SuperCard WEB 自体でかなりの処理が可能ですから、私の使う範囲では
CGIに送ってみようというプロジェクトがまだないので、試したことはありません。

SuperCard WEB は不安定なので、ショッピングカートのようなものには
向かないと思いますが、どうでしょう? 

Oscar さんからのコメント
( Tuesday, September 26, 2000 07:33:23 )

小島さん、コメントありがとうございます。
>SuperCard WEB は不安定なので、ショッピングカートのようなものには
>向かないと思いますが、どうでしょう? 
SuperCard WEBは不安定なのでしょうか?

小島健治 さんからのコメント
( Wednesday, September 27, 2000 08:41:02 )

Oscar さん、

> SuperCard WEBは不安定なのでしょうか?

まず誤解のないように言っておきますが、Mac OS上で動くSuperCard は安定して
いますし、ラッドツールとしてに非常に充実したプログラムだと思っています。
 
しかし、ブラウザ−上で動く「WEB 版のSuperCard WEB」は、内容の充実とは裏腹に
突然フリーズしたりするトラブルが多いことは、残念ながら確かです。

ですからショッピングカートのような、お金と直接かかわりのある事柄は避けるのが
懸命かと思います。 SuperCard WEB は多少のトラブルが起きても、さほどビジネス
上影響が現れない、教育関連のプロジェクトなどでその威力は十分発揮できるもの
と思っています。 

これ以上この件に関して話しを進めてゆくと、このサイトの主旨にはずれるかもし
れませんので、もし技術的なことをもっと知りたかったら私に直接メールをくれるか、
SuperCard ユーザーグループのメーリングに質問してください。

サンプルの「SuperCard WEB でメール」から私宛に送れます。
みなさん、突然現われてどうもお騒がせしました。