|
|
|
Где ошибка?
|
|||
|---|---|---|---|
|
#18+
Знания в пхп минимальные растолкуйте пожалуйста. Есть таблица в mysql на хостинге имя etcitem http://i031.radikal.ru/1405/55/ecf081d82cad.jpg поисковик не находит инфу У него такой код <html> <head> <title>base</title> </head> <body> <form name="search" method="post" action="search.php"> <input type="search" name="query" placeholder="Поиск"> <button type="submit">Найти</button> </form> <?php define('DB_HOST', '*****'); define('DB_USER', '******'); define('DB_PASS', '******'); define('DB_NAME', '******'); if (!mysql_connect(DB_HOST, DB_USER, DB_PASS)) { exit('Cannot connect to server'); } if (!mysql_select_db(DB_NAME)) { exit('Cannot select database'); } mysql_query('SET NAMES utf8'); function search ($query) { $query = trim($query); $query = mysql_real_escape_string($query); $query = htmlspecialchars($query); if (!empty($query)) { if (strlen($query) < 3) { $text = '<p>Слишком короткий поисковый запрос.</p>'; } else if (strlen($query) > 128) { $text = '<p>Слишком длинный поисковый запрос.</p>'; } else { $q = "SELECT `item_id`, `title`, `desc`, `title_link`, `category`, `uniq_id` FROM `itcitem` WHERE `text` LIKE '%$query%' OR `title` LIKE '%$query%' OR `meta_k` LIKE '%$query%' OR `meta_d` LIKE '%$query%'"; $result = mysql_query($q); if (mysql_affected_rows() > 0) { $row = mysql_fetch_assoc($result); $num = mysql_num_rows($result); $text = '<p>По запросу <b>'.$query.'</b> найдено совпадений: '.$num.'</p>'; do { // Делаем запрос, получающий ссылки на статьи $q1 = "SELECT `link` FROM `etcitem` WHERE `item_id` = '$row[page_id]'"; $result1 = mysql_query($q1); if (mysql_affected_rows() > 0) { $row1 = mysql_fetch_assoc($result1); } $text .= '<p><a> href="'.$row1['link'].'/'.$row['category'].'/'.$row['uniq_id'].'" title="'.$row['title_link'].'">'.$row['title'].'</a></p> <p>'.$row['desc'].'</p>'; } while ($row = mysql_fetch_assoc($result)); } else { $text = '<p>По вашему запросу ничего не найдено.</p>'; } } } else { $text = '<p>Задан пустой поисковый запрос.</p>'; } return $text; } ?> <?php if (!empty($_POST['query'])) { $search_result = search ($_POST['query']); echo $search_result; } ?> </body> </html> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 10:55:44 |
|
||
|
Где ошибка?
|
|||
|---|---|---|---|
|
#18+
Точно результат фунции mysql_affected_rows() должен быть больше ноля после выборки? Вот что про него пишут: авторint mysql_affected_rows ([ resource $link_identifier = NULL ] ) Возвращает количество рядов, затронутых последним INSERT, UPDATE, REPLACE или DELETE запросом, связанным с дескриптором link_identifier. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 11:26:53 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38649878&tid=1834779]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
142ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
25ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 437ms |

| 0 / 0 |
