Проблема запроса сфинкса Mysql

0
source logs
{
    type            = mysql
    sql_host        = localhost
    sql_user        = root
    sql_pass        =
    sql_db            = bot
    sql_port        = 3306
    sql_query_pre    = SET NAMES utf8
    sql_query        = SELECT * FROM logs

    sql_attr_uint   = host

    sql_query_info    = SELECT * FROM logs WHERE id=$id
}

index logs
{
    source          = logs
    path            = D:\Webserver/Sphinx/index/logs
    morphology      = stem_ru, stem_en
    min_word_len    = 1
    charset_type    = utf-8
}

searchd
{
    listen      = 9312
    log         = D:\Webserver/Sphinx/log/searchd.log
    query_log   = D:\Webserver/Sphinx/log/query.log
    pid_file    = D:\Webserver/Sphinx/log/searchd.pid
}

Моя база данных:

ID      |     HOST      |      POST     |       URL
1     |       yahoo.com    |    *js3s7Hs56     |   http://yahoo.com     
2     |       google.com    |    7sf6jsg73     |   http://google.com/?asfaa=23

PHP-код Sphinx (поиск)

<?php
    include('sphinxapi.php');

    $cl = new SphinxClient();
    $cl->SetServer( "localhost", 9312 );

    $cl->SetMatchMode( SPH_MATCH_ANY  );
    $result = $cl->Query("google");


    if ( $result === false )
    { 
          echo "Query failed: " . $cl->GetLastError() . ".\n";
    }
    else
    {
        print_r($result);
    }

Этот код возвращается:

2

Как теперь я использую sphinx для вывода всех данных id 2??

Извините за плохой английский

Теги:
sphinx

1 ответ

2
Лучший ответ

Теперь вы можете взять этот идентификатор, возвращаемый в $result, и запросить у него свою базу данных.

Что-то вроде:

<?php
    foreach ($result['IDs'] as $ID) {
        $r = mysqli_query('SELECT * FROM `table` WHERE `ID` = ' . $ID);
        # Handle $r
    }

    # Or, more efficiently (depending on how many results you have):

    $IDs = implode(',',array_map('intval',$result['IDs']));
    $r = mysqli_query('SELECT * FROM `table` WHERE `ID` IN (' . $IDs . ')');
    # Handle $r
  • 0
    Спасибо .. я думал у сфинкса это его функция

Ещё вопросы

Сообщество Overcoder
Наверх
Меню