1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - коммерческий форумный движок от бывших создателей vBulletin, написанный на PHP.

Дублирование постов при их отправке

Тема в разделе "Баги XenForo", создана пользователем qwertyqwerty, 30.10.2011.

Загрузка
  1. qwertyqwerty

    qwertyqwerty Пользователь

    Регистрация:
    29.10.11
    Сообщения:
    1
    Симпатии:
    0
    Прошу помощи.
    Суть проблемы в том что при нажатии в быстром ответе кнопки "ответить" грузится,пользователь ничего не понимает и нажимает еще раз на "ответить" таким образом у него получается 2 одинаковых поста.Проблема у многих на форуме,бывает нормально добавляет,а бывает вот такое.Думал что просто нужно немного подождать пока загрузится пост,но нет,ничего не происходит,нужно или обновлять страницу(тогда пост появляется) или нажимать еще раз.
    Возможно из-за хостинга?Бд?или другой проблемы?Прошу помочь или хотя бы подсказать.Спасибо.
     
  2. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Обычно такое бывает из-за плохой связи с сервером. Тут может быть виноват хостер, также могут быть проблемы у провайдера.
    Если пользователи приходят с разных провайдеров, то однозначно проблемы с хостингом. База данных тут вряд ли виновата, а вот задержки по доступу к сайту и потеря соединений (именно из-за этого вроде как ничего не происходит, хотя данные могли успеть передаться на сервер) целиком и полностью зависят от хостера. Если был бы виноват сам движок (неправильное расположение файлов или некорректные права), то была бы явно показана ошибка. Если бы не был доступен сервер базы данных (и такое бывает, особенно, если сайт и база данных на разных серверах располагаются), то также ошибка должна была бы явно отобразиться.
    Конечно, могут быть проблемы и из-за js-скриптов и браузера, но это было бы у единичных пользователей, а не повально у всех.
     
  3. madist

    madist Новичок

    Регистрация:
    30.09.12
    Сообщения:
    21
    Симпатии:
    0
    Версия XF:
    1.1.3
    Такая же проблема. Ищу как сделать что бы при нажатии на кнопку ОТВЕТИТЬ страница в браузере обновилась. Куда то надо воткнуть скрипт javascript:window.location.reload() . Кто знает ? Подскажите пожалуйста. Достала эта проблема.
     
  4. madist

    madist Новичок

    Регистрация:
    30.09.12
    Сообщения:
    21
    Симпатии:
    0
    Версия XF:
    1.1.3
    Проблему кажется решил.
    В шаблоне quick_reply перед строкой
    Код:
    <input type="submit" class="button primary" value="{xenhrase post_reply}" accesskey="s" />
    вставляем javascript :
    Код:
    <script type="text/javascript" language="javascript">
    function reloadURL()
    { setTimeout('window.location.reload()',2000); }
    </script>
    Далее в конце строки идущей за вставленным скриптом добавить
    Код:
    onclick="reloadURL();"
    В итоге все должно выглядеть так:
    Код:
    <script type="text/javascript" language="javascript">
    function reloadURL()
    { setTimeout('window.location.reload()',2000); }
    </script>
    <input type="submit" class="button primary" value="{xenhrase post_reply}" accesskey="s" onclick="reloadURL();" />
    Где 2000 это задержка в 2 секунды после которой произойдет перезагрузка страницы.
     
  5. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Оформляйте через тег CODE. Тогда не будут съедаться различные символы.
     
  6. madist

    madist Новичок

    Регистрация:
    30.09.12
    Сообщения:
    21
    Симпатии:
    0
    Версия XF:
    1.1.3
    Спасибо за напоминание. Подправил. Совсем забыл про эту функцию.
     

Поделиться этой страницей