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

以下のような作業をしたいと考えています。

1. HTMLに書き込んであるjavaScriptで値を設定する。
2. Perlで書いたCGIをサブルーチンのように値を渡してコールする。
3. CGI内でファイルに入出力処理をする。
4. CGIからJavaScriptに値を返す。
5. JavaScriptに返ってきた値を使って処理を行う。

典型例は、JavaScriptからカウンターを呼び出し、キリ番のときに特別な画面を表示させる、といったものです。
JavaScriptからPerlのCGI、CGIからJavaScriptへの値の受け渡しのやり方がどうしてもわかりません。
どなたか良い方法を教えてください。(画面の表示一回につき上記フローは一回しか通っては困りますので、POSTやGETでの自画面への送信ではたぶんだめではと思います。どこかで<IMG SRC=”/cgi-bin/Count.cgi?df=xxx”......>というのを見かけましたが、そうなのでしょうか。その場合でもPerl側での送受信も含めてよろしくお願いします。)

●質問者: mouitchou
●カテゴリ:ウェブ制作
✍キーワード:CGI HTML JavaScript Perl はと
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● ekusutasii
●0ポイント

やっぱりどうしてもその気持ちって伝えたいものですよね。わかります。http://www.hurinkaran.kamikaze.ne.jp//003576

◎質問者からの返答

なんだか知りませんが大変迷惑です。


2 ● matrix_model
●30ポイント

JSONをつかうと楽になるとおもいます。XMLHttpRequest使って。

http://www.openspc2.org/JavaScript/Ajax/Ajax_study/chapter03/006...

http://jsgt.org/ajax/ref/test/json/getpost/test3.htm

◎質問者からの返答

有り難うございます。サイトを拝見しましたが、なるべくシンプルにやりたいのです。この説明だと、イモヅル式にいろいろ必要になり、とても簡単という気がしませんでした。


3 ● kazu1107
●50ポイント

<IMG SRC=”/cgi-bin/Count.cgi?df=xxx”>という方法はCGIは画像ファイルに偽装され、呼び出されたタイミングで処理をしています。(データはGETメソッドをつかって送信されます)

私が思いつく方法は二つほど。

一つはCGIの作成にPHPを使い、そのファイルの中にページのHTMLなども一緒に記述し、PHPで処理したカウントの値が条件に合えば対応ページを表示する方法。

二つ目は外部に置かれるCGIにアクセスするため、Ajaxと呼ばれる技術を使うことです。

Ajaxについては最近結構有名になってるので関連書籍などで勉強することが出来ます。まぁ簡単に言えばCGIにデータファイル(XML形式などでprintなどの出力関数で吐く)を出力してもらって、そのデータをJavaScriptで処理するというものです。

ただ、この方法は古いブラウザには使えないのと、そもそもJavaScriptを切っていては出来ない方法のため、ある条件で必ずページを移動させたいという場合には先の方法のほうが有利でしょう。

Ajax関連記事

http://www.atmarkit.co.jp/fwcr/special/ajax01/01.html

◎質問者からの返答

結局調べたところPHPが一番良さそうでしたので、これでいくことにしました。JavaScriptを書き直しましたが、意外なほどにあっさりと解決しました。詳しくありがとうございました。

関連質問


●質問をもっと探す●



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