conick 0 Опубликовано 14 сентября, 2008 Жалоба Share Опубликовано 14 сентября, 2008 Может я чего наделал, не помню уже как было, но мне надо сделать так, чтобы при выборе производителя из бокса "manufacturers", товары сортировались по названию, а не черти как, что у меня сейчас. Я так понимаю, что эти настройки есть в default.php, но найти подходящий "order by" не получается. Подскажите пожалуйста. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 14 сентября, 2008 Жалоба Share Опубликовано 14 сентября, 2008 Они и так сортируются по названию, по идее. В /includes/modules/default.php есть такая строка: if (!$sorting_data['products_sorting']) $sorting_data['products_sorting'] = 'pd.products_name';[/code] Либо просто попобуй заменить все: [code] $sorting = ' ORDER BY '.$sorting_data['products_sorting'].' '.$sorting_data['products_sorting2'].' '; на: $sorting = ' ORDER BY pd.products_name ';[/code] Ссылка на сообщение Поделиться на другие сайты
conick 0 Опубликовано 14 сентября, 2008 Автор Жалоба Share Опубликовано 14 сентября, 2008 Заменил, не помогает Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 15 сентября, 2008 Жалоба Share Опубликовано 15 сентября, 2008 Может не везде заменил?! Сортировка задаётся имеено в этом файле, другого нет места. Ссылка на сообщение Поделиться на другие сайты
conick 0 Опубликовано 15 сентября, 2008 Автор Жалоба Share Опубликовано 15 сентября, 2008 Сейчас еще посмотрю. У меня возникла следующая проблема сверху на страничке выдает сообщение: Warning: Smarty error: unable to read resource: "/lang_.conf" in /home/p/planetaaro/public_html/includes/external/smarty/Smarty.class.php on line 1092 Выдает только на главной. Не могу понять что к чему. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 15 сентября, 2008 Жалоба Share Опубликовано 15 сентября, 2008 А после чего такая ошибка вылезла, может что-то ставили, что-то правили? Ссылка на сообщение Поделиться на другие сайты
conick 0 Опубликовано 15 сентября, 2008 Автор Жалоба Share Опубликовано 15 сентября, 2008 Да я вроде много, что делал, одно из последних - это добавление алфавитного указателя, который ищет только в нужных категориях, в шаблон product_listing_list.html, а именно вставка следующего кода в product_listing.php: $query_alphabet2 = vam_db_query('SELECT left(products_name, 1) as pn FROM ' . TABLE_PRODUCTS_DESCRIPTION . ' pd, ' . TABLE_PRODUCTS_TO_CATEGORIES . ' ptc, ' . TABLE_CATEGORIES . ' c where pd.products_id = ptc.products_id and ptc.categories_id=c.categories_id and c.parent_id=25 GROUP BY pn ORDER BY pn');$search_str2 = '';while( $next_symb2 = vam_db_fetch_array($query_alphabet2) ) { $search_str2 .= "<a href=" . vam_href_link( 'advanced_search_result_alph.php', 'keywords=' . $next_symb2['pn'] ) . "&categories_id=25&inc_subcat=1&x=35&y=8>" . $next_symb2['pn'] . "</a> ";}$module->assign('alfman',$search_str2);$query_alphabet3 = vam_db_query('SELECT left(products_name, 1) as pn FROM ' . TABLE_PRODUCTS_DESCRIPTION . ' pd, ' . TABLE_PRODUCTS_TO_CATEGORIES . ' ptc, ' . TABLE_CATEGORIES . ' c where pd.products_id = ptc.products_id and ptc.categories_id=c.categories_id and c.parent_id=24 GROUP BY pn ORDER BY pn');$search_str3 = '';while( $next_symb3 = vam_db_fetch_array($query_alphabet3) ) { $search_str3 .= "<a href=" . vam_href_link( 'advanced_search_result_alph.php', 'keywords=' . $next_symb3['pn'] ) . "&categories_id=24&inc_subcat=1&x=35&y=8>" . $next_symb3['pn'] . "</a> ";}$module->assign('alfwoman',$search_str3);[/code]и использование соответствующих меток. Но убрав этот код, ошибка не пропадает. Ошибка, кстати вылазеет, в самом верху блока main_content и только на главной. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 15 сентября, 2008 Жалоба Share Опубликовано 15 сентября, 2008 Почему-то код языка не подставляется, просто сложно наугад сказать, не зная, что Вы правили. Для пробы, попробуйте скопировать файл /lang/russian/lang_russian.conf в lang_.conf Ссылка на сообщение Поделиться на другие сайты
conick 0 Опубликовано 16 сентября, 2008 Автор Жалоба Share Опубликовано 16 сентября, 2008 Решил проблему, просто закоментировав <!-- {config_load file="$language/lang_$language.conf" section="index"} --> в main_content, поскольку там не используется никаких языковых меток. По крайней мере у меня. А еще, что за метка {$MODULE_error}, которая идет следом? Сортировка товаров по названию при выборе производителя у меня до сих пор не работает. Прикрепил мой default.php. Посмотри пожалуйста. default.php Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 16 сентября, 2008 Жалоба Share Опубликовано 16 сентября, 2008 Попробуй не комментировать, а например в /includes/header.php внизу добавить что-то вроде: $vamTemplate->assign('language',$_SESSION['language']);[/code]По поводу сортировки не знаю, сортировка задаётся именно там где я сказал. Ссылка на сообщение Поделиться на другие сайты
conick 0 Опубликовано 16 сентября, 2008 Автор Жалоба Share Опубликовано 16 сентября, 2008 Ну в файле, который я выслал, все верно прописано? Еще я обратил внимание, что сейчас товары сортируются по id. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 17 сентября, 2008 Жалоба Share Опубликовано 17 сентября, 2008 Сортировка вроде правильно указана. Ссылка на сообщение Поделиться на другие сайты
conick 0 Опубликовано 17 сентября, 2008 Автор Жалоба Share Опубликовано 17 сентября, 2008 Значит сортировка задается в другом месте. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 17 сентября, 2008 Жалоба Share Опубликовано 17 сентября, 2008 Нет, задаётся именно в этом файле. А также при создании категории в админке, но ты ж в файле удалил то, что задаётся из админки, я так понял. Ссылка на сообщение Поделиться на другие сайты
conick 0 Опубликовано 18 сентября, 2008 Автор Жалоба Share Опубликовано 18 сентября, 2008 То есть у тебя получается сделать такой вывод? Может тогда прикрепишь свой default.php, с которым у тебя работает такая сортировка. Ссылка на сообщение Поделиться на другие сайты
conick 0 Опубликовано 18 сентября, 2008 Автор Жалоба Share Опубликовано 18 сентября, 2008 Решил проблему, дописав в конце кода : (у меня 247 строка) $listing_sql = "select p.products_fsk18, p.products_shippingtime, p.products_model, p.products_ean, pd.products_name, p.products_id, p.products_price, m.manufacturers_name, p.products_quantity, p.products_image, p.products_weight, pd.products_short_description, pd.products_description, p.manufacturers_id, p.products_vpe, p.products_vpe_status, p.products_vpe_value, p.products_discount_allowed, ptef.products_extra_fields_value, p.products_tax_class_id from ".TABLE_PRODUCTS_DESCRIPTION." pd, ".TABLE_MANUFACTURERS." m, ".TABLE_PRODUCTS." p left join ".TABLE_SPECIALS." s on p.products_id = s.products_id left join ".TABLE_PRODUCTS_TO_PRODUCTS_EXTRA_FIELDS." ptef ON p.products_id = ptef.products_id where p.products_status = '1' and pd.products_id = p.products_id ".$group_check." ".$fsk_lock." and pd.language_id = '".(int) $_SESSION['languages_id']."' and ptef.products_extra_fields_id = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '".(int) $_GET['manufacturers_id']."'";[/code] "[b]order by pd.products_name[/b]" т.е получил: [code]$listing_sql = "select p.products_fsk18, p.products_shippingtime, p.products_model, p.products_ean, pd.products_name, p.products_id, p.products_price, m.manufacturers_name, p.products_quantity, p.products_image, p.products_weight, pd.products_short_description, pd.products_description, p.manufacturers_id, p.products_vpe, p.products_vpe_status, p.products_vpe_value, p.products_discount_allowed, ptef.products_extra_fields_value, p.products_tax_class_id from ".TABLE_PRODUCTS_DESCRIPTION." pd, ".TABLE_MANUFACTURERS." m, ".TABLE_PRODUCTS." p left join ".TABLE_SPECIALS." s on p.products_id = s.products_id left join ".TABLE_PRODUCTS_TO_PRODUCTS_EXTRA_FIELDS." ptef ON p.products_id = ptef.products_id where p.products_status = '1' and pd.products_id = p.products_id ".$group_check." ".$fsk_lock." and pd.language_id = '".(int) $_SESSION['languages_id']."' and ptef.products_extra_fields_id = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '".(int) $_GET['manufacturers_id']."' order by pd.products_name"; Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 18 сентября, 2008 Жалоба Share Опубликовано 18 сентября, 2008 Ничего у меня не получается, я говорю, что параметр, по которому сортироваться будет товар внутри категорий задаётся именно в этом файле. Если не соритрует, либо параметр задан неверно, либо в sql запросе нет той колонки, по которой нужно сортировать. Ссылка на сообщение Поделиться на другие сайты
conick 0 Опубликовано 18 сентября, 2008 Автор Жалоба Share Опубликовано 18 сентября, 2008 я же говорю, что уже решил проблему и написал выше каким образом. Все отлично работает! Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 18 сентября, 2008 Жалоба Share Опубликовано 18 сентября, 2008 Я только сейчас заметил, когда писал, ответа ещё не было, пардон. Хорошо, что разобрался, ты наверное из sql запроса что-то лишнее удалил и не подставлялся параметр сортировки. Вобщем, уже не важно, я так понимаю. Ссылка на сообщение Поделиться на другие сайты
conick 0 Опубликовано 19 сентября, 2008 Автор Жалоба Share Опубликовано 19 сентября, 2008 Да, похоже просто удалил метку "$sorting" оттуда. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 19 сентября, 2008 Жалоба Share Опубликовано 19 сентября, 2008 Понятно, я как-то сразу не заметил, смотрел, что правильно указано значение $sorting, а вот то, что ты удалил подстановку этой переменной в sql запросил, не заметил. Хорошо, что сам разобрался. Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения