• ベストアンサー

ホームページ上にある表に書き込み反映させるには。

ホームページ上に、下の表のようなものがあったとします。 ----------------- |No| 番号 | 名前 | ----------------- |01| 数字 | 文字 | ----------------- |02| 数字 | 文字 | -----------------  ---- |送信|  ---- 01、02の”数字・文字”のところのセルには通常 何も無い空白の状態とします。 ここに任意の数字や文字をいれ 送信を押すと、掲示板のようにホームページ に反映・更新できないものでしょうか。 どなたか教えていただきたいのですが・・・・ もし、難しいのであれば、何を使えば出来るのかもあわせて教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • ryota2
  • ベストアンサー率43% (61/140)
回答No.1

質問の意味が良く分からないのですが、下のようなものは如何でしょう。 多分あっていると思いますが、ローカルテストしてみてくださいね。 --HTMLファイル------------------ <html> <head> <title>~たいとる~</title> </head> <body> <form action="test.cgi" method="GET"> <table> <tr><th>No</th><th>番号</th><th>Name</th></tr> <tr><th>01</th><tr><input name="No1"></tr><tr><input name="Na1"></tr></tr> <tr><th>02</th><tr><input name="No2"></tr><tr><input name="Na2"></tr></tr> </table> <input type=submit value="送信"> </form> </body> </html> --test.cgi----------------- #!/usr/local/bin/perl require 'jcode.pl'; @pairs = split(/&/, $ENV{'QUERY_STRING'}); foreach $pair (@pairs){ ($name, $value) = split(/=/, $pair); $name =~ tr/+/ /; $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $value =~ s///g; &jcode'convert(*name,'sjis'); &jcode'convert(*value,'sjis'); $FORM{$name} = $value; } open(OUT,">data.txt"); print OUT "$FORM{'No1'},$FORM{'Na1'}\n$FORM{'No2'},$FORM{'Na2'}\n"; close(OUT); print "Content-type: text/html\n\n"; print <<"EOM"; <html> <head> <title>~たいとる~</title> </head> <body> <table> <tr><th>No</th><th>番号</th><th>Name</th></tr> <tr><th>01</th><tr>$FORM{'No1'}</tr><tr>$FORM{'Na1'}</tr></tr> <tr><th>02</th><tr>$FORM{'No2'}</tr><tr>$FORM{'Na2'}</tr></tr> </table> </body> </html> EOM

tontogoo
質問者

お礼

まさにこんな感じです。 CGI・ほとんど素人ですが、これを機会に色々勉強して参ります。 ほんとにありがとう御座いました。

その他の回答 (1)

回答No.2

 こんにちは。  おっしゃっている内容については、作成できるのは確かです。  一番手っ取り早いのは、HTMLフォームから受け取った内容をファイルに書くCGIを作成する方法だと思います。Webの仕組みやHTML・CGIについてはどれくらいの知識をお持ちでしょうか。Webの仕組みをある程度理解することは、作りたいものをどうやって実現するか考える手助けになります。そして、HTMLに関する知識はどの手法をとるにしても必須だと思います。 で、CGIに関しては、あなたの知識と根気次第で3段階の方法があります。 ■似たようなCGIを我慢して代用する。 ■似たようなCGIを改造して使う。 ■自分で1からCGIを作る。 下に行くほど、踏み込んだ内容です。  CGIはわかりやすく言ってしまえばサーバ側に置かれたプログラムで、クライアントからの命令を受けて実行され、何らかの処理を行います。その処理が掲示板の場合は「フォームに書かれた題名・投稿者・本文といった内容をデータファイルに書き出す」と言うような処理になっているわけです。  CGIを作るのにはプログラミングの知識が必要です。言語はC言語でもなんでもいいのですが、CGIを作るのに一番多く使われているのは、Perl(パール)という言語です。CGI作りの解説本もほとんどはPerlで作ることを前提としているので、勉強のしやすさはPerlが一番だと思います。  実現したい機能と似たようなCGIを探し出すか、Perlを勉強して自分で作るか、それはあなたの選択次第です。良いサイトができるといいですね。頑張って下さい。

tontogoo
質問者

お礼

ご丁寧にありがとう御座いました。 ”似たようなCGIを改造して使う”方法である程度理解し”いずれは自分で1からCGIを作る”方法をなどと漠然と考えておりました。 HTML・CGIはほとんど素人ですがとてもご丁寧な解説で私にも良く分りました。 これをきっかけに、いろいろ勉強させていただこうと思います。

関連するQ&A