Last Forum Topic On Index

Все моды, созданные нашим сообществом для phpBB 2.0.x, будут анонсированы тут. Вся техническая поддержка по этим модам оказывается в этом форуме.

Сообщение Vladson 01.02.2005 19:04

там злой неоптимизированный запрос

Нет, запрос там как раз тот что надо (хотя упростить можно, согласен), главный недостаток это то что мод не работает с базами PostgreSQL и Oracle мод надо доработать...
Серый цвет светлый (светлее чёрного) и серый цвет тёмный (темнее белого) и серый цвет средний (между чёрным и белым).
Сколько бы мнений ни было все правда, а истины просто нет. Любой кто думает что докопался до истины всего лишь выдумал себе свою правду.
Хотя возможно просто поверил в чужую ложь...
Аватара пользователя
Vladson
phpBB 2.0 RC-1 (pre)
phpBB 2.0 RC-1 (pre)
 
Сообщения: 1036
Зарегистрирован: 27.04.2004 6:07
Откуда: Estonia, Tallinn

Сообщение romutis 01.02.2005 20:36

Vladson писал(а):главный недостаток это то что мод не работает с базами PostgreSQL и Oracle мод надо доработать...


Почему это вдруг этот МОД с Ораклом не работает?
// romutis
romutis
phpBB 2.0.0
 
Сообщения: 110
Зарегистрирован: 09.06.2004 8:00

Сообщение Xpert 01.02.2005 20:43

И какие же у коллег идеи по оптимизации есть?
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Xpert
phpBB Guru
 
Сообщения: 5710
Зарегистрирован: 13.03.2004 22:27
Откуда: msk.ru

Сообщение romutis 01.02.2005 20:50

Xpert, при условии, что в качестве БД пользуются PostgeSQL версии 8 или Oracle версии не ниже 9 можно выкинуть все танцы с бубном вокруг "switch(SQL_LAYER)"


Код: Выделить всё
   //
   // Define appropriate SQL
   //
   $sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id, t.topic_title, t.topic_id
         FROM  " . FORUMS_TABLE . " f
         LEFT JOIN " . POSTS_TABLE . " p ON p.post_id = f.forum_last_post_id
         LEFT JOIN " . USERS_TABLE . " u ON u.user_id = p.poster_id
         LEFT JOIN " . TOPICS_TABLE . " t ON t.topic_id = p.topic_id
         ORDER BY f.cat_id, f.forum_order";
// romutis
romutis
phpBB 2.0.0
 
Сообщения: 110
Зарегистрирован: 09.06.2004 8:00

Сообщение Xpert 01.02.2005 20:56

romutis, а если нет? :) И версии ниже?
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Xpert
phpBB Guru
 
Сообщения: 5710
Зарегистрирован: 13.03.2004 22:27
Откуда: msk.ru

Сообщение romutis 01.02.2005 21:00

Кстати, на поддержку Оракла я бы сильно не налегал - phpBB не поддерживает Оракл официально. Тот код, что есть в SQL_LAYER для Оракла официально поддерживаемым кодом назвать нельзя при всём желании.

Когда-то давно (года два или больше назад) я даже вволю подискутировал на эту тему на оффсайте. :)

Добавлено спустя 3 минуты 5 секунд:

Xpert писал(а):romutis, а если нет? :) И версии ниже?


Тогда надо тра... (мучаться) с проблемой бэкпортинга.

Для Оракла этот запрос будет выглядеть так:
Код: Выделить всё
         $sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id, t.topic_title, t.topic_id 
            FROM " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u, " . TOPICS_TABLE . " t
            WHERE p.post_id = f.forum_last_post_id(+)
               AND u.user_id = p.poster_id(+)
               AND p.topic_id = t.topic_id(+)
            ORDER BY f.cat_id, f.forum_order";
Последний раз редактировалось romutis 01.02.2005 21:10, всего редактировалось 1 раз.
// romutis
romutis
phpBB 2.0.0
 
Сообщения: 110
Зарегистрирован: 09.06.2004 8:00

Сообщение Xpert 01.02.2005 21:04

Ясно, а где же t.topic_title среди массива получаемых данных? Я так понимаю, пропустили?
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Xpert
phpBB Guru
 
Сообщения: 5710
Зарегистрирован: 13.03.2004 22:27
Откуда: msk.ru

Сообщение Vladson 01.02.2005 23:37

Для оракла код должен выглядеть так...
Код: Выделить всё
case 'oracle':
$sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id , t.topic_title, t.topic_id
   FROM " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u, " . TOPICS_TABLE . " t
   WHERE p.post_id = f.forum_last_post_id(+)
      AND u.user_id = p.poster_id(+)
      AND p.topic_id = t.topic_id(+)
   ORDER BY f.cat_id, f.forum_order";
break;

