Destruction Опубликовано 18 Августа 2006 Жалоба Поделиться Опубликовано 18 Августа 2006 _http://forum.woweb.ru/topic24096s30.html2 и 3 сообщение сверху. Во втором отцитировано третье, я на 300% уверен, что это не подстава, можно мне научное объяснение? А то сам думать не могу. Телепатия не катит Ссылка на комментарий Поделиться на других сайтах Прочее
.silent Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 Прикольное автообъединение Ссылка на комментарий Поделиться на других сайтах Прочее
Destruction Опубликовано 19 Августа 2006 Автор Жалоба Поделиться Опубликовано 19 Августа 2006 НЕ ФЛУДИ! Лучше скажи, шозанах ) Ссылка на комментарий Поделиться на других сайтах Прочее
Destruction Опубликовано 19 Августа 2006 Автор Жалоба Поделиться Опубликовано 19 Августа 2006 Ну и где все философы?... Ссылка на комментарий Поделиться на других сайтах Прочее
.silent Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 if ( $last_post['author_id'] == $this->ipsclass->member['id'] ) { $new_post = $last_post['post'].'<br /><br />'.$this->post['post']; //----------------------------------------- // Update post row //----------------------------------------- $this->ipsclass->DB->force_data_type = array( 'pid' => 'int', 'post' => 'string' ); $this->ipsclass->DB->do_update( 'posts', array( 'post' => $new_post, 'post_date' => time() ), 'pid='.$last_post['pid'] ); $this->post['pid'] = $last_post['pid']; $this->post['post_key'] = $last_post['post_key']; $post_saved = 1; $this->is_merging_posts = 1; } } } //----------------------------------------- // No? //----------------------------------------- if ( ! $this->is_merging_posts ) { //----------------------------------------- // Add post to DB //----------------------------------------- $this->post['post_key'] = $this->post_key; $this->post['post_parent'] = intval($this->ipsclass->input['parent_id']); //----------------------------------------- // Typecast //----------------------------------------- $this->ipsclass->DB->force_data_type = array( 'pid' => 'int', 'post' => 'string' ); $this->ipsclass->DB->do_insert( 'posts', $this->post ); $this->post['pid'] = $this->ipsclass->DB->get_insert_id(); } успеть отработать сприпт во втором условии до того как у другого выполнилось первое теоретически, наверное, возможно =) Ссылка на комментарий Поделиться на других сайтах Прочее
Destruction Опубликовано 19 Августа 2006 Автор Жалоба Поделиться Опубликовано 19 Августа 2006 Эмм, не, на вовэбе лучше предложили, так загнули ) Ладно, вот тебе теоретически возможно, отлично, а практически пофиксить? ) Ссылка на комментарий Поделиться на других сайтах Прочее
Xeim.net Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 А как вы объясните, что время в цитате на час вперед отличается от самого поста?! Это все там же. Дата там одна и та же. А насчет ответа. Всему может оказаться простое объяснение. Если человек написал пост, где эта коронная фраза была частью поста а потом стер его (предположим это разрешено на форуме), то его уже успели процитировать. Причем пока человек пил кофе и отвечал на цитату, пост был удален. А когда ответ запостили после этого уже и новая версия поста появилась. Человек-то рашил "убрать все лишнее" и оставить только свою коронную фразу Но вот время... столку сбивает. Хотя и тут может быть редактирование БД, или просто тот, кто цитировал по памяти востановил время и ошибся Ссылка на комментарий Поделиться на других сайтах Прочее
Destruction Опубликовано 19 Августа 2006 Автор Жалоба Поделиться Опубликовано 19 Августа 2006 Нет, там шёл чиста флуд.. Ссылка на комментарий Поделиться на других сайтах Прочее
.silent Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 (изменено) и тут выползает следующий баг с DST'ом при цитировании Изменено 19 Августа 2006 пользователем .silent Ссылка на комментарий Поделиться на других сайтах Прочее
Destruction Опубликовано 19 Августа 2006 Автор Жалоба Поделиться Опубликовано 19 Августа 2006 Я знаю как случилось так !!! Человек написал пост - другой пришёл его цитировать, а в это время - часы на сервер назад перевели )) Ссылка на комментарий Поделиться на других сайтах Прочее
.silent Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 не, скорее всего у одного юзера стоит "Автокоррекция перехода на летнее время", а у другого - нет.надо тестить, может еще один баг тока я не буду. Ссылка на комментарий Поделиться на других сайтах Прочее
Destruction Опубликовано 19 Августа 2006 Автор Жалоба Поделиться Опубликовано 19 Августа 2006 Так, то, что время указано над цитатой - оно записано в пост как оно есть и не меняется, так, что с ДТС у них почти порядок.. Я говорю - мой вариант самый простой для понимания Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 21 Августа 2006 Жалоба Поделиться Опубликовано 21 Августа 2006 там просто запрос в склейке не совсем правилен.Лишнее включено в WHERE из-за чего сообщение было приклеено к последнему посту, который удовлетворил требованию в WHERE, но этот пост не был последним постом на самом деле.У меня такое бывало не раз, когда забывался. 2Destruction Даже если бы перевели часы, то это не было бы достаточной причиной для того, чтобы посты поменялись местами. Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 21 Августа 2006 Жалоба Поделиться Опубликовано 21 Августа 2006 Склейка сообщений не так срботала. А все, возможно из-за сортировки по дате сообщения, а не идентификатора (при вычислении чье сообщение было написано последним). .silent там 1.2 поэтому код не такой, а мод склейки для этой версии именно так и высчитывает последний пост (сортируя по дате в обратном порядке) Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 21 Августа 2006 Жалоба Поделиться Опубликовано 21 Августа 2006 2Hostem при чём тут сортировка? При склейке она вообще не учитывается. Тем более сортировка в IPB меняется только для топиков, но никак не для постов.Я же говорю, что там ошибочный запрос в склейке на форуме с приведённым скриншотом. Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 21 Августа 2006 Жалоба Поделиться Опубликовано 21 Августа 2006 Сортировка не при отображении поста, а при вычислении последнего поста когда происходит склейка. Т.е. делают запрос SELECT * FROM ibf_posts WHERE topic_id=... ORDER by post_date DESC LIMIT 1 Вот если идут два последних сообщения подряд с одинаковыми post_date, то склейка произойдет к предпоследнему сообщению. Пофиксить - исправить post_date на pid Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 21 Августа 2006 Жалоба Поделиться Опубликовано 21 Августа 2006 >> Вот если идут два последних сообщения подряд с одинаковыми post_date, то склейка произойдет к предпоследнему сообщению.такое невозможно. Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 21 Августа 2006 Жалоба Поделиться Опубликовано 21 Августа 2006 Возможно и по закону подлости именно это и происходит с последними сообщениями отправленными в одну секунду. Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 21 Августа 2006 Жалоба Поделиться Опубликовано 21 Августа 2006 ну одному автору-то они не могут принадлежать! Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 21 Августа 2006 Жалоба Поделиться Опубликовано 21 Августа 2006 1) Вставляется сообщениеcactusomania, почему? спят все? )))QUOTE (MAPO4HUK @ Суббота, 19 Августа 2006, 1:06)тогда перестань ментов избегать. ыыыы )) чур меня... и так блин сердце в пятки уходит когда в метро спускаюсь2) В ту же секундуНам положен почетный знак «Флудеры недели» 3) Неважно в какую секунду, но до того как отправил пост cactusomania... Bl@ze цитирует предыдущее сообщение, мод склейки сообщений высчитывает последний пост"SELECT * FROM ibf_posts WHERE topic_id=... ORDER by post_date DESC LIMIT 1" post_date в двух последних сообщениях одинаковый, поэтому "последним постом" может оказать как последний так и предпоследний. Так как не указано, что надо сначала сортировать по дате, а потом по айди, либо просто по айди. И вот в этой строке которую МуСКЛ вернул author_id будет равен Bl@z'овому. И склеится к предпоследнему сообщению Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 21 Августа 2006 Жалоба Поделиться Опубликовано 21 Августа 2006 а всё понял, что ты имеешь ввиду. спасибо. Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения