Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Поиск по маске в sphinx
 
 автор: mihdan   (02.05.2012 в 15:05)   письмо автору
 
 

Мой конфиг:


source FirmsWhatSource : InforosSource
{
    sql_query = \
        SELECT \
            r.id, \
            r.pid, \
            r.name_ru, \
            r.name_en \
        FROM crm_firms_rubrics AS r \
        WHERE r.id >= $start \
        AND r.id <= $end \
        AND r.is_vis = 1 \
        AND r.name_ru <> ''

    sql_query_range = SELECT MIN(id),MAX(id) FROM crm_firms_rubrics
    sql_range_step = 1000
    sql_ranged_throttle = 0
    sql_attr_uint = pid
    sql_field_string = name_ru
}
# Индекс для автокомплита в поле WHAT
index FirmsWhatIndex {
    source            = FirmsWhatSource
    path            = /var/db/sphinxsearch/data/test
    docinfo = extern
    mlock= 0
    morphology = stem_enru

    min_word_len = 3    
    min_infix_len = 0
    #prefix_fields = name_ru
    min_prefix_len = 0 #искать слева
    # Позволим искать со звездочкой
    enable_star = 1
    charset_type = utf-8
    html_strip = 1
}


мой скрипт:


<?php
            $sphinx 
= new SphinxClient();
            
$sphinx->SetServer ('localhost'9312);
            
$sphinx->SetConnectTimeout (1);
            
$sphinx->SetArrayResult (true);
            
$sphinx->SetMatchMode (SPH_MATCH_EXTENDED2);
            
$sphinx->SetSortMode(SPH_SORT_RELEVANCE);

            
$q "@* *{$q}*";

            
$res $sphinx->Query($q'FirmsWhatIndex');

            if (
$res !== false && is_array($res["matches"])) {
                foreach(
$res["matches"] as $docinfo) {                    
                    echo 
$db->getOne("SELECT `name_ru` FROM `crm_firms_rubrics` WHERE `id` = " $docinfo['id'])."\n";
                }
            }
?>


Не находит ничего, либо находит непонятно что.

  Ответить  
 
 автор: mihdan   (10.05.2012 в 18:09)   письмо автору
 
   для: mihdan   (02.05.2012 в 15:05)
 

Могу ли я надеяться на вашу помощь?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования