はじめまして。sakotecといいます。ほぼASP初心者です。宜しくお願い致します。
ある社内イントラネットで、アクセスのデータベースをASPを使って、ユーザが指定した条件で検索し、結果を表示するというとてもオーソドックスなシステムを作ってます。
そこで、ユーザが指定したキーワードをSQL文のLIKEを用いて検索しているのですが、検索結果の見栄えをよくしたく、そのキーワードを検索結果内でハイライト表示をしたいと思ってます。処理速度も速く、簡単な方法はないでしょうか?VBSでなくてもいいです。
イメージ的にはGoogleのキャッシュのページ見たいな感時です。
どうかよろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

検索結果の文字列に対し、検索した値をFONTタグ等で


囲んだ文字列に変換するとできそうですが。

例えば、、、
[TgtValue:検索値、RetValue:取得値、DspValue:表示値]

DspValue = Replace(RetValue,TgtValue,"<FONT COLOR='RED'>" & TgtValue & "</FONT>")

取得値にタグを壊す文字(「>」等)が入っている場合は考慮されてませんが。。。
ちなみに、動作確認はしていませんので。。。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QASP DB検索結果の件数を事前表示

ASP(ASP.NETではないです)でデータベースに接続し、検索する処理で質問させてください。

WEB画面で検索条件を入力し検索した結果、件数が多い場合は結果表示前にメッセージを出し、
そのまま表示するか、検索条件を見直すために検索条件の入力画面に戻すという仕組みを
作りたいと思っています。

SQLの生成やデータベースへの問い合わせはサーバー側の処理になるため、件数がわかっても
クライアント側にメッセージボックスを出せません。

一度クライアントに件数を表示する画面を出し、OKボタンをクリックしたら再度同じSQLを
走らせるというくらいしか思いつかないのですが、何か他に良い方法はありますでしょうか?

Aベストアンサー

こんにちは。

>SQLの生成やデータベースへの問い合わせはサーバー側の処理になるため、件数がわかっても
>クライアント側にメッセージボックスを出せません。
>一度クライアントに件数を表示する画面を出し、OKボタンをクリックしたら再度同じSQLを
>走らせるというくらいしか思いつかないのですが、何か他に良い方法はありますでしょうか?

今風に作るのであれば件数のみを取得するSQLを実行してJSONなりで件数を返すサーバ側の処理を実行します。
例えばですが
count.aspに非同期で通信し、指定以上の件数が返ってきた場合はalertなりでメッセージを表示してあげます。
指定未満の件数だった場合はalertは表示せず、検索結果を表示するresult.aspへ検索条件を送信します。

同じSQLを発行して件数を取るのは処理として無駄になりますので
select count(*) as CNT from TABLE
とかでカウントを取ったほうが良いと思います。

ajaxを使わなくとも、result.phpにてカウントを取って、指定件数以上であれば検索結果を表示せず、
入力画面へ何かフラグ等を渡しつつもどしてあげれば、その条件にてalertの表示等を行えば良いと思います。

こんにちは。

>SQLの生成やデータベースへの問い合わせはサーバー側の処理になるため、件数がわかっても
>クライアント側にメッセージボックスを出せません。
>一度クライアントに件数を表示する画面を出し、OKボタンをクリックしたら再度同じSQLを
>走らせるというくらいしか思いつかないのですが、何か他に良い方法はありますでしょうか?

今風に作るのであれば件数のみを取得するSQLを実行してJSONなりで件数を返すサーバ側の処理を実行します。
例えばですが
count.aspに非同期で通信し、指定以上の件数が返...続きを読む

QASP.NETで検索結果の上位50位を表示するには?

ASP.NETで開発を初めて2,3日目です。
  
  検索条件を入力して
  結果を表示させると言う事を
  やろうとしてます。

  初期画面(検索条件の入力)
↓ (パラメタ渡し)
  検索結果

検索条件を入れないと、全件表示になるので
  表示が遅くなる、固まるなどの恐れがあるので
  あらかじめ検索結果の件数を取得して
  50件以上なら最初の50件だけ表示して
  後はページングを言う事をやろうと思ってます。

  どうゆう記述をすれば出来るでしょうか?

現在はSQL文の結果を全件表示になってます。

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load

Dim MyConnString As String = "Data Source=Oracle_server;user ID=スキーマ;PASSWORD=パスワード;"

Dim cn As New OracleConnection(MyConnString)
cn.Open()

DIM SQL文

SQL文 ="select * from 対象TABLE WHERE 項目名 = '" & 検索条件
& "' order by " & 検索条件

Dim cmd As New OracleCommand(SQL文, cn)

Dim DR As OracleDataReader = cmd.ExecuteReader()

DataGrid1.DataSource = DR
DataGrid1.DataBind()

