Скрипт модуля - деревоподібні коментарі PHP (Codeigniter) MySQL AJAX (jQuery)

Що ж ми робитимемо і що отримаємо в результаті цього уроку:

скрипт

Завдання цих файлів можна зрозуміти за їх назвами). До речі – система роботи модуля дуже схожа з модулем форми.

Давайте заповнимо основний файл модуля Comments.php кодом - і докладніше познайомимося із системою роботи:

Багато методів нашого нового класу Comments – точна копія Forms, який ми писали у попередній статті – настійно рекомендую ознайомитися спершу з ним!

модуля

Далі функції get_comment_form і get_comment_form_ajax - ідентичні за функцією, але другу можна вивести тільки за допомогою аяксу. Навіщо так робити?

_final та _final_reply - це рендер шаблону, де виводимо подяку для користувача.

деревоподібні

Далі – вихідний код бібліотеки модуля:

Логіку роботи цієї рекурсії ми вже розбирали під час створення модуля меню. Функції ідентичні. Модель із запитами Comments_model.php:

Думаю питань з цим файлом та запитами ActiveRecords не виникне і ми підемо далі.

Далі розберемо форму:

деревоподібні

Шаблони comment_final.tpl та comment_disable.tpl - звичайна верстка:

Ну що ж. Необхідно додати дрібку солі зі стилів:

коментарі

Чудово! Давайте прикрасимо наш унікальний модуль - шматочками ява-скрипта;)

Інші дві функції - це валідація полів форми за допомогою відмінного скрипта bootstrapValidator - який ми так само розбирали у статті форми зворотного зв'язку. Якщо не читали статтю, то негайно перейдіть до її вивчення. У ній ми докладно розбираємо цей скрипт та його роботу. Наш бутстрап валідатор дозволяє на ходу перевіряти помилки при заповненні форми та у разі їх відсутності посилає асинхронний запит на сервер та виводить відповідь у блок із формою відповіді, замінюючи її.