IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Веб-программирование (http://www.imho.ws/forumdisplay.php?f=29)
-   -   RiSearch PHP (http://www.imho.ws/showthread.php?t=53019)

Psionic Vision 06.03.2004 19:55

RiSearch PHP
 
Почему Risearch PHP глотает заглавные буквы русского алфавита и не воспринимает их? Как это исправить? С английскими этого не происходит, они просто становятся строчными.
Например, пишу я Картофель Елка а мне говорят ваш запрос "артофель лка"

CEO 07.03.2004 00:25

Neo А на исходник посмотреть можно?

Psionic Vision 07.03.2004 00:49

Естесственно!

http://www.risearch.org/eng/risearch_php/index.html

CEO 07.03.2004 01:35

Neo :
Возможно причина в этой строке, я еще не научился этим пользоваться:
$query = preg_replace("/[^a-zа-я$numbers +!-]/"," ",$query);

Psionic Vision 07.03.2004 02:25

CEO
Наверно... однако с английскими буквами проблем нет

:confused:

Добавлено через 44 минуты:
А я вот нашел, как это исправить.
Найти:

$query = strtolower($query);
$query = preg_replace("/[^a-zа-я$numbers +!-]/"," ",$query);

Заменить на:
// $query = strtolower($query);
$query = preg_replace("/[^a-zA-Zа-яА-Я$numbers +!-]/"," ",$query);

Теперь все работает :)

is_absent 07.03.2004 08:20

Neo
Заменить на:
// $query = strtolower($query);
$query = preg_replace("/[^a-zа-я$numbers +!-]/i"," ",$query);

попробуй еще вот так.. имхо так правильней.

CEO 07.03.2004 14:39

@_is_absent :
Цитата:

$query = preg_replace("/[^a-zа-я$numbers +!-]/i"," ",$query);
Расшифруй, плиз: preg_replace("/[^a-zа-я$numbers +!-]/i"," ",$query); это место, что есть зачем и как оно работает?

Psionic Vision 07.03.2004 17:37

CEO
Ну, это и я бы хотел знать...

Добавлено через 1 минуту:
а что дает /i ?

is_absent 08.03.2004 09:31

Neo, CEO
ключик i -- игнорирование регистра :) то есть по идее буквы "Ш" и "ш" будут одинаковыми :) и "Z" с "z" тоже...
а вообще этот оператор, насколько я понял, должен заменять на пробелы в строке $query все "не буквы, не !, не плюсы, не пробелы, не минусы и не то, что записано в переменной $numbers"...

CEO 09.03.2004 01:03

@_is_absent :Понятно. А зачем эта строка вообще нужна? только увеличивает код помему.

is_absent 09.03.2004 07:04

CEO
Ну вообще это защита поискового запроса. Чтобы там всякую ерунду не писали :). Можно конечно ее закомментировать, но тогда в запрос можно писать практически все что захочешь. Я не смотрел код скрипта, но сильно подозреваю, что поиск там происходит по релевантности (по базе данных по запросу match), так вот там (у этого оператора) есть свой "язык" формирования запросов. Вот, чтобы СУБД не возмущалась на неправильный запрос, этот оператор и нужен :), из запроса убераются "неправильные" символы... вот :)

V0iD 09.03.2004 11:46

http://www.risearch.org/rus/risearch_php/index.html
Цитата:

RiSearch PHP не требует наличия базы данных для хранения индекса.
База не используется...
Цитата:

А зачем эта строка вообще нужна? только увеличивает код помему.
Лишняя проверка никогда не помешает :).

Psionic Vision 09.03.2004 16:06

V0iD
База используется текстовая...

is_absent 09.03.2004 17:19

Neo
посмотрел скрипт :). Можно в некоторых местах немножко прооптимизировать, но в общем он справляется со своей задачей.
а этот оператор нужен для удаления из запроса "ненужных" символов. (в общем-то я оказался прав в своем предположении :) )

SOS 22.07.2004 16:48

Ребят, помогите и мне тоже.
Как сделать так, чтобы скрипт обрабатывал вложения файла в файл (то есть файлы c использованием SSI .shtml, или например директивы PHP require, include...)

Psionic Vision 07.08.2004 05:05

SOS
По-моему, она сама все обрабатывает...

SOS 07.08.2004 17:20

Цитата:

Сообщение от Neo
SOS
По-моему, она сама все обрабатывает...

Нет, если сайт написан на PHP, там есть вкладыши include , то они в результатах поиска работать не будут.
Вот я про что.

is_absent 07.08.2004 22:11

SOS
нужен другой скрипт, так называемый "паук".. который ищет не в локальном документе, а запрашивает документ у веб-сервера. ищет не по физическому файлу на диске, а по тому, что получается после выполнения этого документа на сервере.

Wolfich 16.11.2004 12:10

Цитата:

is_absent:
нужен другой скрипт, так называемый "паук"..
а где такой взять можно - или как называються???


Часовой пояс GMT +4, время: 17:12.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.