Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2010, 14:23   #1
denisov
Пользователь
 
Регистрация: 27.01.2010
Сообщений: 21
По умолчанию Поиск (не знаю где ошибка)

Помогите, где у меня не правильно?

PHP код:
if ($_POST['search']) {$search $_POST['search'];}
$result mysql_query("SELECT * FROM pages WHERE MATCH(keys) AGAINST('$search')",$db);
$myrow mysql_fetch_array($result);
if (!
$myrow) {echo "<p>По запросу <b>$search</b> ничего не найдено</p>";}

do{
printf("<div class='whois'><p><a href='%s' target='_blank'>%s</a></p></div>",$myrow['path'],$myrow['title']);}
while(
$myrow mysql_fetch_array($result)); 
выдаёт ошибки (изменил строки ошибок на 3 и 7 для примеры выше):
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in N:\home\denisov.com\www\catalog\sea rch.php on line 3
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in N:\home\denisov.com\www\catalog\sea rch.php on line 7

В MySQL на столбце keys нажал на кнопку Т для чтобы занести в индекс (тип FULLTEXT)
denisov вне форума Ответить с цитированием
Старый 17.02.2010, 14:31   #2
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

а где у вас коннект к базе ?
ssdm вне форума Ответить с цитированием
Старый 17.02.2010, 14:33   #3
denisov
Пользователь
 
Регистрация: 27.01.2010
Сообщений: 21
По умолчанию коннект в базе

ssdm
Коннект выше. Вот его содержимое
PHP код:
$db mysql_connect("localhost","user","pas");
mysql_select_db ("dbname"); 

Последний раз редактировалось denisov; 17.02.2010 в 15:10.
denisov вне форума Ответить с цитированием
Старый 17.02.2010, 15:11   #4
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

SQL запрос проверял ? Точно правильный ?
ssdm вне форума Ответить с цитированием
Старый 17.02.2010, 15:24   #5
denisov
Пользователь
 
Регистрация: 27.01.2010
Сообщений: 21
По умолчанию

а что такое SQL-запрос?
это? $result = mysql_query("..."); (его проверил, вроде всё правильно)
denisov вне форума Ответить с цитированием
Старый 17.02.2010, 15:38   #6
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Цитата:
а что такое SQL-запрос?
SELECT * FROM pages WHERE MATCH(keys) AGAINST('$search')

толькь вместо $search вставь значение и попробуй выполнить его на SQL клиенте

и ещё
Код:
$db = mysql_connect("localhost","user","pas");
mysql_select_db ("dbname",$db);
сделай так
ssdm вне форума Ответить с цитированием
Старый 17.02.2010, 15:40   #7
ilma55
webber
Форумчанин
 
Аватар для ilma55
 
Регистрация: 28.01.2010
Сообщений: 103
По умолчанию

ага
забыл добавить $db

ты ж подключаешься к БД указанием юзера -пароля - и хоста

mysql_select_db ("dbname",$db);
Компьютерные вирусы - это такие маленькие программульки, которые пишут большие говнюки.
ilma55 вне форума Ответить с цитированием
Старый 17.02.2010, 15:49   #8
denisov
Пользователь
 
Регистрация: 27.01.2010
Сообщений: 21
По умолчанию

всё сделал и не работает.

мне кажется что где-то неправильно именно в SQL-запросе, так как не находит $result (проверил через if(!$result) {...})

а ждать не надо, когда MySQL проиндексирует базу данных на наличие текста, который ищешь? или всё происходит сразу?

Последний раз редактировалось denisov; 17.02.2010 в 15:53.
denisov вне форума Ответить с цитированием
Старый 17.02.2010, 16:15   #9
denisov
Пользователь
 
Регистрация: 27.01.2010
Сообщений: 21
По умолчанию

всё работает, но стоит добавить MATCH(keys) AGAINST('$_POST[search]') выводит ошибку. раньше делал таким способом поиск и всё работало, а щас не хочет.

Может у меня не правильно стоит тип поля keys? (VARCHAR, в индексе FULLTEXT). перепробовал с разными типами и опять всё тоже
denisov вне форума Ответить с цитированием
Старый 17.02.2010, 16:50   #10
denisov
Пользователь
 
Регистрация: 27.01.2010
Сообщений: 21
По умолчанию

создал новую таблицу с именем text с точно таким же содержимым что и в keys и всё заработало - MATCH(text). заново переименовал и опять те же ошибки. неясно вообще, но это уже не важно - поработаю с text'ом

спасибо большое тем кто помогал!
denisov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Где ошибка? Константин1985 HTML и CSS 3 30.09.2009 17:35
Не знаю где ошибка 24nastya11 Помощь студентам 2 20.09.2009 20:43
Добавить инди в delphi 10 light, но как это зделать и где её взять не знаю 100GRamm Компоненты Delphi 1 09.02.2009 13:38
Не знаю что за ошибка Droid Общие вопросы Delphi 9 24.05.2008 22:18
Где найти поиск решения? Красавчег))) Microsoft Office Excel 3 10.05.2008 15:02