Добро пожаловать, Гость!
:: + Добавить ссылку через биллинг
:: + Добавить ссылку анонимно
ФорумZAYCU.ME - НОВЫЙ ТОП! ДОБАВЛЯЙСЯ
Гаджеты для фитнеса и здоровья
ФорумZAYCU.ME - НОВЫЙ ТОП! ДОБАВЛЯЙСЯ
Гаджеты для фитнеса и здоровья
Рерайтинг движка | GitHub - Страница 0
Предложения и пожелания | Рерайтинг движка | GitHub

Рерайтинг движка | GitHub
3 Авг 2022Доброго времени суток. Набрёл на движок с интернета. Подобные системы - не моя специальность, но я всегда рад помочь в улучшении, если то возможно. Сам занимаюсь Java/C#, но в свободное время балуюсь подобными вещами, поэтому решил подсобить/ускорить его преображение.
Вчера просмотрел движок, чуток очумел от количества мусора, но не всё потеряно. Как я понял, пользуются системой исключительно те, кто любит максимально простой и понятный вид кода без "всяких ваши ООП и т.п.". И хоть двиг подутратил свою востребованность, но, как я увидел, есть ещё много ньюфагов, которые пользуются и, надеюсь, учатся на этой системе.
Мне не помешает человек (или несколько человекОВ), которые давно пользуются этим движком и которые уверенно ориентируются в коде, дабы, при возникновении у меня вопросов, я мог кому-то написать.
На своём старом аккаунте GitHub создал репозиторий для движка. За основу взял версию DS-Special из-за введённой мультиязычности.
ФУЛЛ переписи не планируется, дабы, если у кого-то будет желание, переход на обновлёнку не был тяжёлым. Привычная архитектура, думаю, будет сохранена. Обновления затронут стилизацию кода и удаление излишнего мусора.
Для примера в одном только /sys/inc/user.php было ~27 лишних запросов в базу данных.
От mysql мы уйдём в сторону PDO (простота и, прежде всего, безопасность). Уже имеется обёртка, которая позволит легко и просто осуществлять запросы в базу. "Документация" по ним будет так же на GitHub.
Здесь в теме буду кратко писать ChangeLog'и по изменениям в коде. По мере переписи файлы будут загружаться на git.
Ссылка на репозиторий: GitHub - Dcms-Social
Последний раз редактировалось biket
Вчера в 00:43 2022
Комментарии:

Автор темы
ChangeLog 04.08 11:00
* Все классы из /sys/classes/ переведены на PDO, убраны лишние запросы/условия, неиспользуемые переменные/методы.
(?) Класс avatar - дубляж функций avatar/status, будет редактироваться.
(!) На данный момент весь /sys/ переведён на PDO. Начнём править отдельные разделы от простого к сложному. Классы и функции будут переписываться по мере изменения разделов, сейчас избавились от ненужного в коре, дабы кода была меньше и страницы грузились быстрее.
* Из-за изменения вида запросов уходим от циклов вида while() к foreach(), который так же выигрывает по скорости.
* В db.class.php поправлен метод delete, который давал ошибку.
* Есть устаревшие классы (mp3_id/pear), писавшиеся на PHP 4. Надо будет смотреть замену.
* Сегодня надо будет смотреть регистрацию/авторизацию.

Автор темы
ChangeLog 03.08 20:45
+ На GitHub добавлены примеры по структуре PDO-запросов SELECT (SELECT COUNT), UPDATE, INSERT (INSERT MULTIPLE):
GitHub - Dcms-Social | README

Автор темы
ChangeLog 03.08 20:05
* Все функции из /sys/inc/ перемещены в /sys/fnc/;
* Все функции в /sys/fnc/ переведены на PDO,
===> убраны все лишние запросы (~18),
===> код некоторых функций полностью изменён (прим, sklon_text()),
===> удалены дубляжи функций,
===> во многих были неиспользуемые переменные;
(?) avatar/status частичные дубляжи, будет создана одна; функция;
+ start.php добавлен чекер GET/POST;
+ /inc/database/ - перемещён db.class.php и добавлен db.backup.class.php для создания бекапов базы данных;
(>) На завтра правки - /sys/classes/, /sys/add/.

Автор темы
ChangeLog 03.08 16:30
- mysql2i-файлы удалены, невостребованы;
- compress.php, ipua.php, sess.php, settings.php, home.php - (удалены) нужный код перенесён в start.php;
* fnc.php - теперь содержит только функции;
===> запросы переведены на PDO,
===> убрано немалое количество лишних,
===> убраны неиспользуемые функции,
===> со временем будут удаляться оставшиеся ненужные (как my_esc, vremja);
===> код не функций перенесён в start.php;
* start.php - запросы переправлены на PDO,
===> убрано немалое количество лишних,
===> функции перенесены в fnc.php (за исключением парочки),
===> убран дублированный код,
===> * будет дорабатываться.
* gifdecoder/gifencoder.php - нужно заменить, есть ошибки, пока что убраны неиспользуемые переменные;
* tar.php/zip.php - заменить, много лишнего кода.
* main_menu, main_notes, news_main.php - сделать отдельными виджетами, пока что переведены на PDO, убраны лишние запросы.
+ index.php - выгружена главная страница с уже удалёнными инклудами, немного подправлен.
P.S. Лишних mysql-запросов суммарно нашёл уже ~40-45, все удалены, нужные - оптимизированы в компактный вид. Уже сейчас страницы грузятся быстрее.

Автор темы
ChangeLog 03.08 14:15
+ db.class.php - PDO соединение с форматированием запросов;
* chomd_test.php - значительно упрощена проверка прав доступа к папкам/файлам;
* user.php - переведено на PDO, убраны лишние запросы (~27), сделаны пометки участков кода к удалению/перемещению