• 締切済み

DBとHTMLファイルを検索したい

PHP+MYSQLででDBの検索機能を作成しました。 現在問題なく動くのですが、DBだけでなくHTMLファイルに書かれた文字列の検索も一緒にできるように改造したいのです。 例えば検索条件1が山田、検索条件2が太郎として、 テーブルに[山田]、HTMLファイルに[太郎]があるものを検索結果としてヒットさせたいです。 テーブルのデータとHTMLファイルを結ぶ条件としてテーブルにID項目があり、例えばIDが1234だったら1234.htmlというファイルが必ず1つだけ存在します。 データの数は現在30程度ですが、今後増え続けます。 HTMLファイルは大体20kbほどあります。 ヒットしたデータのIDと同じ名前のHTMLファイルを1つ1つstrrposを使って調べるとなるとやはり処理は重くなりますか? ちょっと説明がわかりにくいかもしれませんが、何か良い方法はないでしょうか。 アドバイスお願いします。

  • kamay
  • お礼率73% (361/491)
  • PHP
  • 回答数2
  • ありがとう数2

みんなの回答

回答No.2

補足をお願いします。 ・検索条件1は複数のIDを持っていて、そのIDリストの中から指定したIDに関連付けられたHTMLファイルに対して、検索条件2の文字列でHTMLファイル内を検索していくという事ですか? ・HTMLファイルは定型フォーマットに置き換えられる? 上記のような状況なら、HTMLのテンプレートを用意して、 DBに 条件1テーブル:[FIND1_TEXT][HTML_ID] 条件2テーブル:[FIND2_TEXT] HTMLテーブル:[HTML_ID][CONTENT1][CONTENT2] といったテーブルをつくり該当HTMLの内容に対して検索をかけ、 マッチした[CONTENT]をテンプレートに差込む事はできませんか。 まあ、検索結果はHTMLファイル名ではなくHTML_IDになりますが・・・。

  • tukai
  • ベストアンサー率14% (2/14)
回答No.1

ちなみに、HTML=ソースそのもの HTMLファイル=HTMLが入るはずのファイルとします それは難しいですが、HTMLファイルを検索したいなら、HTMLのソースそのものを一つのレコードとして、HTMLを表示する方法は、ページが開かれた時に、SELECT文かなんかで、目的のHTMLを検索して検索結果を本体のHTMLファイル(開かれたページ)に書き込むようにしたら実現しそうだと思うのですが。。 (実際試していないし、負担も大きそうだが) ちなみにわざわざ、HTMLをレコードとする理由は、やはり検索できる様にしたいからですね。 とりあいず、検索結果にリンクする方法は、本体のファイルにリンクすればいいのです まぁ解答になっていませんがよければ試してみてください

kamay
質問者

お礼

ありがとうございます。 HTMLファイルは既に出来ているものですので、 DBの方に中身を移行する事はちょっと無理そうです…

