Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 10.12.2010
Сообщений: 59

Поиск по сайту

26.12.2010, 11:09. Показов 2097. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Проблема в том, что при введение любого слова в поиск, мне выводит каждый раз (хотя слово на сайте есть такое):

Информация по запросу не может быть извлечена в таблице нет записей.
код view_search.php


<?php
include ("blocks/bd.php"); /*Соединяемся с базой*/



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>Запрос не введён, либо он менее 4-ёх символов.</p>");
}


$search = trim($search);
$search = stripslashes($search);
$search = htmlspecialchars($search);

}
else
{
exit("<p>Вы обратились к файлу без необходимый параметров.</p>");


}



?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<style type="text/css">
<!--
.стиль2 {
font-family: "Times New Roman", Times, serif;
font-style: italic;
}
.стиль3 {
font-size: 16px;
font-weight: bold;
font-style: italic;
}
.стиль4 {font-size: 12px; font-weight: bold; font-style: italic; }
-->
</style>
<head>
<meta name="description" content="<?php echo $myrow['meta_d']; ?>" />
<meta name="keywords" content="<?php echo $myrow['meta_k']; ?>" />
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title><?php echo "Заметки по запросу - $search"; ?></title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="700" align="center" cellpadding="0" cellspacing="0" class="main_border">
<!--Блок с шапкой сайта-->
<? include ("blocks/header.php"); ?>
<tr>
<!--Блок меню сайта-->
<? include ("blocks/menu.php"); ?>
<td width="554" valign="top" bgcolor="#FFFFFF">


<?php



$result = mysql_query ("SELECT id,title,description, view, author,date,text FROM recipes WHERE MATCH(text) AGAINST('$search')",$db);

if (!$result)
{
echo "<p>Запрос на выборку данных из базы не прошел. Напишите об этом вдминистратору legendarno@bk.ru .
<br>
<br>
<strong>Код ошибки : </strong></p>";



exit(mysql_error());
}
if (mysql_num_rows($result) > 0)

