• 締切済み

HTMLへの出力の仕方

勉強中の初心者です。 仕事の関係で、ホームページを作っています。 過去ログなどを検索して調べてみたのですが、調べ方が悪いのか該当するのが見つからなかったので質問させていただきます。 見当違いなことを質問するかもしれませんがそこはご理解いただければと思います。 私が今したいことは、Aというデータを更新したら、全てのページに更新を反映させたいと思っています。サーバーに基本となるデータをおいて更新したらそれをHTMLのテーブル内に表示させたい。 私の感覚でエクセルのようにシート1のA1のデータをシート2のA1へ関数を使って表示でき、シート1のA1を修正すると、シート2も変わるような感じで思っています 参考本を読みながら、フリーのCGIなどを活用しながら勉強してるのですが、解決の糸口も見つからない感じです。 お手数をおかけしますが、どのような勉強とかこうすればいいのではないかなど教えていただければと思います。よろしくお願いいたします。

  • CGI
  • 回答数3
  • ありがとう数0

みんなの回答

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.3

CGIカテゴリへの質問なんでちょっと違うかもしれませんが SSIを使うのも一つの手段かと思います。 http://www.tohoho-web.com/wwwssi.htm

  • okasan123
  • ベストアンサー率45% (14/31)
回答No.2

DBを使うのがいいのでしょうが、それは多分むずかしいので。。。 PHPが使える環境ならば更新を反映させたい部分に //ここから <?php $filename=fopen("example.txt"); $string=fread($filename,filesize($filename)); flocse($filename); echo $string; > //ここまで を貼り付けると、example.txtの内容が表示されます。 後はexample.txtの中身を更新してください。 メニューの作成なんかには便利です。 example.txtを上記の方法で指定するときは、 画像データを指定するように、フォルダの構造を意識して指定してください。 まあどの言語を使ってもこんな感じです。 javascriptで外部jsファイルを読みこんで作る方法もあるとおもいます。

  • galluda
  • ベストアンサー率35% (440/1242)
回答No.1

がると申します。 んと…「Aというデータを更新したら、全てのページに更新を反映させたい」場合、つまりは「全Pageにそういった動的なものを出力する仕組み」が必要になります。 で、通常、HTMLっていうのは「一部だけ変更できる機能」がないので。基本的には「すべてのPageを動的に、つまりCGIで」出力する必要があります。 で、HTMLの「一部だけを変更できる」のが、Ajaxや、あるいはiframeになります。 ですので、手段としては「全Pageを動的に出力する」「Ajaxまたはiframeを使う」というあたりになろうかと思います。 以上、なにかのヒントにでもなれば幸いです。

関連するQ&A

  • トップページHTMLに更新日を自動的にさせる方法を探しています。

    トップページHTML ┣HTML1 |┗…HTML2 ┣HTML3 ┣CGI1 |┗…HTML4 ┗CGI2 …┗…DATA1 トップページHTMLに更新日を自動的にさせる方法を探しています。 HTML1にはHTML2のリンクが張ってあります。 HTML3はそのものを変更しています。 CGI1はHTML4のテンプレートを使って変更しています。 CGI2はDATA1に更新データを書き込んでいます。 トップページで表示させたい更新は ・HTML2 ・HTML3 ・CGI1 ・CGI2 以上の4つです。 ジャバスクリプトでもCGIでも何でも方法は問いません。

    • ベストアンサー
    • HTML
  • HTMLをかきかえたり

    掲示板やカウンタなど、CGIってログファイルをかきかえて、それを読みなおして表示してますよね? そこを、直接CGIがHTMLをかきかえたりすることはできないでしょうか? カウンタのようなことをしつつ、ファイルの最終書きかえ日(?)をブラウザから変更できるようなことをしてみたいのですが…。 無理でしょうか?というかこういうのはできたとしても危険でしょうか?

    • 締切済み
    • CGI
  • 配列について

     現在CGIの勉強として簡単なゲストブックを作ってるんですけど、わからないことがあるので質問します。 -------log.datの内容------- Aさん<>GOOです。<> Bさん<>まあいいんじゃない?<> Cさん<>ファイトー<> -------メインのCGI(表示部分)------- open(D,"log.dat"); $data=<D>; close(D); @log=split(/<>/,$data); ($name,$mes)=@log; print "$name : $mes";  こんな感じで内容を書き込むことはできましたが、 いざメッセージを表示しようとしたときに、僕が作った方法ではAさんの内容しか表示されません。  どうすれば全員の内容を表示することができるのでしょうか? 変な質問をしてるかもしれませんが、 よろしくお願いします。

    • ベストアンサー
    • Perl
  • HTMLの更新について

    はじめまして。よろしくお願いします。 早速質問なんですが、今、個人的なサイトを運営しているのですが、ページ数が多くなり、更新に非常に時間がかかっています。 同じデータを数ページにわたり使用することが多く、今だと1ページずつ更新しなければなりません。 1ページ目にはAというデータ。2ページ目にはAとB、3ページ目には、AとCというように、データの変更だけで更新できないかと思っています。 おそらく、同じような質問をされた方がいると思いますが、過去ログを見させていただいたのですが、見つけれませんでした。 よろしくお願いします。

  • CGIのログをHTMLで表示

    CGIのログ(カウント)をHTMLにSSIで表示させようと思い下記のCGIを考えたのですがうまく表示されません。 皆様のお力をお貸し下さい! [log.dat] L内容 DataSu='***'; (***にはカウント数字が入っています) 上のカウントログをHTML表示させる為にCGIを作る [count.cgi] #!/usr/local/bin/perl #カウントログ読み込み open(IN,"ログまでの相対パス"); # カウンターを読み出す $count = <IN>; #ファイルを閉じる close(IN); #サイト数の表示。 print "Content-type: text/html\n\n"; print "$count"; 上記のCGIを表示させるとDataSu='***';とファイル内容が全て表示されてしまいます。 ***のカウント数だけ表示させるにはどうしたらいいのでしょうか?

    • 締切済み
    • CGI
  • VBSで、凝ったHTMLを出力する!

    いつも大変お世話になっております。 上手く説明できない点もあるかと思いますが、 よろしくお願い致します。 現在、色々とプログラムを組むことが多く、 毎回調べては書いて…の繰り返しのため 良く使うもの・便利だったものはメモ帳などに貼り付けて 保存してあります。 しかし、この状態では メモ帳が大量にあり探すのにとても苦労しますし、 内容もとても見づらいものになってしまいます。 現在、同フォルダにあるTXTファイルを自動的にHTMLに変換するVBSと 同フォルダにあるファイルのリンクを作成し、一覧をHTMLにするVBSを作りました。 少しずつ便利にはなってきていますが、 やはり見づらさという点では変わりありません。 そこで、やりたいこととしまして ・ジャンル別に分けたい。 (できればツリー状にして表示したい) ・2フレームで作成したい。(左側に目次、選択したものを右側に表示) 全自動でHTMLファイルを作成しようと思っているのですが、 さすがにむずかしいでしょうか? 例えば HTML化用ファイル   |   |--「HTMLファイルをここに作成」   |   --TEST     |      ------ブック     |    |___新規ブック.html     |    |     |    |___ブック名編集.html     |      ------シート     |    |___新規シート.html     |    |     |    |___シート編集.html     |    |     |    |___シート保護.html     |    |     |    |___シートコピー.html     |    |     |    |___シート削除.html     |         |         |          ------目次3     |      ------目次4     |      ------目次5 ----------------------------------------- 【理想】           |    TEST    |      |     |       ------ブック   |     |    |___新規ブック.html | クリックしたHTMLの内容表示     |    |    |     |    |___ブック名編集.html |     |     |      ------シート   |     |    |___新規シート.html |     |    |    |     |    |___シート編集.html |     |    |    |     |    |___シート保護.html |     |    |    |     |    |___シートコピー.html |     |    |    |     |    |___シート削除.html  |     |        |     |        |     |        |      ------目次3  |     |     |      ------目次4  |     |     |      ------目次5  | ↑↑ 折りたたむことも可能↑↑ 今は、同じフォルダ内にあるものを HTML化することはできています。 ------------------- Sub TEST2() Dim strScriptPath'自分の現在位置 strScriptPath = Replace(WScript.ScriptFullName,WScript.ScriptName,"")'フルネームから、スクリプトネームを削除! ' フォルダをオブジェクト取得 Set objFso = CreateObject("Scripting.FileSystemObject") Set objFolder = objFso.GetFolder(strScriptPath) Set HTMLOutPutData = objFso.CreateTextFile("ファイル一覧.html",True) HTMLOutPutData.WriteLine "<html>" HTMLOutPutData.WriteLine "<head>" HTMLOutPutData.WriteLine "<title></title>" HTMLOutPutData.WriteLine "</head>" HTMLOutPutData.WriteLine "<body>" HTMLOutPutData.WriteLine "<h1 align=""" &"center" &""">まとめ</h1>" HTMLOutPutData.WriteLine "<hr>" for each file in objFolder.Files If file.name<> "ファイル一覧.html" and file.name<> WScript.ScriptName and Right(file.name,4)<> ".vbs" Then HTMLOutPutData.WriteLine "<font size=""" &"5" &"""><a href=""" & file.Path & """>"& file.name & "</a></font><br>" End if Next HTMLOutPutData.WriteLine "</body>" HTMLOutPutData.WriteLine "</html>" End Sub ------------------ http://lll.s21.xrea.com/m/link/37.html Javascriptは特にやっていなかったのと、 HTMLも不慣れなため、簡単なものしかかけませんでした。 フォルダ内の状況をそのまま HTMLとして出力する方法があれば、 教えて下さい。 よろしくお願い致します。 以上、よろしくお願い致します。

  • HTML内での分岐

    お世話になります。 現在HTMLでホームページを作成しており会員のユーザーとそうでないユーザーによって一部の画面表示を変更したいと思っています。 その異なる画像表示をさせてい部分がCGIのため読み込むものは下記の2つになります。 【会員の場合(loginに値がある場合)】 <!---HTML---> &_Html_login; print <<"<!---HTML--->"; 【会員でない場合(loginに値がない場合)】 <!---HTML---> &_Html_right; print <<"<!---HTML--->"; これをそのままHTMLのソースとして書き込みたかったたため下記のようにHTMLに記述しました。 ・・・(HTMLソース) </TABLE> <SCRIPT> var login = $login; if (login="") { print "<!---HTML---> &_Html_login; print <<"<!---HTML--->"; "; } else { print "<!---HTML---> &_Html_right; print <<"<!---HTML--->";"; }</SCRIPT> ・・・ しかしながら動作しないことにくわえてソースを見るとそのままJAVAの数式が表示されていました。 見当はずれのことをしているかもしれませんが、CGIの読み込み先ソースをHTML内で分岐させて表示させる方法があれば教えていただければうれしい限りです。 よろしくお願いいたします。

    • ベストアンサー
    • Perl
  • CGIで書き出されるページにHTMLで記述したメニューを表示させたいのですが…

    現在、検索エンジン系のCGIを元にサイトを作成しています。 このCGIで書き出される全ページ(任意の)にサイトのメニューを表示したいのですがどうやってよいのか分かりません。。 メニューは変更があっても更新しやすいようにHTMLで作成したいので、CGIにHTMLを読み込むという形をとりたいと思っています。 いろいろ調べてみて「出来る」ということはわかったのですが、具体的にどうすればよいのかまでは分からなかったのでここに質問させて頂きました。 初歩的な質問だとは思うのですが、どなたかご回答よろしくお願い致します。

    • 締切済み
    • CGI
  • クッキーが邪魔をする

    AjaxとCGI(Perl)は初心者のものです。 Ajaxを使ってCGIにデータを送信し、TXTを書き換えるのを作りました。 しかし、書き換えたTXTをAjaxで読み取ると、書き換える前のままなのです。 TXTを開いてみると更新されていて、 それを開いてから出ないと、HTMLに反映されません>< 「HTML」⇒⇒(1)⇒⇒「CGI」⇒⇒(2)⇒⇒「TXT」  ↓                        ↑  ⇒⇒⇒⇒⇒⇒⇒⇒(3)⇒⇒⇒⇒⇒⇒⇒↑ (1)データをAjaxで送信 (2)CGIを使って書き換え (3)AjaxでTXTの内容を読み取り 上の(3)で、古いデータが引き出されます。 どなたか分かる方がいましたら、お助けください。

    • ベストアンサー
    • AJAX
  • HTMLの外部jsのようなcgiファイルについて

    はじめまして。かなりレアなケースになると思うのですが、すでにリリースしており、泣き寝入りする事態が起きまして、CGIの出力のところがわからなくて困っております。 1、あるHTMLをブラウザで開くと<head>内のCGIが実行される。 <script language="JavaScript" type="text/javascript" src="○○.cgi"></script> 2、このCGIが実行されるとMySQLのデータを取得し、HTMLでデータを取り扱えるよう、取得した値をJavaScriptの配列の形式に加工され、「Temporary Internet Files」に○○.cgiが保存されます。 var 配列A=new Array(); 配列A[0]="0000001,名前,住所"; 配列A[1]="0000001,名前,住所"; ※○○.cgiを開くと右のような配列の表記が記載されている。 3、このHTML内で、上記の配列をJavaScriptで呼び出せば、Temporary Internet Filesに保存されたcgiファイルのデータ(配列形式の)が表示されるので、まるで外部JSの配列を扱っているかのようにDBのデータを取得することができます。 mysqlのデータを取得した後、CGIでHTMLに吐き出すぐらいはわかるのですが、 画面上に表示させるのではなく、外部JSなら普通どこかサーバにあるJSファイルを見にいくと思うのですが、Temporary Internet Filesに保存され、それが値として操作できるところです。 このCGIの出力の記述がまったくわからないので困っております。 わかりにくい文章で本当に申し訳ございません。どうかよろしくお願いします。

    • 締切済み
    • CGI

専門家に質問してみよう