Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск, по БД 
:(
    Опции темы
Aliance
Дата 7.5.2005, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 3
Всего: 137



Как организовать поиск, читая данные из БД по слову введенное в инпут.
Из мыслей - только http://dev.mysql.com/doc/mysql/ru/fulltext-search.html
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 7.5.2005, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Поиск это выборка, тобишь SELECT, а какие ты условия выборки будешь делать (WHERE) это уже отдельный разговор. Можно и =, можно и LIKE, можно и REGEX и т.п.
PM ICQ   Вверх
Illuminaty
Дата 7.5.2005, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


/*Антон Захаров*/
***


Профиль
Группа: Комодератор
Сообщений: 1238
Регистрация: 19.3.2005
Где: Россия, Казань

Репутация: 1
Всего: 56



Для начала считать ввденное слово из $_GET или $_POST, потом проверить это слово на корректность (если введено 1324425, а искать надо по фамилии, например), затем составит SQL запрос при помощи ссылки, что ты указал и передать его (запрос) базе данных
PM MAIL ICQ   Вверх
Aliance
Дата 7.5.2005, 21:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 3
Всего: 137



Вводить можно любые латинские и русские слова.
Лучше передавать Постом, думаю(?)

Цитата(Mal @ 7.5.2005, 21:47)
=, можно и LIKE, можно и REGEX и т.п.

их отличия "на пальцах" объяснишь?
Мне нужно искать не строго слово ( \bSEARCH\b ), а часть в слове/слово, т.е. вводя aaa юзер найдет и все страницы, где встречается aaa но и bbbaaabbb smile

Запрос чтот-то вроде такого:
Код

$search_string = mysql_query(SELECT * WHERE text={$_POST['querysearch']});

PM MAIL WWW ICQ Skype   Вверх
Illuminaty
Дата 7.5.2005, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


/*Антон Захаров*/
***


Профиль
Группа: Комодератор
Сообщений: 1238
Регистрация: 19.3.2005
Где: Россия, Казань

Репутация: 1
Всего: 56



PM MAIL ICQ   Вверх
Mal Hack
Дата 7.5.2005, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Aliance
почитай в мане про операторы сравнения (логические).
Тебе нужен LIKE '%aaa%'

PM ICQ   Вверх
Aliance
Дата 7.5.2005, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 3
Всего: 137



Не люблю я англ. маны читать smile
Что понимаю - то не спрашиваю :-)

А...как выводить страницы, где есть такие совпадения?
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 7.5.2005, 21:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Цитата(Aliance @ 7.5.2005, 22:40)
А...как выводить страницы, где есть такие совпадения?

Средствами PHP.. mysql_fetch_array

Цитата(Aliance @ 7.5.2005, 22:40)
Не люблю я англ. маны читать smile

там и русский есть, к ьтму же где-то на форуме книжка была...
PM ICQ   Вверх
Aliance
Дата 7.5.2005, 21:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 3
Всего: 137



Цитата(Mal @ 7.5.2005, 22:43)
Средствами PHP.. mysql_fetch_array

А алгоритм расскажи. У меня нет поля с url каждого поискогого слова... не представляю себе пока...
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 7.5.2005, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Ты выполнил запрос.
далее пишешь
while( $row = mysql_fetch_assoc( $result ) )
{ print $row['имя поля'] . "<br>"; }
$row - массив полей одной записи.
PM ICQ   Вверх
Aliance
Дата 7.5.2005, 22:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 3
Всего: 137



Так мне не имя поля нужно выдавать - мне нужно URL
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 7.5.2005, 22:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Цитата(Aliance @ 7.5.2005, 23:41)
Так мне не имя поля нужно выдавать - мне нужно URL

URL час ть которого берется из базы? Ну дык сгенерируй строку в print L)
PM ICQ   Вверх
Aliance
Дата 8.5.2005, 00:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 3
Всего: 137



Нет, в том-то и дело - URL нет в БД.
Есть страница alert.htm и index.php.
На индексе в поиск ввожу alert и выводиЦЦа ссылка на alert.htm, т.к. в БД есть такая запись и она выводЦЦа на странице alert.htm
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 8.5.2005, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Сорри, не понял.. В популярном виде объясни smile
PM ICQ   Вверх
Irokez
Дата 8.5.2005, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 3
Всего: 53



Цитата(Aliance @ 8.5.2005, 00:06)
На индексе в поиск ввожу alert и выводиЦЦа ссылка на alert.htm, т.к. в БД есть такая запись и она выводЦЦа на странице alert.htm

а каким образом ты выводишь данные из базы в alert.htm?
PM   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0768 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.