{

$myrow = mysql_fetch_array ($result);


do
{

printf (" <table align='center' cellpadding='0' cellspacing='0' class='recipes'>

<tr>
<td class='recipes_title'><p class='recipes_name'><a href='recipes_template.php?=id=%s'>%s</a></p>
<p class='recipes_adds'>Дата добавления: %s</p>
<p class='recipes_adds'>Автор: %s</p>
</td>
</tr>


<tr>
<td>%s</td>
</tr>


</table><br><br>", $myrow["id"], $myrow["title"], $myrow["date"], $myrow["author"], $myrow["description"]);

}
while ($myrow = mysql_fetch_array ($result));

}
else
{
echo "<p> Информация по запросу не может быть извлечена в таблице нет записей. </p>";
exit();
}

?>



</td>
</tr>
<!--Ниний блок сайта-->
<? include("blocks/down.php"); ?>
</table>
</body>
</html>


Заметки в базе есть , база называеться recipes. индекс для текста ставил.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.12.2010, 11:09
Ответы с готовыми решениями:

Поиск по сайту: не могу разобраться, как делать поиск по нескольким полям
поиск по одному полу осуществляется вот так: SELECT * from tablepart WHERE `marka` LIKE '%&quot; . $search . &quot;%' or `model` LIKE '%&quot;...

Поиск по сайту
&lt;form action=&quot;search.php&quot; method=&quot;POST&quot;&gt; &lt;input name=&quot;search&quot; type=&quot;text&quot; class=&quot;search_input&quot; onfocus='if (this.value==&quot;поиск по...

Поиск по сайту
Здрасте всем! Сделал сайт, сделал на нем форму поиска...А как сделать так, чтобы эта форма поиска работала(но только по самому...

6
 Аватар для __PION__
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
26.12.2010, 12:08
здесь ты приравниваешь переменной значения из БД
Цитата Сообщение от Legendarno Посмотреть сообщение
$myrow = mysql_fetch_array ($result);
теперь в цикле ты тоже самое записываешь
Цитата Сообщение от Legendarno Посмотреть сообщение
while ($myrow = mysql_fetch_array ($result));
не лучше ли в цикле записать так:
PHP
1
while ($myrow)
если не хочешь так, не надо отдельно приравнивать к $myrow значения из БД (т.е., вместо этого $myrow = mysql_fetch_array ($result) сразу цикл - while ($myrow = mysql_fetch_array ($result))....)

цикл я бы сделал наоборот - while в начале
0
0 / 0 / 0
Регистрация: 10.12.2010
Сообщений: 59
26.12.2010, 16:49  [ТС]
дык , а в чём у меня ошибка собственно, не понимаю
0
 Аватар для __PION__
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
26.12.2010, 19:22
Цитата Сообщение от Legendarno Посмотреть сообщение
дык , а в чём у меня ошибка собственно, не понимаю
как я понимаю, то что 2 раза пишешь
Цитата Сообщение от Love_and_Peace Посмотреть сообщение
$myrow = mysql_fetch_array ($result)
цикл попробуй наоборот повернуть
проблема то решилась?
0
0 / 0 / 0
Регистрация: 10.12.2010
Сообщений: 59
30.12.2010, 07:36  [ТС]
делая просто
PHP
1
while ($myrow)
ничего не получаеться опять пишет что нет записей в таблице
0
 Аватар для Sulik78
450 / 203 / 27
Регистрация: 23.12.2010
Сообщений: 645
30.12.2010, 10:21
Legendarno, измените запрос
SQL
1
$result = mysql_query ("SELECT * FROM recipes WHERE text LIKE '%$search%'");
0
0 / 0 / 0
Регистрация: 10.12.2010
Сообщений: 59
02.01.2011, 21:32  [ТС]
Цитата Сообщение от Sulik78 Посмотреть сообщение
Legendarno, измените запрос
SQL
1
$result = mysql_query ("SELECT * FROM recipes WHERE text LIKE '%$search%'");
стало искать и выдавать до много моих записей (в которой есть слово то что я задал в поиске)
и как бы всё время ищет, трафик в метрах уже считался ) и всё не отстанавливался , сделал вот так
но вылезла ошибка
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
<?php 
include ("blocks/bd.php"); /*Соединяемся с базой*/
 
 
 
if (isset($_POST['submit_s']))
{
$submit_s = $_POST['submit_s'];
echo "<p><strong>Значение переменной submit_s: </strong>".$text_zaprosa."</p>"; 
}
 
 
if (isset($_POST['search']))
{
$search = $_POST['search'];
}
 
if (isset($submit_s))
{
 
 
 
if (empty($search) or strlen($search) < 4)
{
exit("<p>Запрос не введён, либо он менее 4-ёх символов.</p>");
}
 
 
$search = trim($search);
$search = stripslashes($search);
$search = htmlspecialchars($search);
 
}
else
{
exit("<p>Вы обратились к файлу без необходимый параметров.</p>");
 
 
}
 
 
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<style type="text/css">
<!--
.стиль2 {
    font-family: "Times New Roman", Times, serif;
    font-style: italic;
}
.стиль3 {
    font-size: 16px;
    font-weight: bold;
    font-style: italic;
}
.стиль4 {font-size: 12px; font-weight: bold; font-style: italic; }
-->
</style>
<head>
<meta name="description" content="<?php echo $myrow['meta_d']; ?>" />
<meta name="keywords" content="<?php echo $myrow['meta_k']; ?>" />
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title><?php echo "Заметки по запросу - $search"; ?></title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="700" align="center" cellpadding="0" cellspacing="0" class="main_border">
  <!--Блок с шапкой сайта-->
  <? include ("blocks/header.php"); ?> 
  <tr>
  <!--Блок меню сайта-->
 <? include ("blocks/menu.php"); ?>
    <td width="554" valign="top" bgcolor="#FFFFFF">
   
   
    <?php 
    
 
    
         $text_zaprosa = " SELECT id,title,description, author,date,text FROM recipes WHERE MATCH(text) AGAINST(' "; 
         $text_zaprosa = $search; 
         $text_zaprosa = ' ; 
         echo "<p>".$text_zaprosa."</p>";
$result = mysql_query ($text_zaprosa,$db);
        
    if (!$result)
    {
    echo "<p>Запрос на выборку данных из базы  не прошел. Напишите об этом вдминистратору legendarno@bk.ru . 
    <br>
    <br>
    <strong>Код ошибки : </strong></p>";
    
    
    
    exit(mysql_error());    
    }
    if (mysql_num_rows($result) > 0)
    
    {
       $myrow = mysql_fetch_array ($result);   
    do
     {
    
  printf (" <br> <table align='center' cellpadding='0' cellspacing='0' class='recipes'>
            
            <tr>
            <td class='recipes_title'>
            <p class='recipes_name'><a href='recipes_template.php?=id=%s'>%s</a></p>
            <p class='recipes_adds'>Дата добавления: %s</p>
            <p class='recipes_adds'>Автор: %s</p>
            </td>
            </tr>
            
            
            <tr>
            <td>%s</td>
            </tr>
           
           
            </table><br><br>", $myrow["text"] , $myrow["id"], $myrow["title"], $myrow["date"], $myrow["author"], $myrow["description"]);
    
    }
    while ($myrow);
    
   }
   else
   {
   echo "<p> Информация по запросу не может быть извлечена в таблице нет записей. </p>";
   exit();  
   }
   
   ?>
    
 
    
    </td>
  </tr>
  <!--Ниний блок сайта-->
  <? include("blocks/down.php"); ?>
</table>
</body>
</html>

Parse error: parse error, unexpected T_STRING in x:\home\localhost\www\phpsait\view_searc h.php on line 107
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.01.2011, 21:32
Помогаю со студенческими работами здесь

Поиск по сайту
Добрый день. Хочу на сайт установить поиск. Вопрос в том, как реализуется запрос(ы) для этого (MySQL)? Нашел в интернете два варианта:...

Поиск по сайту
Добрый вечер, подскажите пожалуйста, сегодня пытаюсь весь вечер разобраться. Делал поиск по сайту, запрос вроде правильно сделал, а вывод...

Поиск по сайту
Решил немного улучшить поиск по сайту и вот думаю как же искать по словам в введенной строке. Сейчас при поиске делаю следующее: Есть...

Поиск по сайту
Доброе время суток Уважаемые форумчане! я тут решил сделать поиск по сайту и наткнулся на маленькую проблему, сам поиск работает, но к...

поиск по сайту
ну объясните мне неразумной, куда вписать область поиска? Мне нужно, чтоб искались слова на всем сайте ama74.ru есть такая форма: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Видеокарта простаивает ночами? Вот 4 проекта, которые загрузят её наукой
Programma_Boinc 10.04.2026
Видеокарта простаивает ночами? Вот 4 проекта, которые загрузят её наукой Если на Windows стоит дискретная NVIDIA или AMD — можно отдать её вычислительную мощность реальным исследованиям. . . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru