Comments 10
Отлично, но вайбы как-будто я в 90е окунулся. Сейчас уже так не делают. На сервере выставляют API, а из странички с JS приложением обращаются уже к бэкэнду.
Ну что сделал -- молодец. Однако с точки зрения практичности такой статьи - довольно сомнительно. Есть вполне обоснованное сомнение в том, что никакой практической пользы она не несёт: Код процедурный и ниже среднего качества; Архитектура... Ну такое. Есть даже места, которые ни в коем случае на реальных проектах писать не стоит.
Ну вот и получаем, что в целом из позитивного тут только: Молодец. Сделал полезный проект для себя и потренировался, научился чему. Школам таким пользоваться, очевидно, не стоит. Не только с точки зрения кодовой базы, но сколько с точки зрения огромнейшей дыры, когда public смотрит в корень проекта.
Так что желаю не останавливаться на достигнутом, но на текущем этапе проект очень далеко до поставленной цели.
Цель статьи была в том, чтобы никто моих ошибок не повторял (код, структуру таблиц и пр.).
Так никто и так не повторяет :) В таком стиле уже лет как 20 не пишут.
Мне вот даже интересно, откуда вы брали примеры кода? Что за книгу вы купили? Ведь даже идиот Робин Никсон в последних изданиях не пишет настолько чудовищные вещи. Если смотреть правде в глаза, то вас тут не размазали только потому, что никто не потрудился заглянуть в код. А учитывая, что в своей статье вы делали что угодно, только не разбирали этот кошмар, то ваше заявление про "чтобы никто не повторял" выглядит довольно жалко. Собственно, из ошибок вы упомянули только один косяк в структуре таблиц, из, минимум, десятка.
В целом, конечно, к теме "чтобы никто не повторял" это нелепое произведение не имеет никакого отношения. Скорее первая проба пера начинающего автора, такой лучащийся гордостью отчёт о проделанной работе, который годится разве что в школьную стенгазету, а на Хабр он попал по недоразумению.
Впрочем, не принимайте мои слова близко к сердцу (я уверен, что вы и так не принимаете, но всё равно чувствую себя обязанным это сказать). Хотя для Хабра образца хотя бы двухлетней давности эта статья - просто позор, для школьника это довольно сносное произведение. А тот факт, что вы его осилили говорит о том, что у вас есть потенциал и, возможно, со временем вы научитесь писать сносно - как код, так и тексты.
Я старался в статьей рассказать очень кратко об этом проекте и разбирал те части, к которым у меня остались иллюстрации, чтобы у пользователя было правильное представление того, как выглядит сайт, поэтому я не стал каждую строчку разбирать. Если бы я и написал такую статью, то читать бы ее пришлось больше 2-х часов и никто, конечно же, до конца её не дочитает.
Почему бы мне просто не запустить проект у себя на компьютере? Дело в том, что на гитхабе самая актуальная версия системы.
Мне кажется, вы не прочти мой комментарий.
Попробуйте прочитать его ещё раз, не торопясь. Подумайте - о чём он. Посмотрите, нет ли в нём вопросов, на которые вас попросили ответить. Задумайтесь над вопросом, нужно ли в хабе, посвящённом серверному программированию, описывать то, как выглядит ваш сайт. Или интересно ли профессиональным разработчикам, составляющим аудиторию Хабра, получать представление о первом, очень слабом проекте начинающего программиста. просто представьте себе свою потенциальную аудиторию. Кому в принципе адресована ваша статья?
Статья адресована новичкам, которые тоже хотят делать проекты, связанные с образованием (или же для школ), чтобы они не допускали таких ошибок, как тут.
Ошибку (разобранную) я вижу тут только одну, со структурой таблиц. При этом использованное решение объясняется почему-то не показом новой структуры таблиц... а картинками, показывающими интерфейс. Но при этом вижу другие ужасы со структурой таблиц и чудовищный код, на который я дал ссылку, и о котором вы вообще ни словом не заикнулись. То есть со всем остальным, по-вашему, всё в порядке? И вы предлагаете новичкам писать именно так:
if ($_COOKIE["acclogin"] == $login) {
$isAuthor = true;
}Вот с этим детским лепетом вместо авторизации, когда достаточно подменить куку чтобы авторизоваться под кем угодно?
$publicid = $_GET["id"];
$res = $conn->query("SELECT * FROM `communities` WHERE `publicid` = '$publicid'");С хрестоматийной инъекцией из комикса про мальчика Bobby Tables?
$res = $conn->query("SELECT `id` FROM `communityposts` WHERE `community` = '$publicid'");
$id = $res->num_rows+1;с нелепым инкрементом, который сломан даже в рамках своей собственной кривой логики?
Вот вы сейчас это серьёзно, считаете что можно рекомендовать новичкам проект, написанный по стандартам прошлого века, причём с детскими ошибками, которые уже тогда считались позором?
Как я собственный электронный журнал писал