Использование AJAX

Проблемы с установкой или работой phpBB 3.0.x? Получите помощь здесь!
С 1 января 2017 года phpBB Group прекращает поддержку phpBB версии 3.0.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.0 до 1 июля 2017 года.
Подробнее: Окончание поддержки phpBB 3.0.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
RazyRx
phpBB 1.2.1
Сообщения: 26
Стаж: 12 лет 9 месяцев

Использование AJAX

Сообщение RazyRx »

Здравствуйте. Форум подогнал под свои нужды, но хорошо было бы все завести на AJAX, что бы быстрые сообщения, благодарности, удаления сообщений и многое другое проходили без перезагрузки страницы
Допустим для благодарностей генерируется вот такая ссылка

Код: Выделить всё

<a href="./viewtopic.php?f=21&p=123&thanks=123&to_id=72&from_id=2" title="Поблагодарить за сообщение автора: Everito"></a>
как можно его запустить по AJAX без перезагрузки страницы?

Я пока что пробовал сделать быстрый ответ с помощью AJAX
получился вот такой код(так как AJAX не использовал раньше, то скорее всего не правильный)

Код: Выделить всё

$.ajax({
    url : link,
    type: "POST",
    data: $(fast_send),
    success: function(data, textStatus, jqXHR)
    {
        $(result).html=textStatus;
    },
    error: function (jqXHR, textStatus, errorThrown)
    {
       $(result).html=textStatus;
    }
});
и вот такой код хоть и отрабатывает, но результата никакого.
я думаю что не совсем понял какие параметры куда записывать.
fast_send - это id формы быстрого ответа
result - это див блок в который пытаюсь записать результат выполнения.
link - это адрес формы.

Мод AJAX Base не дает всего нужного функционала.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 13159
Стаж: 15 лет 1 месяц
Благодарил (а): 236 раз
Поблагодарили: 3750 раз

Re: Использование AJAX

Сообщение Татьяна5 »

Для благодарностей на ajax есть моды - Add-on for Thanks for posts 1.0.0 или [RC] (AJAX ADD-ON) Thanks for posts - Спасибо за сообщение
RazyRx
phpBB 1.2.1
Сообщения: 26
Стаж: 12 лет 9 месяцев

Re: Использование AJAX

Сообщение RazyRx »

Татьяна5 писал(а):Для благодарностей на ajax есть моды
Хорошо, мод посмотрю. Но все равно хотелось бы все остальное тоже на AJAX. Как с быстрым ответом, удалением сообщений и предпросмотром например быть?
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Использование AJAX

Сообщение Sheer »

RazyRx писал(а):Как с быстрым ответом
А что с с быстрым ответом?
[RC] Цитата выделенного в быстрый ответ через всплывашку. и никакого AJAX не надо.
С предпросмотром можно самому написать Как сделать кнопку рефреша? (тут ссылка есть по руководству к действию)
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
RazyRx
phpBB 1.2.1
Сообщения: 26
Стаж: 12 лет 9 месяцев

Re: Использование AJAX

Сообщение RazyRx »

Sheer писал(а):А что с с быстрым ответом?
я о самой отправке сообщения быстрым ответом, когда жмешь отправить то сообщение должно отправиться и добавиться в тему без перезагрузки, просто это будет удобнее.
Так за ссылки на цитату выделенного и на код с обновлением части страницы спасибо, думаю с таким уже лучше пойдет разбор аякса)
Аватара пользователя
Алг
Former team member
Сообщения: 933
Стаж: 14 лет 1 месяц
Откуда: Израиль
Благодарил (а): 85 раз
Поблагодарили: 306 раз

Re: Использование AJAX

Сообщение Алг »

RazyRx писал(а):и вот такой код хоть и отрабатывает, но результата никакого.
я думаю что не совсем понял какие параметры куда записывать.
Мне кажется Вы ещё суть того, что написали, не понимаете. По синтаксису ваш код верный, а смысла в нём нет.
быстрый ответ без перезагрузки - это phpBB jQuery Base, начните его разбирать, да, он полного функционала не даёт, но там немало кода, а Вы хотите получить полноценную подгрузку нового поста, скопировав пару строчек кода отправки данных эджексом ?
Там упёртость и инертность, могут, кстати, в морду дать.
А ты проявляй интеллигентность, постарайся убеждать...

Т. Шаов
RazyRx
phpBB 1.2.1
Сообщения: 26
Стаж: 12 лет 9 месяцев

Re: Использование AJAX

Сообщение RazyRx »

