Вернуться   Форум SAPE.RU > Общие вопросы > Разработка и сопровождение сайтов

-->
Ответ
 
Опции темы
Старый 07.01.2012, 14:33   #1
Новичок
 
Регистрация: 02.12.2011
Сообщений: 38
Вес репутации: 152
ZazulaJ скоро станет известенZazulaJ скоро станет известен
По умолчанию Помогите разобраться с поиском на сайте!

Я сделала поиск по сайту. Он работает нормально, все ищет, но в строку адреса передает не фразу, которую я ищу, а какие-то символы. Как сделать, чтобы передавалась фраза. Та же сделан постраничный вывод, но при переходе на другую страницу в строку адреса выводится фраза, а в сам запрос символы и все сбрасывается. Как сделать так, чтобы и в строке адреса была фраза и в запросе и при переходе по страницам все сохранялось. Заранее спасибо!
ZazulaJ вне форума   Ответить с цитированием
Старый 07.01.2012, 14:49   #2
Монстер
 
Аватар для VAU
 
Регистрация: 30.12.2008
Адрес: Монстрополис
Сообщений: 2,496
Вес репутации: 372
VAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущее
По умолчанию

ZazulaJ, для начала разберитесь с методом запроса: POST или GET.
Если второй, то у вас запрос передается как параметр УРЛ в виде пары (название переменной)=значение. Дальше к этой паре можете добавлять сколько угодно параметров, в том числе номер страницы. При получении запроса просто разбираете УРЛ на сервере.

Что такое "какие-то символы"? При запросе слов на латиннице тоже "какие-то символы"? Возможно это просто УРЛ кодировка кириллицы.
__________________
Монстры тоже люди

Последний раз редактировалось VAU; 07.01.2012 в 14:55.
VAU вне форума   Ответить с цитированием
Старый 07.01.2012, 15:32   #3
Новичок
 
Регистрация: 02.12.2011
Сообщений: 38
Вес репутации: 152
ZazulaJ скоро станет известенZazulaJ скоро станет известен
По умолчанию

Метод Get, и запрос так и передает название переменной=значение

вот как выглядит запрос:
SELECT * FROM tovar, tip WHERE name LIKE '%постельное белье%' OR tname LIKE '%постельное белье%' GROUP BY id LIMIT 0,10

вот как это выглядит в строке адреса :
searchterm=%EF%EE%F1%F2%E5%EB%FC%ED%EE%E5+%E1%E5%E B%FC%E5&p=%CD%E0%E9%F2%E8.
Но так же передает другой параметр - "р" - это название кнопки "найти". этот параметр не нужен, но не знаю, как от него избавиться.
А для перехода по страницам сделана ссылка:
<a href='searchterm=".$searchterm."&page=".$i.""'>".$ i."</a>
А при переходе по этой ссылке в строку адреса передается searchterm=постельное белье&page=2 а запрос становится таким
SELECT * FROM tovar, tip WHERE name LIKE '%постельное белье&page=2%' OR tname LIKE '%постельное белье&page=2%' GROUP BY id LIMIT 0,10
Может что-то не так со ссылкой или с запросом?
И подскажите, пожалуйста, как проверить УРЛ кодировку?
ZazulaJ вне форума   Ответить с цитированием
Старый 07.01.2012, 16:01   #4
Монстер
 
Аватар для VAU
 
Регистрация: 30.12.2008
Адрес: Монстрополис
Сообщений: 2,496
Вес репутации: 372
VAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущее
По умолчанию

Цитата:
Сообщение от ZazulaJ Посмотреть сообщение
вот как выглядит запрос:
SELECT * FROM tovar, tip WHERE name LIKE '%постельное белье%' OR tname LIKE '%постельное белье%' GROUP BY id LIMIT 0,10

вот как это выглядит в строке адреса :
searchterm=%EF%EE%F1%F2%E5%EB%FC%ED%EE%E5+%E1%E5%E B%FC%E5&p=%CD%E0%E9%F2%E8.
Все правильно, это УРЛ-кодировка фразы "постельное белье". Если создает проблемы при поиске, нужно ее раскодировать перед тем как вставлять в SQL запрос.

