ラウンジ(兼FAQ掲示板)

Site_SearchをフレームありのHPで使いたい
過去ログ NO.1076208261
□ ひかる [2004年02月06日11時27分]
こんにちは。
Site_Searchを気に入ったのですが、フレームを使ったHPに設置したいのです。

常に表示されているメニューフレームのところにSite_Searchを設置して、その検索結果をサブフレーム内に表示する事ってできないでしょうか。

よろしくお願いします!!(>_<)ノ
□ ひかる [2004年02月06日12時56分]
要するに、検索結果のページを別フレームに表示させたいと言う事なのですが、、、。

Real_Time(フレームありHPに設置して、HP全体の訪問者数を出したいと思っています)も一緒に使いたいのです。

お願いします。
□ NXer [2004年02月07日00時14分]
はじめまして。NXerです。

〉検索結果のページを別フレームに表示させたい

次のように勝手な解釈をしました。美しき誤解かも。そこは無視して
一方的に書いてみます。間違ったら、笑って誤魔化し、よかったら試
してください。

以下のようなフレームを考えてみました。
============
menuframe。。|、subframe、|
1 subframe 。|。。。。。。|
2 downframe 。|。。。。。。| 
photoリンク 。|。。。。。。|
=====|(photo表示)|
。。。。。。。|。。。。。。|
downframe。。|。。。。。。|
。。。。。。。|。。。。。。|
============
(画像は崩れるかも知れません。文字で追加すると
左に上menuframe下downframe、右半分はsubframeです。)

menuframeにある文字photoにリンクを貼り写真をsubframeに表示
するものとします。

最初に、フレームを設定するファイルでframeのname属性タグを使います。

□その1 name属性の設定---------------------
<FRAMESET cols="50%,50%">
<FRAMESET rows="50%,50%">
  <FRAME name="menuframe" src="menu.htm">
  <FRAME name="downframe" src="down.htm">
</FRAMESET>
<FRAME name="subframe" src="subframe.htm">
<NOFRAMES>
<BODY>
</FRAMESET>
-----------------------------------------
次にphotoにリンクを貼り、結果をtarget属性でsubframeに設定します。

-------------------------------menuframeのhtmlの例
<TITLE>menu frame</TITLE>
</HEAD>
<BODY>
 <P>menu<BR>
  <BR>
  1 subframe<BR>
  2 downframe</P>
 <P><BR>
  <A href="homepage/photos/my dog/dog.htm" target="subframe">       photo
  </A>
 </P>
</BODY>
------------------------------------------------------------
こちらのHP作成ソフトでこのフレームを試してみました。

■ここでこのテストの要点です。
target="subframe"とリンクを読み込む(リンク先のhtmlドキュメント
などを表示する)ウィンドウ(フレーム)をtarget属性で指定しています。

上の例でそちらの検索を考えてます。menuの位置で検索をします。
検索結果をsubframeつまり写真を表示したフレームに表示します。
そのためのスクリプト変更案は以下です。
ただし、これは、考えにすぎません。エラーは出るわ、望む結果はでない
その上、時間のロス、という危険を覚悟でこの先をお読みください。

■--------------------------------------site_search.cgiから引用
88 #検索結果のリンクをクリックしたときのターゲットウィンドウ
(HTMl書式に準拠)
89 $target_w = "_blank";
-------------------------------------
_blankとは名前が付けられていない(blank空白)新しいフレームに内容
を表示します。
そこで、各フレームに名前を付けてtargetフレームを指定します。その後で、
89行目をこう↓変えてみます。

□その2 cgiスクリプトの変更-----
89 $target_w = "subframe";
---------------------------------
これは以下の行で実行される予定です。
■---------------------------------------
293 print "<tr><td rowspan=2 align=right valign=top>$no.</td><td>
    <a href=\"http://$url_header$hfile\"
       target='$target_w'> #○ここで目的のフレーム指定
         $htitle</a>";
print "<tt> update:$hupdate size:$hsize</tt></td></tr>";
print "<tr><td><div class=inf>$hinf<br>";
print "
    <a href=\"http://$url_header$hfile\"
        target='$target_w'> #○ここで目的のフレーム指定
          http://$url_header$hfile</a></div><p></td></tr>\n";
