Sannis Опубликовано 21 Мая 2007 Жалоба Поделиться Опубликовано 21 Мая 2007 (изменено) http://www.ibresource.ru/db/922/ - оно. ну потому что обычная быстрая (если взять технологию её из 1.х, не знаю как сделана быстрая в 2.х, поэтому и утверждать не берусь) цитата обходится только лишь ява-скриптом без обращений к базе вообще.IPB 2.x очень перегружен ажаксом и не надо думать, что раз это не технология с перезагрузкой, то это никак не отображается на нагрузке сервака.В быстрой цитате вообще желательно не обращаться к серваку. На то она и быстрая.Всё остальное в двухе уже сделано: кнопки +/- и кнопка "Ответить".Догнал откуда весь спор возник. Да, "быстрая цитата" на ajax никакая не быстрая. Потому и мод назвал "МультиЦитата в быстром ответе". Имеется в виду что не нужно жать на ответить и грузить целую страницу новую, всё появляется в быстром ответе. И в этом плане действительно получается что она быстрее(не надо перезагружать страницу и меньше кода выполняется) и не капает трафик соответственно. Но есть минус, связанный с популярностью мультицитаты, выше писал уже. Имхо если делать через яваскрипт, то прийдётся немного добавлять в скины елементом чтобы легче находить нужное, а это опять же трафик и неуниверсальность. Разве это лучше? Изменено 21 Мая 2007 пользователем Sannis Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 21 Мая 2007 Жалоба Поделиться Опубликовано 21 Мая 2007 и не капает трафик соответственноAjax также трафик тратит. Имхо если делать через яваскрипт, то прийдётся немного добавлять в скины елементом чтобы легче находить нужное, а это опять же трафик и неуниверсальность. Разве это лучше?Там все эти метки уже есть, а иначе бы не могло работать быстрое редактирование. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 21 Мая 2007 Жалоба Поделиться Опубликовано 21 Мая 2007 (изменено) Ajax также трафик тратит.Я ж не батон) Имел в виду что меньше трафика. Раз в 10 %) Даже на локалке замечаю разницу грузить страницу ответа или модом. Правда у меня комп загружен. Там все эти метки уже есть, а иначе бы не могло работать быстрое редактирование.А ник автора и дата поста?) Это уже посложнее и может не прокатить. P.S. Полюбому javascript+regex для меня пока что не под силу, и так пухну... Изменено 21 Мая 2007 пользователем Sannis Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 21 Мая 2007 Жалоба Поделиться Опубликовано 21 Мая 2007 ты видимо рассматриваешь все фишечки к форуму исключительно исходя из их "крутости". Ну типа ажакс популярен в последнее время в модах IPB, удобен, ну значит его везде где можно нужно вставить, а потом всем сказать, смотрите какой у меня форум: и тут ажакс и тут ажакс..Сторона работы с сервером тебя видимо мало беспокоит. Можно сделать, что при быстрой цитате будет 1 запрос к базе, и при этом нельзя будет прочитать сообщения из скрытого форума . Можно сделать и без запросов, и без подключения к БД. Так почему это не оптимизация когда при нажатии на "цитата" в старой версии происходит переход на следующую страницу, который выполнит этих запросов десяток, а в новой версии для такой мелочи как цитата во-первых не надо переходить на новую страницу, во-вторых - использовать 1 запрос к базе, а не 10? (мы рассматриваем ту цитату, которая копирует еще и бб-коды, джаваскриптовая, что работает через выделение - может не подойти пользователю, но можно и ту оставить, и ту). http-запросов тоже в старой версии может оказаться больше, зависит от ситуации. Так что твои обвинения в мою сторону, что я не думаю о нагрузке - неправда . В данном случае ajax оптимальнее обойдется ). Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 21 Мая 2007 Жалоба Поделиться Опубликовано 21 Мая 2007 Можно сделать, что при быстрой цитате будет 1 запрос к базе, и при этом нельзя будет прочитать сообщения из скрытого форума .Да ладно? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 21 Мая 2007 Жалоба Поделиться Опубликовано 21 Мая 2007 Да ладно? Да, можно ... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 22 Мая 2007 Жалоба Поделиться Опубликовано 22 Мая 2007 Так что твои обвинения в мою сторону, что я не думаю о нагрузке - неправдаНе, ну я ж сразу сказал, что это лишь только мои доводы, а весь остальной текст - их обоснование. Ни кого я не обвиняю и не стараюсь приобщить к моему мнению. Так почему это не оптимизация когда при нажатии на "цитата" в старой версии происходит переход на следующую страницу, который выполнит этих запросов десяток, а в новой версии для такой мелочи как цитата во-первых не надо переходить на новую страницу, во-вторых - использовать 1 запрос к базе, а не 10?Ну эт смотря как делать.Если делать правильно, то перед тем как выдавать пост для цитаты надо заселектить все те же запросы, что делает обычная цитата. Иначе просто не проверишь, а можно ли юзеру цитировать данный пост. Поэтому одним-то запросом не обходится.Конечно в 2.х есть кеш, и я не знаю что там выполняется, но всё-равно овчинка выделки не стоит ИМХО. джаваскриптовая, что работает через выделение - может не подойти пользователюВыше в моём посте я как раз её имел ввиду.Не знаю, что за требования такие у меня никогда не было потребности соблюсти в цитате полное начертание поста.Может только у меня.. Да, можно ...Ну само собой, ты можешь наджойнить этих запросов все в один, сделав мешанину. Только ведь тоже самое ты всё можешь сделать в обычной цитате. Там эти запросы разнесены для удобства проверок, читабельности кода и в связи с особенностями наследования класса Post.Вот и получается, что запросов-то собственно одно и тоже количество (если извернуться) и в той цитате и в той цитате. И никакого выйгрыша не вижу. А проигрыш вот: в данном моде вся цитата в виде нагромождения BB тегов (раз отказываемся от ява-скриптовой) попадает в крохотную текст-эрию формы быстрого ответа, в которой оно даже не умещается. Надо ли говорить, что отвечать так неудобно? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Arhar Опубликовано 22 Мая 2007 Жалоба Поделиться Опубликовано 22 Мая 2007 ну так сделать текстерию большого размера))) Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 22 Мая 2007 Жалоба Поделиться Опубликовано 22 Мая 2007 С самого начала наблюдаю за темой и не могу понять чем вам не подходит обычная цитата при нажатии на никней. По сути тоже самое, только удобней, так как вы цитируете только выдиленный текст а не полностью весь пост пользователя. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 22 Мая 2007 Жалоба Поделиться Опубликовано 22 Мая 2007 С самого начала наблюдаю за темой и не могу понять чем вам не подходит обычная цитата при нажатии на никней. По сути тоже самое, только удобней, так как вы цитируете только выдиленный текст а не полностью весь пост пользователя.Во-первых мультицитата требовалась. А выдель кучу кусочков+кликать долше чем кликать один раз. К тому же так можно использовать механизм мультицитаты форума, цитировать посты с разных страниц темы, а если выделением вставлять, то нужно будет ещё и копировать при переходе по страницам или дополнительный скрипт вешать коего я ни у кого не видел пока что Во-вторых (тут моё мнение различается с мнениями некоторых участников дискуссии) может потребоваться при цитировании сохранять форматирование. Неприятно, когда при цитировании выделением приходится либо удальть рудименты типа "Код" или "Цитата" или дописывать оформление P.S. Всё вышесказанное мной не означает, что цитата выделенного является плохой. Она очень хороша для ускорение процесса цитирования. Но она по смыслу отлична от того что обсуждается здесь Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 22 Мая 2007 Жалоба Поделиться Опубликовано 22 Мая 2007 Ну само собой, ты можешь наджойнить этих запросов все в один, сделав мешанину. Ты меня наверно за идиота принимаешь . Вовсе не так, и без кеширования ничего в оперативную память. Будет один запрос: SELECT post_date, post, author_name FROM ibf_posts WHERE pid=### С яваскриптовой цитатой текст цитируется не такой как написан, это значит пропадает форматирование текста и смайлики (если фаефокс, то прибавляется еще альт-текст "emoticon", ну это можно изменить на код смайла) и то, что указал Sannis. Если нужно процитировать весь текст поста (может не большой пост) - надо выделять и нажимать, а так просто нажал. Это тоже есть недостатки... В ИПБ 2.х есть и ява-скрипт цитата, и обычная (но не на ajax, а с открытием полной формы ответа). Так вот можно обычную цитату сделать на ajax. Запрос при цитировании будет 1 + нет неудобных переходов между страницами. Даже с цитатой 2.х стиля +Цитата можно поступить таким образом: сначала отмечаются посты как и раньше (при этом можно отказаться от КУКИСов, а это уменьшение http-запроса ), потом над формой ответа или где-то рядом появляется кнопка "вставить цитаты" и при нажатии аджаксом подгружаются. Кнопку для обычной цитаты ( такую - http://www.ibresource.ru/forums/style_imag...rv2/p_quote.gif ) можно переделать: если выделен текст, то он цитируется яваскриптом, а если текст не выделен, то запрос аякс на цитату. Конечно для полного счастья надо сделать так же и загрузку расширенной формы ответа (вместо "маленькой"), черновик как в гугле (чтобы можно было бегать по страницам и цитировать; или для этого альтернатива - мод как у винграда быстрый переход по страницам , но я тоже такое не поддерживаю, тем более ниодного, что я указал здесь у них не сделано) и предпросмотр, но это уже другие вопросы. Еще очень хорошо удалить перед цитированием вложенные цитаты и преборазовать пост как я уже указывал цитата 1какой-то текст ответ на цитату 1цитата 2какой-то текст 2...цитату nкакой-то текст n В форму быстрого ответа копируется как: какой-то текст ответ на цитату 1здесь уже юзер пишет сообщениекакой-то текст 2...какой-то текст n... Обычно добросовесный юзер стирает такие вложенные цитаты сам (недобросовесный так и оставляет потому что ему лень или любитель оверквотинга ]:->). Так лучше будут восприниматься сообщения (хотя не всегда) и будут меньше по размеру. Уж эти факты перекрывает те единичные случаи когда действительно надо цитату в цитате процитировать. Хотя такие тоже могут быть . Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 22 Мая 2007 Жалоба Поделиться Опубликовано 22 Мая 2007 Hostem, мод о котом мы здесь говорим я ещё вчера в архив выложит, так же как и мод для цитаты только одного сообщения Со стиранием вложенных если настроено, со всем форматированием, с ником и датой в цитате и т.д. Ссылки для соответствующих действий как раз как вы описали, кроме разве что "если выделен текст, то он цитируется яваскриптом, а если текст не выделен, то запрос аякс на цитату". Мод расширенного ответа для 2.1 есть, для 2.2 вроде функционал и так нормальный... P.S. И всё равно интересно как одним запросом вы собираетесь обеспечить выполнение ограничений... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 22 Мая 2007 Жалоба Поделиться Опубликовано 22 Мая 2007 Ты меня наверно за идиота принимаешь . Вовсе не так, и без кеширования ничего в оперативную память. Будет один запрос:Так писать это верх невежества.Ибо я подменю этот pid и узнаю возможно скрытую информацию.А поэтому надо сначала заселектить read_perms (в 1.х) и сначала проверить.В 2.х такая инфа есть в кеше (у меня к слову тоже кеш есть по этому делу), поэтому достаточно проверить по кешу. Но это означает, что запроса по read_perms и в основном цитировании нет.Я всё ещё не понимаю в чём мы бережём запрос.Кончено мы бережём те запросы, что в index.php идут (те же кеши), это безуслово, но с этим считаться.. Я не знаю как ajax сделан в 2.х мне кажется, что при его инициализации там просходит вся та же стартовая подготовка (кеши, скины, ланги и пр.) (не зря ж там идёт через act=xxx) т.е. всё равно запросы выполняются. Получается, что выгода чисто визуальная - "нет неудобных переходов между страницами".Ну это для кого как. Мне по удобству очень часто полная цитата. Хотя бы потому, что там поле больше и подготавливать пост удобней. P.S. И всё равно интересно как одним запросом вы собираетесь обеспечить выполнение ограничений...Да никак. Он предлагает на них забить. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 22 Мая 2007 Жалоба Поделиться Опубликовано 22 Мая 2007 Song, если не знаешь, то лучше молчи . Я не предлагаю такого варианта, когда подменяешь pid и можно прочитать пост скрытого форума. Еще раз повторяю: можно сделать так, что без запроса к инфе о форуме, без запроса к инфе о мембере, без запроса к инфе о топике (если там какие-то ограничения стоят) - можно используя ajax проверить нужно ли выдавать это сообщение. Если внимательно подойти к вопросу... Перед тем как вывести кнопку "цитата" напротив сообщения мы ее выводим тому, кому надо (тут уже нужно сделать соответствующие запросы), раз так то введем в запрос ajax дополнительный хеш по входным параметрам (т.е. будет дополнительная функция, никому точно неизвестная). На стороне ajax по той же функции проверяется совпадают ли параметры (номер поста или форума допустим) с хеш-суммой от этих параметров. В качестве параметров можно использовать текущий месяц, придуманный "ключ", о котором никто не узнает и т.д. Т.е. загружаем тему, в ней идут посты, $pid - номер поста... ссылка на цитату будет исполнять аякс-запрос для цитаты, который передает параметры серверу "pid=$pid&checksum=".checksum($pid). На стороне аякс выполняется проверка if ($checksum!=checksum($pid)) { ...цитату нельзя выводить} (здесь $checksum и $pid - то, что передается через аякс) Простейший пример функции checksum:function checksum($pid){ return md5("!@$%#KEY".$pid);} Тут несколько условий:- Функцию checksum никто кроме админа не должен знать- Если md5 используется, то так чтобы не расшифровали, т.е. просто md5($pid) не писать .- Желательно как-то закрывать доступ тем, кто имел доступ к разделу, но лишился его. Как вариант - использовать дату (самый простой, но имеет пару недостатков), остальные - сложнее. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 22 Мая 2007 Жалоба Поделиться Опубликовано 22 Мая 2007 Song, если не знаешь, то лучше молчиХорошо. Самоликвидируюсь из этой темы.Даже читать твой пост дальше не буду. Зааджаксите хоть весь форум.Пойду сделаю быстрый ответ на аджаксе. Вот это действительно нужная и удобная вещь. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 22 Мая 2007 Жалоба Поделиться Опубликовано 22 Мая 2007 Сомневаюсь, что не прочитал и наверно сам решил так сделать, ну ладно ... Способ без подключения к БД (если нет таких тегов, которые нельзя обратно преобразовать)1. Обрамляем посты дивами. (в 2.х уже обрамлены)2. Запрос аякс заключается в следующем - вытаскиваем текст поста джаваскриптом и передаем через аякс текст поста без тегов. Потом пользуемся функцией обратного преобразования. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
dimitry Опубликовано 23 Июля 2007 Жалоба Поделиться Опубликовано 23 Июля 2007 А возможно ли сделать функцию мультцитирования для IPB 1.3 так, чтобы существовали кнопки Цитата+ и Цитата- и при их нажатии в ответ парсились выбранные посты в цитатах? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 27 Декабря 2007 Жалоба Поделиться Опубликовано 27 Декабря 2007 Можно всё. В форму быстрого ответа, или как в новых версиях? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.