• ベストアンサー

.htmlのあとの?以降のデータについて

CGIを呼び出すとき、 ~.cgi?name=1&id=2 などのように、 ファイル名のあとにデータを追加するのは分かるのですが、 <A HREF="~.html?name=1&id=2"> のように、htmlファイルのあとにデータがつくのは どういう事なのでしょうか? 教えてください。

  • HTML
  • 回答数4
  • ありがとう数4

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

  • ベストアンサー
  • ka-yo-ko
  • ベストアンサー率50% (3/6)
回答No.3

<A HREF="~.html?name=1&id=2"> ASPやJAVAサーブレットに変数名と値を渡しています。 サーバー側のプログラムは?以降の値によって、 動きを切り分けます。 例えば、参考URLでは、検索条件を渡しています。 わかりきっている事だったらすみません。

参考URL:
http://www.goo.ne.jp/default.asp?act.revise_main=1&SDB=PG&IM=0&SM=MC&DC=100
harisun
質問者

お礼

ASPやJavaサーブレットに渡しているんですね。 どうもありがとうございました。

その他の回答 (3)

  • PtoP
  • ベストアンサー率27% (24/86)
回答No.4

スクリプトで扱えるので、ちょっとしたパラメータをページをまたがって渡すときにつかえます。 確かdocument.link.searchで?以降の文字列が扱えたと思います。(うろおぼえ)

harisun
質問者

お礼

JavaScriptで扱えるとは知りませんでした。 どうもありがとうございました。

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.2

> <A HREF="~.html?name=1&id=2"> > のように、htmlファイルのあとにデータがつくのは > どういう事なのでしょうか? そのリンク先の html ファイルの JavaScript で、そのパラメータを扱えます。 CGI が許可されていないサイトで、ちょっとした処理をしたい、なんてときに 便利だったりします。 # 扱うのは、面倒くさいですけど

harisun
質問者

お礼

なるほど、JavaScriptで扱えるのですか。 勉強になりました。 どうもありがとうございました。

  • madman
  • ベストアンサー率24% (612/2465)
回答No.1

ものによって異なりますが、WWWサーバーがJAVA等でオリジナルの場合、引数を有効にすることができます。 もしくは、アクセスログからの解析に利用するか、単なるページの書き間違いではないでしょうか?

harisun
質問者

お礼

なるほど、ありがとうございます。

