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

Форум MySQL

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

 

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

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

тема: Проблемы в Поисковом запросе
 
 автор: Стажер   (22.08.2010 в 12:34)   письмо автору
 
 

Здравствуйте! Проблемы в поисковом запросе, В БД есть название страниц и в названиех страниц есть одиноковые слова. Если я пешу это слово поиск сразу выводить :К сожелению ничего не найдено! Кому не лень посмотрите в код и подскажите в чем проблема. Пожалуйста

 
<form action="view_search.php" method="post" name="form_s">
  <input name="submit_s" type="submit" value="Search" class="search">
             <input name="search" type="text" class="input">                
             </form>


Обработчик:


if (isset($_POST['submit_s']))
{
$submit_s =  $_POST['submit_s'];
}

if (isset($_POST['search']))
{
$search =  $_POST['search'];
}

if (isset($submit_s))
{

                  
                  if (empty($search) or strlen($search) < 4)
                  {
                  exit ("<p>Вы не ввели поисковой запрос!</p>");
                  }
                 
                  $search = trim($search); 
                  $search = stripslashes($search); 
                  $search = htmlspecialchars($search); 


}



                          
                          
                          $result_search = mysql_query ("SELECT * FROM pages WHERE MATCH(name_en) AGAINST ('$search')",$db);
                          
                          if (!$result_search)
                          {
                          echo "<p>Запрос по выборки не прошёл!</p>";
                          exit (mysql_error()); 
                          }
                          
                          if (mysql_num_rows($result_search) > 0)
                          {
                                      $myrow_search = mysql_fetch_array ($result_search);
                                      
                                      do
                                      {
                                      echo $myrow_search['name_en'];
                                      }
                                      while ($myrow_search = mysql_fetch_array ($result_search));
                                      
                          }
                          else
                          {
                          echo "<p>К сожелению ничего не найдено!</p>";
                          }
                          
                          
                        

  Ответить  
 
 автор: nikita2206   (22.08.2010 в 12:47)   письмо автору
 
   для: Стажер   (22.08.2010 в 12:34)
 

Ты для поиска используешь Match, почитай в интернетах про него. У него таков механизм работы, что если искомое слово встречается то-ли во всех записях, то-ли в каком-то большом их проценте, то результат поиска оказывается нулевым.

  Ответить  
 
 автор: Стажер   (22.08.2010 в 12:52)   письмо автору
 
   для: nikita2206   (22.08.2010 в 12:47)
 

Я кроме MATCH ничего не знаю я Стажер, а что изпользовать откуда я могу взять код подскажите плз

  Ответить  
 
 автор: Стажер   (22.08.2010 в 13:22)   письмо автору
 
   для: Стажер   (22.08.2010 в 12:52)
 

А все вот в инете нашел IN BOOLEAN MODE спасибо всем!




 $result_search = mysql_query ("SELECT * FROM pages WHERE MATCH(name_en,meta_d_en) AGAINST ('$search' IN BOOLEAN 
MODE) ",$db);

  Ответить  
 
 автор: Красная_шляпа   (22.08.2010 в 14:31)   письмо автору
 
   для: Стажер   (22.08.2010 в 13:22)
 

В таких запросах исп. LIKE, ну ты же стажер

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

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