Система комментирования Comments+2.0
Система комментирования для сайта Comments+2.0. Основана на файлах. Никаких баз данных.
Работает автономно!
Тестовая страница - здесь.
Навигация по Comments+2.0
- Зачем, почему и вообще... Comments+2.0!?
- Отдельная страница всех комментов....
- Файл : "main_config_com.php".
- Session(сессия) админа. Роли пользователей.
- Сессия зарегистрированного пользователя.
- Проверка email пользователя.
Не зарегистрированный пользователь с граватаром - код написан.
Друзья! Простите,что всё так долго!- Аватар в Comments+2.0!?
- Gravatar в Comments+2.0!?
- Переменная $hp_page_2_0
- Картинка +ссылка(url + img).
- Смайлы.
- Все клавиши быстрого ввода.
- Все bbcod
ы . - Файл доп настроек -"pages.php".
- Немного истории...
- Переcборка комментов в 2026.
Но у меня столько дел, что на комменты остается очень мало времени!
Сам уже давно хочу закончить эту резинку...
Я возобновил работу над системой комментирования Comments+2.0.
-
Файл pages.php.
Файл "pages.php" - файл доп.настроек...
Персональные последние сообщения в правом сайдбаре.
Для отдельной страницы можно выставить в настройках - персональные последние 10
Т.е. те сообщения, что вы видите справа(для пк) в сайд баре можно сделать отдельными для любой страницы!
Рассмотрим пример - "персональные последние сообщения".
Например, на данной странице, которая имеет адрес
https://dwweb.ru/comments+2.0.html я хочу показывать только комменты относящиеся только к этой странице... для этого мне понадобится:
Изменяемая часть скрипта выделена зеленым...
Открываем страницу "
/inc/pages.php " и прописываем вот такой код :
Про переменную
$hp_page_2_0 написано выше...И если она($hp_page_2_0) равна адресу в адресной строке, то включаем "персональные последние сообщения"... всё просто...
На стандартные "последние 10 сообщений" - оставленные здесь комментарии записываться не будут...
Для проверки моих слов... откройте любую страницу сайта, ну например вот эту... и сравните правую сторону здесь и на странице по ссылке...
Комменты доступны только админу...
Для отдельной страницы можно установить ограничение отправки сообщений - "только админу":
Указываем в файле "pages.php" три позиции:
Переменная :
На какой странице, например :
https://dwweb.ru/comments+2.0.html
Переменная $only_admin :
На данной странице... это включено...
Зачем, почему и вообще... Comments+2.0!?
Переписано.
Естественный и первый вопрос возникает зачем "Comments+2.0"!?
Самая главная причина создания собственных комментов:
На тот момент(предположительно 2013), когда я начал задумываться о комментах на сайт, то такую, какая мне нужна - её не существовало!
Поэтому... я подумал, что я смогу написать свою собственную систему комментирования!!!
Ещё почему собственные комменты!?
Просто так, без цели, себе придумывать задачу очень странно, вот в виде цели принята собственная система комментов.
Какая версия собственных комментов:
Сказать точно...не представляется возможным...
Предположительно 7 - 8 версия.
Почему отказался от собственных комментов:
В какой-то момент, захотел написать скрипт комментов, чтобы комменты добавлялись без перезагрузки... но видимо, тогда, знаний было недостаточно и я остановился, забросил работу над кодом.
А комменты были нужны прямо сейчас... и вот так решил временно поставить комменты от Вк.
2022 - 2025 : почему возобновилась работа над собственными комментами!?
Все-таки я не мог успокоиться и работа шла не шатко не валко... несколько лет...
Система застряла весной 2025 года... где-то в апреле... до садистского сезона.
Декабрь 2025 : почему возобновилась работа над собственными комментами!?
И после активного занятием "все ссылки в одном месте" + стилизации профиля...
Мне понадобился скрипт, аля твиттер... и тут думаю... "господи"!!! да у тебя же почти готова система комментирования... почему бы её не использовать!?
Но уже с другими мыслями..., что были у меня более чем полгода назад...
+ Вк комменты снова не работают...
Бл*ть "Вк" вы затрахали! Вк реально засношал!
Это уже на моей памяти 2 раз как они опять какую-то херню придумывают...
И мне же заняться больше нечем, как снова в этом бардаке разбираться!
Яндекс и Вк близнецы братья! Они видимо инструкции к коду заказывают у бывшего доктора, который так пишет, чтобы ни одна сволочь не смогла разобрать, что там написано!
Отдельная страница всех комментов....
Страница поменяла адрес... код обновлен.
Кроме того, обновится алгоритм...
Поскольку записывались не все комменты, а выборочно!
Теперь будут записываться
Для всех комментов оставленных в системе комментирования будет отдельный файл со всеми комментами...
https://dwweb.ru/comments_2_0/all_comments.php
Ёще нет...
Для админа есть отдельная кнопка удалить...
Все остальные действия с комментом по ссылке "
Можно скрыть все комменты с помощью переменной в файле
$all_comments = 'show ';// показываем
$all_comments = 'hide';// скрываем.
Файл : "main_config_com.php".
Файл размещаем на вашем сайте после автозапуска сессии админа, таким образом :
include $_SERVER['DOCUMENT_ROOT'] . '/comments_2_0/include/main_config_com.php' ;
Session(сессия) админа.
Я даже не буду примерно рассказывать, сколько здесь было текста! Ужас!
Как работает сессия админа!?
Если вам требуется система комментирования,то это значит, что у вас есть сайт.
Если у вас есть сайт, то у вас есть "сессия админа"!
Если вы не знаете, что такое "сессия ", то... боюсь, что вам нужно начинать изучать, что такое сессия!
Вам потребуется заменить условие на своё, в ниже приведенной строке, в файле "main_config_com.php" и заменить вот эту часть:
$_SESSION['user']['id']=='97cbe03a4b35406aa84eb78a9b65bd4d'
if($_SESSION['user']['id']=='97cbe03a4b35406aa84eb78a9b65bd4d')$_SESSION['admin_2_0']= 'admin_2_0'; //admin 1
...если у вас существует сессия админа вот такая :
$_SESSION['admin']=1
То ваше условие и строка должна выглядеть примерно вот так:
if($_SESSION['admin']) $_SESSION['admin_2_0']= 'admin_2_0';
Написать данный пункт заняло 20 минут!
Вы не поверите... прошлое описание делал полдня и то не дописал! 
Роли пользователей.
Будет несколько ролей:
Админ.
Зарегистрированный пользователь.
Гость.
Сессия зарегистрированного пользователя.
Для того, чтобы в комментах заработала сессия зарегистрированного пользователя необходимо:
Чтобы на вашем сайте,
Сессия с идентификатором пользователя:
Сессия с именем пользователя :
Либо создать выше приведенные сессии на вашем сайте.
Тогда в комментах ничего менять не нужно!
Второй вариант, изменить 3 строки в комментах!
1). Создать выше приведенные сессии на вашем сайте.
Давайте подробнее остановимся на этом варианте. Этот вариант
Создаем две сессии на вашем сайте, такого типа :
$_SESSION['user']['id'] = $_SESSION['id_user_на_вашем_сайте '];
// либо сессия, либо переменная...
$_SESSION['user']['name'] = $_SESSION['name_user_на_вашем_сайте '];
// либо сессия, либо переменная...
Я не знаю сессию пользователя...
Если у вас есть сайт, то есть и зарегистрированный пользователь, вам только и всего-то нужно это узнать...
Заходим на
И где-то в коде ставим вот такую конструкцию и вы узнаете, какие сессии существуют:
print_r($_SESSION);
2). Второй вариант, изменить 3 строки в комментах!
Если по какой-то причине, вам не подошел вариант №1 используем второй вариант:
Но и здесь потребуется идентификатор пользователя и имя!
Строка №1 -
$_SESSION['user_2_0']['name'] = $_SESSION['user']['name']; // for reg user_name
if($_SESSION['id_user_на_вашем_сайте '] and $_SESSION['name_user_на_вашем_сайте '])
Строка №2 - заменяем "
$_SESSION['user_2_0']['id'] = $_SESSION['user']['id']; // for reg user_id
$_SESSION['user_2_0']['id'] = $_SESSION['id_user_на_вашем_сайте '];
Строка №2 - заменяем "
$_SESSION['user_2_0']['name'] = $_SESSION['user']['name']; // for reg user_name
$_SESSION['user_2_0']['name'] = $_SESSION['name_user_на_вашем_сайте '];
Проверка email пользователя.
Смысл очень простой... чтобы сторонний пользователь не использовал уже зарегистрированный емайл на вашем сайте!
После положительной проверки, пользователя по емайлу, его перекинет на форму входа.
Если вам такая проверка не нужна, то просто очистите данный файл, пусть он будет пустой...
Если вам требуется проверку сделать на регистрацию, то наверняка она у вас на сайте где-то сделана...
Этот код просто помещаем в данный файл.
После подтверждения регистрации пользователя у вас на сайте, в последнюю строку файла is_email_2_0.php помещаем ответ:
if( здесь ваша проверка ) exit('Такой емайл зарегистрирован!');
В файле "main.js" заменяем мою ссылку на вход на свою.
var hp_red = 'https://dwweb.ru/login.html';
Для проверки работоспособности моего кода, вы можете проверить и написать какое-то сообщение с емайлом :
Одновременно...
Часть кода для незарегистрированного уже тоже написана!
Аватар в Comments+2.0!
Всего существует несколько алгоритмов аватара.
Настройка аватара в Comments+2.0!
Если вы ставите настройки на свой сайт, то предполагается, что у пользователя есть "аватар"...
С помощью функции "returnUseAva" в файле "/inc/.func.php".
В первой части возвращает именно такой аватар, на моём сайте... вы ставите свой код, создания аватара.
Возвращаемый адрес аватара в переменной "$hp_user_ava" :
$path = '/user/'.$e[0] .$e[1] .'/' . $e . '.png';
$sp_user_ava = $home. $path;
$hp_user_ava = $domen. $path;
Собственно мой аватар выводится именно так...
Для
Для
Gravatar и аватар в Comments+2.0!?
Не буду рассказывать что такое Gravatar - вы можете прочитать здесь.
Там, правда, уже дизайн сайта совсем другой, но кто пользовался тот знает, а вы, если не пользовались, то скорее всего проигнорируете...
Настройка Gravatar в Comments+2.0!
Всего существует несколько алгоритмов аватара и Gravatar - а:
Если вы не хотите его использовать, то просто переменную $gravatar переводите в выключенное состояние...
Файл "/inc/config.php":
$gravatar = 'off';
Если человек зарегистрирован в Gravatar - е, то будет выводиться тот "аватар" , который есть в Gravatar - е.
Зарегистрировал два аккаунта в граватаре, когда еще 10 лет назад, хотел написать свои комменты...
Здесь коммент с применением Gravatar - а.
И не использование граватара будет выводиться "no_foto":
Пример такого сообщения с таким аватаром.
Как работает Gravatar в Comments!?
Вообще...изначально предполагалось, что будет выводиться ссылка изображения с сайта Gravatar.
Но когда я написал предыдущую версию с использованием ссылок на сайт Gravatar, то "комменты" стали тормозить!
Что, естественно мне не понравилось!
И я написал пару строк кода, чтобы это исправить...
Картинка аватара загружается в папку ava.
С помощью функции file_get_contents получаем картинку.
С помощью file_put_contents сохраняем аватар.
Переменная $hp_page_2_0.
За мое время в программировании, я выработал некоторые правила создания переменных... и когда смотришь на переменную, то сразу понимаешь, что это!
Расшифровка переменной $hp_page_2_0.
Например : https://dwweb.ru/__img/smaile/thumbs_up2.gif
Суммарно
https://dwweb.ru/comments+2.0.html
Поскольку переменные в комментах могут пересекаться с переменными на сайте, а выдумывать новые как-то не хотелось, поэтому, все похожие и не похожие переменные имеют в конце добавку 2_0
Что выводит $hp_page_2_0 на экран?
Давайте выведем, что в данном случае выведет на экран эта переменная используем :
<?
echo $hp_page_2_0;
?>
Прямо здесь поместим выше приведенный код :
Картинка + ссылка(url + img).
Ниже описанная фишка не работает так, как предполагалось...
Объяснять долго... да и зачем...
Если в двух словах - это связано с обработкой комментов... php + js...
Если картинка в ссылке, то под картинкой будет линия, как для ссылки.
При наведении на (url + img) будет появляться рука, как при наведении на ссылку...
С сегодняшнего для картинка в ссылке... будет показываться флажок:
Вот также как здесь в описании :
Смайлы
С сегодняшнего для будут обрабатываться только 4 смайла.