関連するQ&A

  • ファイル検索で

    spotlightだと思うんですが(OSはLeopardです) 「太郎山田」「次郎山田」 というファイルが有りまして 「山田」で検索すると何もヒットしません 「太郎山田」で検索すると 当然ですが 「太郎山田」がヒットします 「山田」で検索して両方ヒットさせるためにはどうすれば良いでしょう? 似たようなものでちゃんとヒットするものも有り 違いが理解できません よろしくお願いします

    • 締切済み
    • Mac
  • DBをまたいで更新

    現在、testDB1とtestDB2というDBが存在します。 それで、testDB1のtable.idとtestDB2のtable2.idを SELECT文で比較して、同じidの場合はtestDB2のtable2.dataに 1という値を格納したいと思っています。 それで、DBをまたいで更新するときの記述が分からず ネットで検索したのですが、うまくヒットしませんでした。 そもそもDBをまたいで問い合わせや更新等はできないのでしょうか? できない場合、代替の方法があったら教えて頂けますでしょうか。 よろしくお願い致します。

  • PHPでDBからデータを抽出してHTMLで表示する

    クライアント上で表示されているHTMLのテキストボックスに入力された文字列をホストに送信し、送信した文字列をSQLの抽出条件に設定してDB(MySQL)に登録しているデータ一覧をPHPで取得後、取得したデータ一覧をクライアントのHTMLのTABLEに一覧で表示したいのですが、どのようにPHPとHTMLをプログラムすればよいでしょうか? イメージ MysSQL テーブル カラム1|カラム2|カラム3| AAAAA|BBBBB|CCCCC| BBBBB|BBBBB|CCCCC| DDDDD|BBBBB|CCCCC| HTML テキストボックス カラム1「AAAA」 検索実行↓ HTML テーブル カラム1|カラム2|カラム3| AAAAA|BBBBB|CCCCC| AAAAA|BBBBB|CCCCC| 素人染みた質問で申し訳ございませんが、ご存知の方がいらっしゃいましたら終えてください。 以上

    • ベストアンサー
    • HTML
  • 2つのデータを結合して検索

    MySqlを使用しています。 ------------------ | 苗字 | 名前 | ------------------ | 山田 | 太郎 | | 山田 | 次郎 | | 山田 | 三郎 | ------------------ 上記のようなデータベースを作った場合に 氏名で検索したいのですがどうしたらよいでしょうか? LIKEを使った場合、山だけ、郎だけでは引っかかるのですが 山田太郎を検索されると引っかかりません。 データの結合したものを検索対象にすることはできるでしょうか? よろしくお願いします。

  • 【質問】DBを介した検索 他2つ

    現在,大学での演習でコーディングを担当しています. HTMLで作った画面にJavaScriptを用いて機能を作っているのですが… その機能の中に,DBを介した検索機能があります. (DBはMysqlを用いて作成しました.) 他掲示板で質問したところJavaScriptとMysqlのDBは繋がらないとの 指摘を受けたのですが,ODBCというツールを使うことで繋げることが 出来き,とりあえず画面上にDBの内容を表示することは出来ました. (1)しかし,DBと繋ぐことが出来るこの段階でもScriptでDBを介した検索が出来るかが全く分かりません. それと,こちらは一緒に作業をしている友人の質問なのですが, (2)現在htmlを使用し登録画面から確認画面へデータを反映させるようなプログラミングをJavaScriptを用いて作成しています. 登録するデータをODBCを経由しSQL上(workspace)に一度仮保存し,そこから確認画面へとデータを反映させようと考えています. しかし,データは新規のものになるのでデータベースには存在していません.新規のデータはどのような表記の仕方をしていいのか困っています. またプログラミングの全体像があまり想像できていません. 何か参考になるサイトやサンプル文等がございましたらお聞かせください. 当方まだ初心者のため,まだ根本的な部分が理解できてないかもしれないのですが… 理解できる方がいましたらご指摘のほどをよろしくお願いします.

  • PHPでDBからデータを抽出してHTMLで表示

    こんにちは。 PHP初心者のものです。 クライアント上で表示されているHTMLのテキストボックスに入力された文字列をホストに送信し、送信した文字列をSQLの抽出条件に設定してDB(MySQL)に登録しているデータ一覧をPHPで取得後、取得したデータ一覧をクライアントのHTMLのTABLEに一覧で表示したいのですが、どのようにPHPとHTMLをプログラムすればよいでしょうか? イメージ MysSQL テーブル カラム1|カラム2|カラム3| AAAAA|BBBBB|CCCCC| BBBBB|BBBBB|CCCCC| DDDDD|BBBBB|CCCCC| HTML テキストボックス カラム1「AAAA」 検索実行↓ HTML テーブル カラム1|カラム2|カラム3| AAAAA|BBBBB|CCCCC| AAAAA|BBBBB|CCCCC| 素人染みた質問で申し訳ございませんが、ご存知の方がいらっしゃいましたら終えてください。 以上

    • 締切済み
    • PHP
  • 条件付検索によるファイル抽出について

    さっそくですが、 あるフォルダにの中に、いろいろなファイルがあるとします。 たとえば、 [山田太郎 IR]xxx.doc [山田太郎 IR]yyy.doc [山田花子 IR]xxx.doc [山田花子 IR]yyy.doc などファイルがあるとします。 ここで、検索で山田太郎君のファイルで、IRのファイルが欲しいばあい、すなわち"山田太郎"と"IR"というキード-ワがあるものだけ抽出したいんです。 どのように検索すればいいでしょうか? 窓についている検索ではand検索できませんよね? よろしくお願いします!

  • DBからの検索とhtml上での検索、どちらがよい?

    現在と趣味でホームページを制作しようとしているのですが、 データの取得速度に関して質問があります。 今、実現したい機能は、  "ホームページ上に表示されている複数の画像の内、検索条件に該当する画像だけを表示させる" といったものなのですが、 これを実現するにあたって、  (1)imageの属性に各イメージファイルにタグのようなものをつけて、JavaScriptで検索する  (2)DBに各イメージファイルの名称と属性(タグ)のぞ情報を持っていて、そこから検索する といったことを考えています。 処理速度のみを考えた場合、どちらのほうが良いのでしょうか? お時間ありましたら、教えていただけると幸いです。

  • 全角、半角のあいまい検索について

    Mysqlの検索で、全角、半角区別しないでヒットするようにしたいのですが、どなたがご存知ないでしょうか? 例えば、データベースに「ヤマダ」と「ヤマダ」があった場合で、検索文字を「ヤマダ」と入力した場合、「ヤマダ」と「ヤマダ」のどちらもヒットさせたいのです。 現在ののころ「ヤマダ」にしかヒットしません。 どなたか方法をご存知の方よろしくお願いします。

  • 検索について教えて頂きたいです。

    私の使っている携帯はauなんですがWeb検索をする時に仮に個人名で「山田太郎」と入れると山田太郎に関する事が沢山出てきますがこのようにヒットさせるにはどうするのでしょうか?説明がヘタでわかりにくいと思いますが私がブログで友達の名前やあだ名(山田)を書いたとして、全然知らない方が山田と検索すると私の書いたブログがヒットするようにしたいのですがどのようにすれば出来ますか?? 携帯で簡単hp作成と言うサイトで試しに日記を書いてみたんですが、グーグルで検索した所、私の日記は出て来ませんでした。検索でヒットさせるには携帯からブログやhpを作成しても無理でしょうか?もし携帯から作成して可能であればやり方を教えて頂きたいです。私のやりたいのはヤフーやグーグル等どのサイトで検索してもヒットさせるようにしたいのですが…。