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

Поиск:

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


I ♥ <script>
****


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

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



Цитата(Irokez @ 8.5.2005, 11:28)
а каким образом ты выводишь данные из базы в alert.htm?

fetch_row

Вот тут кидал мой код:
http://forum.vingrad.ru/index.php?showtopi...ndpost&p=402283
PM MAIL WWW ICQ Skype   Вверх
Irokez
Дата 8.5.2005, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


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

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



если честно, то так и не понял твой код smile
но если ты хочешь получить ссылку на страницу, где выводятся найденные данные, то у тебя должно быть какое либо соответствие между твоими данными в базе и страницами в которых ты их выводишь. это соответствие - либо еще одна таблица либо название страниц в записях данных.
PM   Вверх
Aliance
Дата 8.5.2005, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


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

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



Итак. Я написал неподумав, признаюсь. Сам себя запутал. Бред...
Давайте все заного.

Я не шибко сильно разбираюсь в мускулах, собсна столкнулся на высшем уровне только позавчера smile
Мне нужно организовать поиск по полю из БД. Это, думаю, легко. Но выводится результаты должны ввиде страниц - где вывод данного поля состоялся, т.е. где есть слово поисковое.
Как это сделать?
Для меня (да и Sardar говорит) наиболее перспективным вариантом является MySQL Fulltext-search
PM MAIL WWW ICQ Skype   Вверх
Irokez
Дата 8.5.2005, 18:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


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

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



ну к примеру у тебя есть такая таблица:
+---+-------+
| ID | Text |
+---+-------+
т.е. при заходе на index.php?id=3, у тебя будет выводится текст из этой таблицы с ID=3
теперь когда проводишь поиск, тебе выдаются результаты - ID рядов которые удовлетворяют твоему запросу, теперь ты можешь вывести на страницу результаты поиска с урлами: index.php?id=$ID
PM   Вверх
Aliance
Дата 8.5.2005, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


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

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



Не хочу ?id =/
Ведь на большинстве сайтах поиск нормально функционирует...
Эх, сложно это так =(
PM MAIL WWW ICQ Skype   Вверх
Irokez
Дата 8.5.2005, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


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

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



Цитата(Aliance @ 8.5.2005, 18:58)
Не хочу ?id =/

а как хочешь? smile
PM   Вверх
Aliance
Дата 8.5.2005, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


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

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



простые странички. Сделаем пример на 2ух:

index.php
Код

Поиск:
<INPUT type="text" name="querry" />
<INPUT type="submit" />


array.php
Код

// тут вывод из БД с помощью fetch_row

// слова всякие................
 =ARRAY=
// слова всякие................


Вводим в индексую слово array и болжно вывестись ссылка на вторую, причем независи от е имени (имени страницы).
Учитываем:
регистр не влияет
побокам могут быть другие символы
PM MAIL WWW ICQ Skype   Вверх
Aliance
Дата 22.5.2005, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


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

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



Вот такой код будет работать:
Код

SELECT * FROM `big` WHERE `name` LIKE 'test%' LIMIT 0 , 30 

Но искаться будет только по полю name, а можно ли искать по всем полям (name, qwer, abc...)

И зачем вот это:
LIMIT 0 , 30

Это сообщение отредактировал(а) Aliance - 22.5.2005, 23:39
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 22.5.2005, 23:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(Aliance @ 22.5.2005, 23:31)
Но искаться будет только по полю name, а можно ли искать по всем полям (name, qwer, abc...)

Добавляем AND `somepole` LIKE 'somevalue'...

Цитата(Aliance @ 22.5.2005, 23:31)
LIMIT 0 , 30

первые 30 записей (по сорировке, которй у тебя, кстати, нет), а не все, что есть в таблице
PM ICQ   Вверх
Aliance
Дата 22.5.2005, 23:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


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

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



Так?
Код

SELECT * FROM `big` WHERE `name` AND `somepole` LIKE 'test%'

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


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


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

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



Код
SELECT * FROM `big` WHERE `name` LIKE 'test%' AND `somepole` LIKE 'test%' LIMIT 0,20


Это сообщение отредактировал(а) Mal Hack - 22.5.2005, 23:44
PM ICQ   Вверх
Aliance
Дата 22.5.2005, 23:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


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

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



Mal Hack
ууу, а если у меня 20 таких полей =(

Цитата(Mal @ 23.5.2005, 00:01)
по сорировке, которй у тебя, кстати, нет

а если мне лимит не нужен - она тоже не нужна?
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 22.5.2005, 23:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(Aliance @ 23.5.2005, 00:52)
а если мне лимит не нужен - она тоже не нужна?

Нужна сортировка - делаешь сортирвку. Нужен лимит - делаешь лимит. Вот и все. Они не зависимы друг от друга. Просто если есть сортировка, то лимит будет делать по данным, уже отсортированным.
PM ICQ   Вверх
Aliance
Дата 23.5.2005, 00:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


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

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



Окей.
И все же вернемся к тому, что мне необходимо было сперва: выводить по найденным совпадениям URL где они встречаются. Нельзя ли как-то обойтись без доп. столбца с url?
PM MAIL WWW ICQ Skype   Вверх
PARROT
Дата 9.7.2005, 22:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

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



Пишу поиск, вот код, укажите на ошибки пожалуйста.
Код

function import ($imp){
        $imp=mysql_query("SELECT * FROM import WHERE `mark` LIKE '$poisk%' AND  `model` LIKE '$poisk%' AND `year` LIKE '$poisk%'  AND `title` LIKE '$poisk%'") or die(mysql_error());
         while ($full=mysql_fetch_row($imp)) {
                  print ($full['mark']."<br/>".$full['model']."<br/>".$full['year']."<br/>".$full['title']."<br/>");
                 }

        }
        import($poisk);

Скрипт ничего не выводит, даже ошибки нет.
Не совсем понимаю что писать в LIKE, сейчас там стоит та переменная которая приходит из формы. smile


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


 




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


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

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