299  }
-------------------------------------
フレームのテストをそちらのHP作成ソフトでまず、確認してください。
framesetやname属性、target属性などにつづりミスがないか、スクリプト
を変更する時注意してください。
変更点の確認
□その1は、ご自身のhtml文書です。□その2は、cgiスクリプトの変更です。
■は、変更点理解のための情報です。
フレーム管理は当方の最も苦手とするところです。まずは、ご検討ください。
p.s. Real_Timeの件は、どなたかご回答のほど、よろしく。
□ ひかる [2004年02月07日18時52分]
こんにちは!返信有難うございました。

次のようなフレームを使ったページを作ってみました。
http://www.bmybox.com/~mashed/test_set.html

フレームの名前は、上:Frame1 下:Frame2 です。
Frame1 に 検索フォームを置き、Frame2 に 検索結果を出したいと思っています。

cgiの
$target_w = "_blank"; を、$target_w = "Frame2";
に変更してアップロードしました。


しかし、同じフレームに結果が出てしまいました、、、。
やはりこういう使い方は無理なんでしょうか、、、(ーー;)

P.S.
real_timeの設置方法は解っておりますので大丈夫です。有難うございます。(^^)
単に、「real_timeを使ってHP全体の訪問者数を出したいのでフレームありのページにしないとだめなんです」という事が言いたかっただけですので、、、。
□ NXer [2004年02月07日19時53分]
こんばんは、NXerです。上記URLにて、検索を試させていただきました。

検索語は、「bbs」としました。Frame1に
----------------------------------------------------------引用
全ての検索キーにマッチするページ数: 63ページ(内1〜10を表示)
1. 情報室 update:2004/01/26,10:46:42 size:55.2kb 以下省略
-----------------------------------------------------------
ここでリンクが貼ってある「情報室」をクリックしました。
結果は、情報室のウェブサイトがFrame2に表示されました。予定どうりでした。

そこで、気が付きました。「検索結果」という用語の意味が当方とは違うのでは
ないかということです。

>Frame1 に 検索フォームを置き、Frame2 に 検索結果を出したいと思っています。

当方の発想で変更していただいた内容です。
--------------------------------------------------------------------
1 Frame1にサイト内サーチバー、検索語入力、検索ヒット結果のサイト一覧
このサイト一覧からリンクをクリックして、
2 Frame2に、その「結果」、を表示する
--------------------------------------------------------------------
このことはテストした結果、私の考えどうりになり、回答はこれにて終結させ
ていただきます、というサクセス・ストーリのはず、、、、、、

しかし、そんなことはもともと出来てます、分っていました、そうではなくて
------------------------------------------
1.1 Frame1にサイト内サーチバー、検索語入力
1.2 Frame2に「検索ヒット結果」のサイト一覧を表示する
2  Frame2に、このサイト一覧からリンクをクリックして、その結果を表示する
--------------------------------------------------------------------
こうしたいのです、ということでしたら、当方の能力を超えています。
すえぽんさん、そのようなバージョン・アップをお願いします、です。

当方で今のままで改善できる提案は、Frame1とFrame2を入れ替えて
下10行程度をFrame2として検索窓に使う、私のいうリンク先を表示する
フレームを上のFrame1にするということでしょうか。これですこしは
結果を見かけ上で画面下に隠してスクロールで処理する、、
このようなウェブ・デザインのセンスしか持ち合わせていませんので、
これにて失礼します。

□ ひかる [2004年02月08日11時44分]
こんにちは!返信ありがとうございます!

どうも説明不足で、勘違いさせてしまったようでホントにすいませんでした。こういう感じのページが希望なんです。
http://www.warau.jp/
(たとえば「ギフト券」で検索してみてください。)

ウチで扱っているページが膨大な数なので、メニューも検索フォームも、全部のページに設置するのは大変なので、それらを一緒にメニューフレームに入れる事ができたらなぁ、と思ったのです、、、。

$target_w = "_blank";
は、「検索結果のリンクをクリックしたときのターゲットウィンドウ」ですものね、、。これをきちんと読まずに設定してました。ホントにすいませんm(_ _)m

検索フォームは代表的なページに直接設置しようと思います。色々提案してくださって有難うございました。


すえぽんさん、このような要望に対応できそうでしたら、バージョンアップのときの改良点に加えてくださると嬉しいです。
一定時間書込が無かったので過去ログに移りました

suepon.com | CGI作成/CGI制作 | JavaScript | ドメイン検索 | バナー自動作成 | Google ダンスツール | 松浦亜弥 | H.P.memo | パソコン | ネイル

Copyright (C) 2002 - 2008 suepon , All rights reserved. Powered by CGI Script Market.