Даже если это не официально то это не важно, важно то что если работает оригинальный запрос, то будет работать и этот, а что касается PostgreSQL тут я не могу сейчас сказать, но там тоже не особо сложно подправить
Последний раз редактировалось Vladson 02.02.2005 18:02, всего редактировалось 1 раз.
Серый цвет светлый (светлее чёрного) и серый цвет тёмный (темнее белого) и серый цвет средний (между чёрным и белым).
Сколько бы мнений ни было все правда, а истины просто нет. Любой кто думает что докопался до истины всего лишь выдумал себе свою правду.
Хотя возможно просто поверил в чужую ложь...
Аватара пользователя
Vladson
phpBB 2.0 RC-1 (pre)
phpBB 2.0 RC-1 (pre)
 
Сообщения: 1036
Зарегистрирован: 27.04.2004 6:07
Откуда: Estonia, Tallinn

Сообщение romutis 02.02.2005 9:04

Vladson
Ошибка в коде.
AND t.topic_id = p.topic_id(+)
поменять на
AND p.topic_id = t.topic_id(+)

Не понял твою фразу про "Даже если это не официально то это не важно". Что неофициально? Что неважно?
// romutis
romutis
phpBB 2.0.0
 
Сообщения: 110
Зарегистрирован: 09.06.2004 8:00

Сообщение Vladson 02.02.2005 17:53

Не понял твою фразу про "Даже если это не официально то это не важно". Что неофициально? Что неважно?

phpBB не поддерживает Оракл официально

Даже если это не официально то это не важно

Так понятнее ?
Серый цвет светлый (светлее чёрного) и серый цвет тёмный (темнее белого) и серый цвет средний (между чёрным и белым).
Сколько бы мнений ни было все правда, а истины просто нет. Любой кто думает что докопался до истины всего лишь выдумал себе свою правду.
Хотя возможно просто поверил в чужую ложь...
Аватара пользователя
Vladson
phpBB 2.0 RC-1 (pre)
phpBB 2.0 RC-1 (pre)
 
Сообщения: 1036
Зарегистрирован: 27.04.2004 6:07
Откуда: Estonia, Tallinn

Сообщение romutis 02.02.2005 17:56

Vladson
Да, теперь понятнее. Хотя если кто-то решился взгромоздить форум на Оракл, то уж селекты переписать и оптимизировать он точно догадается. :)
// romutis
romutis
phpBB 2.0.0
 
Сообщения: 110
Зарегистрирован: 09.06.2004 8:00

Сообщение Vladson 02.02.2005 18:05

Хотя если кто-то решился взгромоздить форум на Оракл, то уж селекты переписать и оптимизировать он точно догадается

romutis
мод всё равно должен быть написан правильно и работать при тех условиях при которых работает оригинальный продукт
Серый цвет светлый (светлее чёрного) и серый цвет тёмный (темнее белого) и серый цвет средний (между чёрным и белым).
Сколько бы мнений ни было все правда, а истины просто нет. Любой кто думает что докопался до истины всего лишь выдумал себе свою правду.
Хотя возможно просто поверил в чужую ложь...
Аватара пользователя
Vladson
phpBB 2.0 RC-1 (pre)
phpBB 2.0 RC-1 (pre)
 
Сообщения: 1036
Зарегистрирован: 27.04.2004 6:07
Откуда: Estonia, Tallinn

А пример?

Сообщение ncux 03.02.2005 14:48

Я не программист, поэтому в уме компилировать не умею. :)
Есть возможность этот МОД где-нибудь в работе увидеть?
А то я перепробовал уже черт знает сколько МОДов для этой цели, но ничего пристойного пока не нашел...
ncux
phpBB 1.0.0
 
Сообщения: 2
Зарегистрирован: 03.02.2005 14:47

Сообщение VVVas 03.02.2005 15:16

ncux
сам мод или его работу с обсуждаемым изменением запроса к базе?

Если сам мод, то прям здесь или у меня.

Вт 01 Фев 2005 11:41 VVVas
Интересный софтец

Жирным выделен эффект внесенный этим модом.
вы нарушили правила конференции, объяснений не будет - сами читайте правила
я люблю daft punk | Активные темы
Аватара пользователя
VVVas
Люмпен Пролетариат
Люмпен Пролетариат
 
Сообщения: 4737
Зарегистрирован: 12.11.2004 1:20
Откуда: RU-MSK

Сообщение ncux 03.02.2005 15:45

На forum.vvvas.ru я нашел только Glance. Больше ничего там не видел.
Или я не туда смотрю?

Я вообще ищу нечто, вроде Glance, только без анонсов и в формате самого форума. Пока не нашел... Точнее, нашел Last Topic on Index, но он слишком простой. Хочется большего. :)
ncux
phpBB 1.0.0
 
Сообщения: 2
Зарегистрирован: 03.02.2005 14:47

Пред.След.

Вернуться в Анонсы и поддержка модов для phpBB 2.0.x

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1