Цитата:
Сообщение от ZazulaJ Посмотреть сообщение
Но так же передает другой параметр - "р" - это название кнопки "найти". этот параметр не нужен, но не знаю, как от него избавиться.
Кнопка вида "input type="submit"? Если нет, то лучше сделать такую. Возможно какое-то лишнее свойство в элементе управления кнопка.

Цитата:
Сообщение от ZazulaJ Посмотреть сообщение
<a href='searchterm=".$searchterm."&page=".$i.""'>".$ i."</a>
А при переходе по этой ссылке в строку адреса передается searchterm=постельное белье&page=2 а запрос становится таким
SELECT * FROM tovar, tip WHERE name LIKE '%постельное белье&page=2%' OR tname LIKE '%постельное белье&page=2%' GROUP BY id LIMIT 0,10
К сожалению пишу в другой среде, но возможно требуется кодировать фразу в УРЛ прежде чем вставлять в код ссылки.
Может еще быть связано с разной html кодировкой. Проверьте чтобы совпадала с кодировкой в движке.
__________________
Монстры тоже люди
VAU вне форума   Ответить с цитированием
Старый 07.01.2012, 16:23   #5
Новичок
 
Регистрация: 02.12.2011
Сообщений: 38
Вес репутации: 152
ZazulaJ скоро станет известенZazulaJ скоро станет известен
По умолчанию

Большое спасибо за помощь. С кнопкой разобралась, осталось разобраться с кодировкой )
ZazulaJ вне форума   Ответить с цитированием
Старый 07.01.2012, 16:26   #6
Монстер
 
Аватар для VAU
 
Регистрация: 30.12.2008
Адрес: Монстрополис
Сообщений: 2,496
Вес репутации: 372
VAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущееVAU - прекрасное будущее
По умолчанию

Цитата:
Сообщение от ZazulaJ Посмотреть сообщение
Большое спасибо за помощь. С кнопкой разобралась, осталось разобраться с кодировкой )
Пожалуйста!
__________________
Монстры тоже люди
VAU вне форума   Ответить с цитированием
Старый 09.01.2012, 09:25   #7
Новичок
 
Регистрация: 02.12.2011
Сообщений: 38
Вес репутации: 152
ZazulaJ скоро станет известенZazulaJ скоро станет известен
По умолчанию

Есть у меня еще один поиск на сайте - поиск по параметрам. Часть поиска (сортировка по типу, производителю, размеру и т.п.) сделана с помощью jumpMenu, а последние параметры - сортировка цены - сделаны просто текстовым полем. Все это в одной форме. Сам поиск работает, но в QUERY_STRING и соответственно в строку адреса передается куча пераметров. вот как это выглядит:
list=3&kat=2&tip=25&kat1=%2Fcatalog%2Fkategoriya2. htm&tip1=%2Fcatalog%2Fkategoriya2%2Ftip25.htm&bren d1=%2Fcatalog%2Fkategoriya2%2Ftip25.htm&size1=%2Fc atalog%2Fkategoriya2%2Ftip25.htm&mat1=%2Fcatalog%2 Fkategoriya2%2Ftip25.htm&mat1=%2Fcatalog%2Fkategor iya2%2Ftip25.htm&ot=0&do=100
Как сделать так, чтобы передавались только нужные параметры?
ZazulaJ вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите разобраться pvxokno Вопросы по работе системы 1 23.09.2011 22:02
Помогите с поиском VPS D1M@$ Хостинг и доменные имена 12 09.09.2011 12:24
Помогите с поиском переходника big_kent Курилка 12 25.12.2010 05:36
Помогите с поиском syash Вопросы по работе системы 8 27.02.2010 17:36
Помогите разобраться jim1234 Google, MSN, Yahoo 1 14.11.2009 23:39


Часовой пояс GMT +3, время: 08:01.