[wall]
[good]
[fuck]
[cry]
Ну... поскольку я пользуюсь вот этими 4-мя, то и загружать кода больше не вижу смысла.
Если вам очень нужно вы можете исправить ситуацию добавить любое количество кода... на любые смайлы...
Всего используется 2 файла:
/inc/.bb_to_html.php - bbcode превращаем в html
.bb_to_html_and_back.js
Bbcode превращаем в html
И обратно...
Все клавиши быстрого ввода.
В комментах bbcode панели не будет... это уже явный перебор...
Останутся только клавишами быстрого ввода см.
Сделал по аналогии с доступными клавишами быстрого ввода для стены.
Все bbcodы .
Надо закрыть тему bbcod-ов, а то, что-то она мне поднадоела...
После некоторой возни с Ббкодами - описанием и т.д...
Решил дальше не делать, здесь на странице...
Как я сделал для стены о Bbcod - ах, сделаю и для комментов!
Да и постепенно забывается, что сделал или не сделал поэтому... здесь будут все теги, которые были протестированы...
Немного истории...
После некоторого раздумья... все старые страницы в топку... это было слишком давно и уже не актуально...
Оставил только вот эти две записи... см ниже..
Pro-DW Comments
После последнего обновления Pro-DW Comments - 1.3.1 , в связи с тем, что назрели кардинальные изменения, обновляться не будет, поддержка прекращена.
Описания последнего обновлений нет.
Пример тестовой страницы
Самая первая версия:
Одна из первых попыток, сделать собственную систему комментирования...
Пересборка комментов в 2026.
Первый вопрос : зачем опять!?
Система собиралась так долго и так нудно, что некоторый код уже устарел.
+ Код был таким запутанным, что невозможно понять, как всё работает!
Так часто случается, когда написание кода растягивается!
Пересобрал начальную форму ввода:
В процессе переборки, вид на скрине и в самих коммента может отличаться...
Для админа, или зарегистрированного пользователя:
Для НЕ зарегистрированного пользователя:
У него есть свои плюсы и свои минусы!
Один из таких минусов : при редактировании, при переносе строки...
Начинается бардак... тег div начинает размножаться ... не по дням, а по количеству сохранения и предохранения... пользователь этого не увидит, но "
Я один раз сталкивался с этой проблемой, пытался её решить через тег br, но тогда у меня ничего не получилось(это было уже давно)...
Ну вот...я пытаюсь снова сделать через перенос... вроде бы всё работает..., но нужно еще протестировать!
Этим вы очень поможете проекту! Заранее огромное спасибо!

31.03.2026 22:16

Т.е. такого кода не существовало!
Кроме маленького php файла, который обрабатывал граватар(этот код я еще... лет 10 наверное назад написал).
Пришлось несколько дней помучить мозг!
Описание будет уже скоро...