Всем привет.
Планировалось большое обновление данных разделов, но возросшая на портал нагрузка, вы помните проблемы на прошлой неделе, немного изменила планы.
Сейчас вы видите временный вариант раздела "Спрос" и я выслушаю ваши мысли.
Данные разделы делались ещё до того как я пришёл на портал, поэтому мне показалось, что сделаны они немного странно.
Изменения:
- Убрано количество комментариев из таблицы. Я затрудняюсь понять зачем оно там нужно, а места в таблице и так мало, пока я его убрал
- Изменён порядок полей
- Добавлена цена, если цена не указана - Договорная. Жаль, что для цены нет единого формата, сортировать по ней пока нельзя
- Изменён формат даты. Теперь она выводится в формате "3 часа назад"
- Изменена логика обратки фильтров, по-умолчанию - ничего не выбрано. Это требование для совершения выборок сервером
- Состояние фильтров запоминается для следующего поиска.
Прежде всего, я хочу получить от пользователей обратную связь, может я что-то сделал неверно или что-то можно улучшить? Или я убил какую-то важную функцию.
В общем жду от вас ответов.
Если всё хорошо, то переношу изменения на предложение.
Уважаемый редактор, у меня вот такой вопрос: я читаю постоянно блоги и заметила, что последнее время в подписях под блогами появились английские слова вместо русских и одно целое предложение You are not watching this post, click to start watching. Я, конечно, могу его перевести на русский, хотя школу кончила о-о-очень давно, но вот смысл сих перемен мне не понятен
https://fermer.ru/forum/fermerru/155024
Надо дать возможность гостям удалять или редактировать объявления по коду, который будет показываться после принятия объявления к публикации.
Уважаемый редактор!
Раньше в разделах "Спрос" и "Предложение" можно было выбрать регион и интересующий раздел. Теперь этого почему то нет. Или я плохо ищу?
В первом сообщении я писал, что сейчас переделал спрос, если нет нареканий, то сделаю аналогично и предложение.
В спросе выбор региона есть.
Уважаемый редактор
Это крайне неудобно когда в "Предложениях" отсутствует с помощью поиска, вернее с помощью фильтров поиск нужных позиций.
Я понимаю, что идет модернизация. Но ведь пока все это готовится и еще не оформлено можно людям хоть какой-то оставить вариант, даже старый.
А то сейчас пользоваться этим совершенно невозможно.
p.s. При ответе, кнопка стала называться "Сохранить", вместо "Отправить".
Юрий, я уже несколько дней пытаюсь добиться конкретных слов, что стало неудобно.
И сделал пример на спросе, но никто так и не высказал своё "фи" насчёт варианта сделанного на спросе.
Я жду до завтра, если всё всех устраивает - делаю на предложениях аналогичные фильтры и дальнейшее исправление будет очень нескоро.
"Правило" или "Предупреждение" Можно было б убрать. Оно нужно только тогда, когда собираешься добавить объявление. Пусть каждый раз тот кто добавляет видит эти правила. А при пользовании оно неудобно т.к. сразу занимает достаточно много места в окне. В принципе это сделать можно.
А остальное все очень удобно.
Что за регион ---- ? Если это поиск по всем регионам, то это не работает. Выдаются покупатели, которые при регистрации не указали регион.
Увы, но это особенность старых объявлений, регионы там сделаны не так как принято. И это регион по-умолчанию
А как искать по всем регионам?
По всем не получится, так как будет превышена длина строки GET-параметров, сервер ошибку выплюнет, регионы забиты полным названием, а не id.
Только если выбрать интересующие через CTRL или сразу несколько через Shift, но все сейчас никак.
Я подумаю, может смогу по быстрому переделать.
А зачем через GET передавать все наименования регионов??? Через GET вы же параметры для sql-строки передаете, переделайте sql-запрос и все, ничего сложного.
UPD Да и еще в Предложение и Спрос сортировка по колонкам не работает
GET потому что правило хорошего тона передавать поисковой запрос через GET.
Передача всех регионов - потому что увы, так сделаны старые объявления, там без нормализации таблиц была сделана география. Простой переделкой там не обойдётся, проще всё разломать и сделать заново, но могу показать запрос, очень любопытный.
И выборка по всем регионам для него - смерть MySQL.
Но вы мне подали идею, если быстро получится сделать - реализую
а просто select без регионов?
SELECT id, name, title, text, tel, email, userid
FROM table
ORDER BY id DESC LIMIT 0, 200
Ну и where like для title добавить.
Можно и с шифтом, но как бы MySQL не помер :) если там такая табличка.
Если бы там запрос руками создавался - проблем никаких.
Но там конструктор используется.
Кажись единственный способ пользователю получить все регионы - ничего не выбирать в регионах, что так-то логично.
Чтобы прекратить спор за SQL-запрос, вот это запрос при выбранной адыгее:
SELECT DISTINCT(node.nid) AS nid,
node_data_field_region.field_region_value AS node_data_field_region_field_region_value,
node.type AS node_type,
node.vid AS node_vid,
term_data.name AS term_data_name,
term_data.vid AS term_data_vid,
term_data.tid AS term_data_tid,
node.title AS node_title,
node_data_field__4.field__4_value AS node_data_field__4_field__4_value,
node_comment_statistics.comment_count AS node_comment_statistics_comment_count,
users.name AS users_name,
users.uid AS users_uid,
GREATEST(node.changed, node_comment_statistics.last_comment_timestamp) AS node_comment_statistics_last_updated,
node.sticky AS node_sticky,
DATE_FORMAT((FROM_UNIXTIME(node_comment_statistics.last_comment_timestamp) + INTERVAL 14400 SECOND), '%Y%m%d%H') AS node_comment_statistics_last_comment_timestamp_hour
FROM node node
INNER JOIN content_field_region node_data_field_region ON node.vid = node_data_field_region.vid
LEFT JOIN term_node term_node ON node.vid = term_node.vid
LEFT JOIN term_data term_data ON term_node.tid = term_data.tid
LEFT JOIN content_field__4 node_data_field__4 ON node.vid = node_data_field__4.vid
INNER JOIN node_comment_statistics node_comment_statistics ON node.nid = node_comment_statistics.nid
INNER JOIN users users ON node.uid = users.uid
WHERE (node.status = 1) AND (node.type in ('tender')) AND (node_data_field_region.field_region_value = 'Адыгея') AND (node.vid IN (
SELECT tn.vid FROM term_node tn
WHERE tn.tid = 268
)) AND ((node.title) LIKE ('%%'))
GROUP BY nid
ORDER BY node_sticky DESC, node_comment_statistics_last_updated DESC, node_comment_statistics_last_comment_timestamp_hour DESC, node_comment_statistics_last_updated ASC
В старой версии - WHERE было ещё более адовое.
Виктор, а в сообщениях нельзя вывод по 100 или более сообщений на страничку сделать. А то иногда хочется найти какое-то, но даже перелистать все страницы времени нет.
Вы про личку?
Можно, но позже
Так как никто не высказался против - на предложениях сделан аналогичный поиск как и в спросе.
Следующий раз когда я доберусь до спроса - будет очень не скоро.