アクセスカウンターの数字画像を出力するperlのcgiを、<img>タグで、
<img src="./counter.cgi">
と、呼び出す方法があると思いますが、これと同じように、画像ではなくテキストを出力するperlのcgiをhtml中に呼び出して、ブラウザに表示する方法はないでしょうか?
以下のような感じかと漠然と思ったのですが、やはり上手くいくはずはありませんでした。
■cgiプログラム(test.cgi)
#!/usr/bin/perl
print "Content-type: text/plain\n\n";
print "TEST TEXT";
exit 0;
■htmlファイル
<html><head></head>
<body>
<br>
<hr>
<object data="./test.cgi" type="text/plain"></object>
<hr>
</body>
</html>
perlもhtmlも独学で学んだ基礎レベルだと自分で思っています。
どなたか突破口となるヒントをお願いします。
No.4ベストアンサー
- 回答日時:
cgi側でjavascriptのコードを返すという方法があります。
■cgiプログラム(test.cgi)
print "Content-type: text/plain\n\n";
print "javascriptのコード";
■htmlファイル
<script type="text/javascript" src="http://サクラ/test.cgi">
テキストニュースも大抵この方式でしょう。
いわいるブログペットも、画像かIFrameかJavascriptで出来ているはずです。
ありがとうございました。
この方法で上手くいきました。
cgiプログラムは、htmlページ内の所定の<div>の中身をinnerHTMLで書き換えるjavascriptの関数を吐き出すように作って、htmlページがonloadでその関数を呼び出すようにしました。
仰るとおり、Googleのアドセンスやニュースもこんな感じなんでしょうね。
助かりました。
ありがとうございました。
No.5
- 回答日時:
後出し条件によって質問の全体像が見え辛くなった気がします。
まとめ直してもらえませんか?
登場サーバーが全部で何台か、それぞれでの 自作 HTML/CGI や SSI の可否は特に重要です。
この回答への補足
混乱を生じさせてすみませんでした。
解決はしましたが、どんな全体像だったか記しておきます。
登場するサーバーは3つです。
(a) amebloサーバー
友人がブログを書いているサーバーです。
(b) fc2サーバー
ボクがBlogを書いているサーバーです。
ブログテンプレートによりhtmlの編集やcssの編集が可能です。
SSIに関しては設定できません。
(c) サクラインターネットのレンタルサーバー
cgiの置き場所です。perlで書いてます。
SSIも使えるようです。
どういうことをやりたかったかと言うと、
(1) 上記(a)から友人ブログのRSSを(c)に設置したcgiで取得。
(2) cgiは取得したRSSをパースなどして最新記事リストをテキストで吐き出す(結果的にこれをjavascriptコードとして吐き出した)。
(3) 上記(b)から(c)のcgiを叩いて、(b)のfc2ブログに(a)の友人Blogの最新記事リストを表示させたい。
最終的には(2)をjavascript形式で吐き出すようにcgiを書き、fc2ブログからそのjavascriptを呼んで、onloadをトリガーとしてinnerHTMLで所定の<div>内にamebloの最新記事を並べることに成功しました。
ブログパーツか何か使えば良かったかもしれませんが、デザイン性とか自由度の高いほうが良かったので、あえて自分で組みたかった次第です。
全体像は以上ですが、分かっていただけたでしょうか?
ここに質問してホント助かりました。
ありがとうございました。
No.3
- 回答日時:
それを実現する事が、Ajax誕生の目的と言っても過言では無い気がしますね。
JavaScript を使う事になりますが、prototype.js の Ajax.Updater() を使えばそれほどムズく無いのでは?
参考URL:http://javascriptist.net/ref_prototype/ajax.upda …
この回答への補足
ん~、回答のお礼を書いた後に、また書きこんでます。
どうやら、Ajax.Updater()で指定するurlは、ドメインから指定できないみたいですね。
HTML自体はfc2サーバーにあり、Ajax.Updater()で指定するurlはボクのサクラインターネットのサーバーにあるので、どうしてもドメインを指定しなくてはいけません。
せっかく上手くいきそうなので、もう少しAjax.Updater()で粘りたいのですが、urlにドメインを指定するよい方法はないでしょうか?
#urlのドメインを跨いでAjax.Updater()を使う方法はないでしょうか?
ありがとうございました。
教えていただいた参考URLで、Ajax.Updater()のサンプルを試してみました。
無事に思い描く動きをしたのでこの手法で実際に組み込んでみたいと思います。
#参考URLのprototype.jsへのリンクが切れていたので、以下からダウンロードしました。
http://prototypejs.org/assets/2008/9/29/prototyp …
難点は、javascriptなのでケータイに対応できない点です。
ケータイのブラウザで動的にテキストを出し分けることができる方法ってあるんでしょうか?
何はともあれ、すっきりして嬉しいです。
実際の作り込みは今からですが、ワクワクしてきました。
ありがとうございました。
No.2
- 回答日時:
HTMLの規格上は、「ページ外から取得した文字列をそのまま本文中に埋め込む」方法はありません。
どうしてもテキストを埋め込みたいのでしたら、SSI の使用を検討してください。SSIとは、WWWサーバ側でスクリプトを実行し、その文字列を埋め込んだHTMLファイルを配信するものです。
<!--#exec cgi="./test.cgi" -->
といった記述をしておけば、その部分がスクリプトの出力するデータに置き換えられます。
ブラウザからは文字列置き換え後のデータを、普通のHTMLファイルとして受け取りますので、HTMLのタグなども自由に入れられます。
ただし、SSIを使用するためには、WWWサーバ側の設定などが必要ですので、どこでも使えるわけではありません。
くわしくは
http://www.tohoho-web.com/wwwssi.htm
http://www.scollabo.com/banban/ssi/index.html
などをご覧ください。
ご回答ありがとうございました。
fc2ブログのhtmlテンプレートの中で、動的にテキストを表示したいと考えています。
全体のhtmlの吐き出しはfc2サーバーが行いますので、SSIの設定などはこちらは手が出せないとう事情があります。
ブログのテンプレートに埋め込むという用途が説明不足でした。
すみませんでした。
Googleのアドセンスが動的にテキスト広告を出せているんだから、自分のやりたいことは出来るのではないかと漠然と思っています。
perl、cgiという手段で実現できるかどうかが心配ですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- CGI CGIで出力するhtmlの<!DOCTYPE html>等のタグは要りますか? 2 2023/02/05 21:26
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS flex の各子要素を横幅 100% にしたい 1 2022/09/22 21:25
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
cgiとplとpm
-
perlをインストールしたのに使...
-
perlのrequireの動き方について...
-
月の第一週とは
-
よくある 『 第○(1・2・3・4・...
-
apacheでPerl CGIが作動せず、5...
-
VBA。複数のChangeイベントをま...
-
エクセルで相対パスの書き方を...
-
[Excel] ある日の曜日が当月の"...
-
燃えるゴミの日は何曜日ですか?
-
エクセルで毎月第2週日の水曜日...
-
DBを10件毎に表示ページング...
-
[C#]ListView一覧表示時の幅設...
-
CGIの中で出力するテキスト内容...
-
週休3日制で土日の他にもう一日...
-
週2回のペースって だいたい何...
-
VBAでExcelのヘッダーに文字列+...
-
CGI RESCUEの簡易予約システムY...
-
for a week tomorrowはどういう...
-
カレンダープログラム、曜日の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
cgiとplとpm
-
perlのrequireの動き方について...
-
jcode.plが読み込めない
-
自CGIのURLのパス部分を取得す...
-
Perlソースを2つのファイルに分...
-
Perlのデバッグ方法って。。。...
-
mt-check.cgiでForbiddenエラー...
-
webからroot権限のコマンドを実...
-
useとrequireでエラー
-
画像のURLの変数を別のCG...
-
Quantifier follows nothing in...
-
require文が実行できない
-
コマンドラインでGET or POSTで...
-
apacheのCGI設定について教えて...
-
Not Found 404エラー時のCGI出力
-
htmlからテキストを返すperlを...
-
perlのcgiで、変数の中身を表示...
-
use CGI
-
フォームでインクリメント入力→...
-
Internal Server Error
おすすめ情報