Dr.Freddy Опубликовано 15 Июля 2004 Жалоба Поделиться Опубликовано 15 Июля 2004 После установки мода отображения статуса пользователя (на форуме / нет его) в темах перестали выводиться посты (т.е только шапка таблицы постов и нижняя часть). Опытным путём установил, что глюк происходит в той части мода, где идёт обращение к базе. Оно каким-то образом затирает выборку постов?online.zip Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 15 Июля 2004 Жалоба Поделиться Опубликовано 15 Июля 2004 Опытным путём установил, что глюк происходит в той части мода, где идёт обращение к базе.!!!Это так и есть, когда идёт конструкция вида$DB->query('SELECT * FROM blablabla...'); while ($row = $DB->fetch_row()) { ... $DB->query('SELECT smth FROM smwhere...'); ... }вторая квери затирает результаты первой - а по этой самой первой ещё нужно закончить цикл while! (Циклу каюк.) Это можно, в принципе, исправить, приведя конструкцию к виду:$query = $DB->query('SELECT * FROM blablabla...'); while ($row = $DB->fetch_row($query)) { ... $DB->query('SELECT smth FROM smwhere...'); ... }Но! Рекомендую поставить лучше нормальный мод онлайн-оффлайна с mods.invisionize.com. Там по слову Offline этих модов дофига!А тот, который ты ставишь, неоптимальный, он будет базу зря грузить. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 16 Июля 2004 Жалоба Поделиться Опубликовано 16 Июля 2004 Может просто в скине затёр вывод текста поста?Что до результатов квери, нужно изменить запрос так, чтобы инфа одним запросом сразу же бралась из обоих таблиц (ibf_posts и ibf_sessions) тогда вложенные запросы не понадобятся и соответственно не будет траблы с результатом. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dr.Freddy Опубликовано 16 Июля 2004 Автор Жалоба Поделиться Опубликовано 16 Июля 2004 Может просто в скине затёр вывод текста поста?Нет, все на месте. Что до результатов квери, нужно изменить запрос так, чтобы инфа одним запросом сразу же бралась из обоих таблиц (ibf_posts и ibf_sessions) тогда вложенные запросы не понадобятся и соответственно не будет траблы с результатом.Можно пример? Скачал с mods.invisionize.com несколько модов. Попробую поставить, потом поделюсь впечатлениями. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dr.Freddy Опубликовано 16 Июля 2004 Автор Жалоба Поделиться Опубликовано 16 Июля 2004 Поставил Image/Text Online/Offline Mod v3.5 от Shadow Fox. На первый взгляд, вполне прилично. Делает один дополнительный запрос к БД на одну загрузку страницу, довольно быстрый (без мода время генерации тестовой страницы на локалхосте 0.2118, с включенным модом — 0.2207). Полностью настраивается из админки. Можно разве что русифицировать, ну и лишние параметры поубирать. Кто-нибудь может об этом моде сказать что-нибудь плохое или хорошее? IATOOM.zip Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 16 Июля 2004 Жалоба Поделиться Опубликовано 16 Июля 2004 нужно изменить запрос так, чтобы инфа одним запросом сразу же бралась из обоих таблиц (ibf_posts и ibf_sessions) тогда вложенные запросы не понадобятсяSong, ты чему человека учишь?? Привыкнет сейчас так делать, а потом будет удивляться, почему script execution time 30 секунд... Dr.Freddy Кто-нибудь может об этом моде сказать что-нибудь плохое или хорошее?Мод включён в сборку Русский модифицированный IPB 1.3, работает на всех таких бордах. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dr.Freddy Опубликовано 16 Июля 2004 Автор Жалоба Поделиться Опубликовано 16 Июля 2004 theIggs Song, ты чему человека учишь?? Привыкнет сейчас так делать, а потом будет удивляться, почему script execution time 30 секунд...Это ж сколько запросов надо сделать-то? Самое жуткое, что я видел, не помню где — 62 квери на страницу. Генерации примерно пять секунд. Мод включён в сборку Русский модифицированный IPB 1.3, работает на всех таких бордах.Вот и отлично. Оставлю его, переделаю только. Впрочем, уже переделал. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 16 Июля 2004 Жалоба Поделиться Опубликовано 16 Июля 2004 theIggs LEFT JOIN - это самое быстрое средство в MySQL'е. Наоборот с джойном запрос оптимизируется. Тем более что ibf_sessions это сравнительно небольшая таблица, поэтому её можно джойнить без проблем. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 16 Июля 2004 Жалоба Поделиться Опубликовано 16 Июля 2004 Это ж сколько запросов надо сделать-то?Я тоже в детстве думал, что чем меньше запросов - тем лучше. А потом меня грубо ткнули носом... с тех пор я умнее. LEFT JOIN - это самое быстрое средство в MySQL'е.Быстрее, чем простой SELECT * FROM ibf_sessions? Не будем дискутировать на эту тему. Сам метод "соединить всё в один запрос" - очень спорный. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 16 Июля 2004 Жалоба Поделиться Опубликовано 16 Июля 2004 Игс, действительно не будем дескутировать здесь Ты лучше приходи на форум, который у меня в подписи, там тебе расскажут про этот вопрос профессионально. Добавлено в [mergetime]1089994253[/mergetime] ыстрее, чем простой SELECT * FROM ibf_sessions?ИМЕННО. MySQL чтоб ты знал не оптимизирован для последовательного линейного чтения данных. SQL оптимизирован для чтения выборкой. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dr.Freddy Опубликовано 18 Июля 2004 Автор Жалоба Поделиться Опубликовано 18 Июля 2004 Я тоже в детстве думал, что чем меньше запросов - тем лучше. А потом меня грубо ткнули носом... с тех пор я умнее.O'кей. Извините ребенка. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
orc Опубликовано 22 Июля 2004 Жалоба Поделиться Опубликовано 22 Июля 2004 Dr.FreddyЯ новичок в этом деле, где можно посмотреть пример того мода ( офлайн)? На примере форума? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.