関連するQ&A

  • フォームデータの取得について

    Aという画面からBという画面を呼び出し、B画面でファイルのアップロードを行いたいと思っています。 AからBの呼び出しは、 <a href="javascript:document.form1.submit()">B画面へ</a> ・・・ <form name="form1"method="post" action="upload.cgi" > <input type="hidden" name="id" vlue="123"> </form> このようにリンクからサブミットしています。 B画面の表示とファイルのアップロードを行うプログラムupload.cgiでAからのデータ(id)が受け取れません。 B画面からupload.cgiを呼んだ時は、アップロードファイルやhidden項目も正常に取得できています。 サブミットボタンからの送信とjavascriptからのサブミットでは送信データが違うのでしょうか。 cgi-lib.plのReadParseを使うとA画面からのデータを正常に取得できるのですが、 B画面がファイルアップロードを行うため、別の処理でフォームデータの取得を行っています。 (コーディングは長さ制限のため書けませんでしたが、とほほのWWW入門のwwwupl2.cgiを参考にしています) どなたかご存知の方いらっしゃいましたら、お願いいたします。

  • 今、登録したデータをSQLから取り出して表示するには

    はじめまして投稿さしていただきます。 まず環境は Perl+「DBI1.201」「DBD-Pg1.01」「PostgreSQL7.1.1」 です。  いきなり質問なんですけど、 address(テーブル名) --------------------------------------------- id | name | kana | postnumber --------------------------------------------- 1 |  太郎  | たろう | 123-0001 --------------------------------------------- 2 | 花子  | はなこ | 234-0001 --------------------------------------------- このようなテーブルがあったとして、 HTMLファイルで入力画面を作り、そのデータを 下のCGIプログラムに送りました。 $id = $in{'id'}; $name = $in{'name'}; $kana = $in{'kana'}"; $postnumber = $in{'postnumber'}; insert into address(id,name,kana,postnumber) values ($id,'$name','$kana','$postnumber'); で、データをテーブルに入れる事は出来きたんですけど 、この受け取ったCGIの同じプログラムの中に、 入れたデータを、ちゃんと入ったかどうか確認できるよう にSQLから引き出したいんですが、どのようにすれば いいのか教えてもらえますか? $idで、データを指定してselect文で取り出せばいいと 思うんですが、その構文が分からないんです。 また他にいい方法があれば教えてもらえますか? お願いします。

  • CSVデータを使ったページングとソート

    phpをやり始めて3ヶ月くらいですが、高度な事がまだまだわかりません。どなたかお知恵を拝借願えないでしょうか? fgetcsvを使って一覧表示をしidからそのデータの詳細をsyousai.phpへ送って表示するようにしています。 この一覧表示にページングとソート機能をつけたいのですが、どうやったらよいかわかりません。 <? $fname = "list.csv"; $file = fopen($fname, "r"); while (list( $data0, $data1, $data2, $data3, $data4) = fgetcsv($file, 1000, ",")) { ?> <table> <tr> <td> <form action="syousai.php" method="get" name="code"> <a href="syousai.php?id=<? echo $data0;?>" name="id">詳細</a> </form> </td> <td>番号:<? echo $data0;?></td> <td>名前:<? echo $data1;?></td> </tr> </table> <? } ?> <? fclose($file); ?> と、言うようなソースです。 こんなやり方でいいのかも不明ですがこの中にページングとソートの機能を追加したいと思っています。

    • ベストアンサー
    • PHP
  • 「戻る」と入力したデータが消えてしまう

    人が作ってくれたcgiを見て、直すことができるか検討 しています。 a05.cgi という入力フォームで社員コードを入力して 「編集画面へ」をクリックすると a06.cgi に進み、 そこで詳細データを入力します。 a06.cgiにある print "<a href=\"./a05.cgi\">戻る</a><br>\n"; この部分で、「戻る」をクリックしてa05.cgiに戻った とき、先に入れた社員コードが消えてしまっているの ですが、これを消さないように戻ることはできるので しょうか。 cgiはリストを追加したりするくらいしかわかりません。 よろしくお願いします。

    • ベストアンサー
    • CGI
  • リンククリックでデータを送信。

    cgiでログファイルを開き、タイトル行だけを表示させています。(行数分) そのタイトルをリンクとして、クリックしたら全文が表示されるようにしたいと思い、以下のようにしてみました。 print "<TD WIDTH=200><A HREF='top_search.cgi'><INPUT TYPE=HIDDEN NAME=GYOU VALUE=$i>$FORM{'TITLE'}</A></TD>\n"; やはり、データの送信はボタン(submit)でないとダメでしょうか? リンクでデータの送信をするのはできませんか? よろしくお願いします。

    • ベストアンサー
    • CGI
  • リストにデータがあれば1回だけ表示…

    更新記録CGIを改造して新商品入荷情報CGIとして利用しています。 お客様からメールでの問い合わせを受けるときに"どの商品についてか"というのを明確にしたいと考えています。 さらにちょっと改造して、もしこのジャンルの商品があった場合は「商品ありますよ」を一番上に表示して下にリストを(商品リストを抜き出して<select>で表示させる方法はわかりました)、無ければ「今は無いですよ」だけを表示させたいです。 少ない知識で作ってみましたが、うまく出来ません。 open (FILE,"$data"); @file = <FILE>; close FILE; foreach $data (@file) { chomp; ($contents, $name) = (split(/<>/, $data)); if ($contents eq $in{'id'} && $name eq "" ){ print "<OPTION value=\"無商品\">現在購入できる商品はありません</OPTION>\n"; }else{ print "<OPTION value=\"未選択\">商品名を選択してください</OPTION>\n"; } } IDはジャンル名でnameは商品名です。この状態だと、各項目が複数出てしまいます。 何かこれ以上に足りない情報があれば指摘してください。すぐに記入します。 よろしくお願いします。

    • 締切済み
    • CGI
  • 取得したデータを分割してDBに収めたい

    環境はXAMPPを使って、phpで作ろうと思ってます。 内容: 取得したデータを分割してDBに収めたいです。 たとえば以下のデータを取得した状態とします。 echo $name; 出力後のイメージ↓ <a class="name" href="www.abc.com/1">なまえ1</a> <a class="name" href="www.abc.com/2">なまえ2</a> <a class="name" href="www.abc.com/3">なまえ3</a> 上記データは全て繋がった状態なので <a class="name" href="www.abc.com/1">なまえ1</a>, <a class="name" href="www.abc.com/2">なまえ2</a>, <a class="name" href="www.abc.com/3">なまえ3</a>, とカンマで区切って、区切った値ごとに DBの指定したテーブルのnameフィールドに格納したいと考えております。 DBに格納したイメージ no name no1 <a class="name" href="www.abc.com/1">なまえ1</a> no2 <a class="name" href="www.abc.com/2">なまえ2</a>, no3 <a class="name" href="www.abc.com/3">なまえ3</a>, このときカンマで区切る方法を教えていただけないでしょうか?

    • ベストアンサー
    • PHP
  • データを送るのと値を渡すのを同時に行いたい

    a hrefでデータを送るのと値を渡すのを同時に行いたいのですがどうすればいいのでしょうか。 下記のa hrefでのデータを送りに<a href="http://www.localhost/hoge.php?name=papa&age=30"> のような固定された値を受け渡したいのですがどのようにすてばいいのでしょうか <form name="form1" action="test" method="post"> <input type="hidden" name="str" value="aaa"> <A HREF="javaScript:form1.submit();">ここの書き方がわかりません</A> <form>

  • <object>タグとダウンロードカウンター

    AU携帯用にムービーを配信して、そのダウンロード数をカウントしたいと思っています。 AUのサイトによるとムービーを配信する時は<object>タグを使わなければいけないとあります。 例えば <object data="http://パス/ファイル名" type="application/x-mpeg" copyright="no" standby="ダウンロード"> <param name="disposition" value="devdl1q" valuetype="data" /> <param name="size" value="ファイルサイズ" valuetype="data" /> <param name="title" value="タイトル" valuetype="data" /> </object> などのように記述するようです。 しかしながら、下記リンクにありますCGIダウンロードカウンターなどは一旦CGIを呼び出し 「?」以降にリンクを張るよう指定されています。 (例:<a href="cgi-bin/dlcounter.cgi?url=http://パス/ファイル名&amp;name=data">ダウンロード</a>) objectとCGIダウンロードカウンターを併用する場合どのように指定すればよろしいのでしょうか? お詳しい方、どうぞご教授願います。 参考URL http://www.akiyan.com/ccdlcounter

    • ベストアンサー
    • CGI
  • select from where

    行き詰ってます!ご教授下さい。 データの一覧から【更新】【削除】編集作業を行いたいのですが、うまくいきません。 ソースを記載しますので、修正点をお教え下さい。 データの一覧はうまくいっております。登録も出来ております。 '##### データ参照 ##### strSQL = "select * from テーブル名" Request.QueryString("ID")にてリンクをかけてその情報を編集したいのですが、値が取得できません。 <a href="test.asp?ID=<%=("データベースオートナンバー")%>">更新</a> 編集側で以下、条件抽出を出すと ID 1 のデータが表示されるのですが、 '##### データ参照 ##### strSQL = "select * From SITE_DATA where 【 ID=1 ここです】" ID【 <%=objRS("ID")%> 】 NAME【 <%=objRS("NAME")%> 】 URL【 <%=objRS("URL")%> 】 私が行いたいのは、データ一覧から更新リンクをクリックすると、 そのデータを抽出し、表示、編集を行いたいと思っています。 データ1を<a href="test.asp?ID=ナンバー...【更新】</a> データ2を<a href="test.asp?ID=ナンバー...【更新】</a> データ3を<a href="test.asp?ID=ナンバー...【更新】</a> エラーなどは出ないのですが、まったく表示されず、まいっています。 参考書などをみているのですが、いまいち理解ができません。 ※初心者ですので、理解が浅すぎる事は分かっています。どうか宜しくお願いします。 説明がうまく伝わればよいですが、、、

専門家に質問してみよう