Алг писал(а):скопировав пару строчек кода отправки данных эджексом
ну для начала я хотел сделать отправку поста, это уже было бы хотя бы начало.
ясное дело что потом нужно получить это сообщение и вставить на страницу и обновить форму быстрого ответа новыми данными(что бы следующая отправка была нормальная)
да и скорее всего это еще не все что нужно.
Аватара пользователя
Алг
Former team member
Сообщения: 933
Стаж: 14 лет 1 месяц
Откуда: Израиль
Благодарил (а): 85 раз
Поблагодарили: 306 раз

Re: Использование AJAX

Сообщение Алг »

RazyRx писал(а):ну для начала я хотел сделать отправку поста, это уже было бы хотя бы начало.
ну могла бы сказать, что начало хорошее... но пока не могу.
Первое: Что конкретно вы отправляете?
Там упёртость и инертность, могут, кстати, в морду дать.
А ты проявляй интеллигентность, постарайся убеждать...

Т. Шаов
RazyRx
phpBB 1.2.1
Сообщения: 26
Стаж: 12 лет 9 месяцев

Re: Использование AJAX

Сообщение RazyRx »

ну какое есть, так как весь javascript начал подробно разбирать совсем недавно, а AJAX на живую увидел только 3 дня назад...
Алг писал(а):Что конкретно вы отправляете?
отправляю всю форму быстрого ответа
код формы на загруженной странице 

Код: Выделить всё

<form method="post" action="./posting.php?mode=reply&f=8&t=13">
	<div class="panel" style="display: block;" id="qr_editor_div">
		<div class="inner"><span class="corners-top"><span></span></span>
				<h2>Быстрый ответ</h2>
				<fieldset class="fields1">
					<dl style="clear: left;">
						<dd><input type="hidden" name="subject" id="subject" size="45" maxlength="64" tabindex="2" value="[Подкаст] Что подарить? Автомобиль" class="inputbox autowidth"></dd>
					</dl>
				<div id="message-box">
					<textarea style="height: 9em;" name="message" rows="7" cols="76" tabindex="3" class="inputbox"></textarea>
				</div>
				</fieldset>
				<fieldset class="submit-buttons">
					<input type="hidden" name="creation_time" value="1389733440">
<input type="hidden" name="form_token" value="9c4bdcdbb78c667a980bb3642c3c1e0927141b82">

					<input type="hidden" name="topic_cur_post_id" value="19">
<input type="hidden" name="lastclick" value="1389733440">
<input type="hidden" name="topic_id" value="13">
<input type="hidden" name="forum_id" value="8">
<input type="hidden" name="attach_sig" value="1">

					<input type="submit" accesskey="s" tabindex="6" name="post" value="Отправить" class="button1">&nbsp;
					<input type="submit" accesskey="f" tabindex="7" name="full_editor" value="Стандартный ответ" class="button2">&nbsp;


				</fieldset>
				<a href="" class="right-box up" onclick="hide_qr(false); return false;" title="Скрыть быстрый ответ">Скрыть быстрый ответ</a>
		<span class="corners-bottom"><span></span></span></div>
	</div>
	<div class="panel" style="display: none;" id="qr_showeditor_div">
		<div class="inner"><span class="corners-top"><span></span></span>

			<div class="content">
				<fieldset class="submit-buttons">
					<a name="show_qr" tabindex="1" class="fast-message" onclick="hide_qr(true);return false;">Быстрый ответ</a>
				</fieldset>
			</div>
		<span class="corners-bottom"><span></span></span></div>
	</div>
</form>
в форме я дописывал ссылку с событием onclick где вызывалась функция та что в первом посте
link вот этот брал ./posting.php?mode=reply&f=8&t=13
Аватара пользователя
Алг
Former team member
Сообщения: 933
Стаж: 14 лет 1 месяц
Откуда: Израиль
Благодарил (а): 85 раз
Поблагодарили: 306 раз

Re: Использование AJAX

Сообщение Алг »

RazyRx писал(а):ну какое есть, так как весь javascript начал подробно разбирать совсем недавно, а AJAX на живую увидел только 3 дня назад...
ну что тут скажешь - смелость города берёт, дерзайте!...
теперь про Ваше начало, какое есть.
1. Что такое
RazyRx писал(а): $(fast_send),
?
если это объект типа формы, то как вы собираетесь передать его на сервер?
Поищите для начала в гугле, как передать форму через ajax-jquery

2. в адресной строке у вас стоит posting.php? Почему именно он? Даже, если он получит от Вас всё, что ему надо, и занесёт пост в базу, то что он сделает дальше?
Там упёртость и инертность, могут, кстати, в морду дать.
А ты проявляй интеллигентность, постарайся убеждать...

Т. Шаов

Вернуться в «Поддержка phpBB 3.0.х»