End Sub 

ASP.NETで開発を初めて2,3日目です。
  
  検索条件を入力して
  結果を表示させると言う事を
  やろうとしてます。

  初期画面(検索条件の入力)
↓ (パラメタ渡し)
  検索結果

検索条件を入れないと、全件表示になるので
  表示が遅くなる、固まるなどの恐れがあるので
  あらかじめ検索結果の件数を取得して
  50件以上なら最初の50件だけ表示して
  後はページングを言う事をやろうと思ってます。

  どうゆう記述をすれば出来るでしょうか?

現在は...続きを読む

Aベストアンサー

DataGridでページングするというのでいいでしょうか?
Microsoft ASP.NET クイック スタート チュートリアル
にサンプルがありますので一度ご覧ください。

参考URL:http://ja.gotdotnet.com/quickstart/aspplus/

QASPとASP.NETとASP.NET2.0の違い

Web開発初心者です。

帳票をPDF表示するWebアプリケーションを開発することになり、
言語はASPを使用することになりました。

そこで
ASP
ASP.NET
ASP.NET2.0
の違いをご存知の方がいらっしゃいましたら教えていただけますでしょうか。
それぞれIIS以外に必要な実行環境、ツール等も教えていただけると助かります。

不明瞭な箇所がありましたら説明させていただきます。
すいませんがよろしくお願いします。

Aベストアンサー

ASP用のツールは、多分、無いですね・・・
#メモ帳でASPファイルを作成してサーバにコピーとか。

ASP.NET用の開発ツールは、Microsft社製の「VisualStudio」シリーズがあり、
ASP.NET(1.1)は、「VislaStudio 2003」で、
ASP.NET2.0は、「VislaStudio 2005」で開発できます。


「Visual Web Developer 2005 Express Edition 」は、
「Visual Studio 2005」のEditionの1つで、有料のパッケージ版(入門者つき)と無料のダウンロード版があります。
機能的には同じで、無料版だからといって、商用利用の制限等はありません。

(http://www.microsoft.com/japan/msdn/vstudio/express/faq/default.aspx)

「Express Edition を商用目的で使用することはできますか。」

また、「ASP.NET1.1用」の無料の開発ツールとして、3rdパーティ製ですが、
「Web Matrix 」と言うのがあります。

「ASP.NET Web Matrix Project 日本語版」
(http://www.microsoft.com/japan/msdn/asp.net/webmatrix/)

ASP用のツールは、多分、無いですね・・・
#メモ帳でASPファイルを作成してサーバにコピーとか。

ASP.NET用の開発ツールは、Microsft社製の「VisualStudio」シリーズがあり、
ASP.NET(1.1)は、「VislaStudio 2003」で、
ASP.NET2.0は、「VislaStudio 2005」で開発できます。


「Visual Web Developer 2005 Express Edition 」は、
「Visual Studio 2005」のEditionの1つで、有料のパッケージ版(入門者つき)と無料のダウンロード版があります。
機能的には同じで、無料版だからといって、商用利用...続きを読む

QASPでユーザのグループ名取得

ASP.NETではない(レガシー)ASPで、ログインユーザのグループ名を取得したいと考えています。
ユーザの管理は、webサーバのローカルユーザで管理しており、
ユーザ名は「Request.ServerVariables("LOGON_USER")」で取得することができましたが、
グループ名を取得する方法がわかりませんでした。
ServerVariablesにはグループ名を管理するパラメータは無さそうなのですが、取得することはできるのでしょうか?
まったく異なった方法でも良いので、ご存知の方がいらっしゃいましたら、ご教授願います。

Aベストアンサー

ASP で実行できるか試してません。

Dim domainName
Dim userName

domainName = "hoge"
userName = "taro_yamada"

Dim c
Set c = GetObject("WinNT://" & domainName & "/" & userName)

Dim g
For Each g In c.Groups
  Response.Write g.Name & "<br/>"
Next

Qイントラネットで機能する検索エンジンを作りたい

ASPを使ったプログラミングでイントラネットで機能する全文検索エンジンを作りたいと思っています。
検索エンジンの機能としては、イントラネット内にあるコンテンツ の表示は
もちろんのこと、
Word,Excel,PDF等ファイル内の指定した文言が存在すると、
リストアップされ、リストアップされたタイトル部分をクリックすると該当文書をブラウザもしくはアプリケーションを起動して表示するといったものです。

良いプログラムソースを公開しているコンテンツがありましたら、教えていただきたいです。

どうぞよろしくお願いします。

Aベストアンサー

ASPとは無関係ですが、namazuで決まりですね。
フリーで使えるし、高速、高機能。
ノウハウを蓄積すれば、インターネットのwwwサーバー
(Linux + Apache)にも知識が流用できますし。


おすすめ情報