{% else-1 %}
Обновить | Подписаться | Поднять тему
Чтобы выполнить действие авторизируйтесь или пройдите регистрацию на сайте.
21.
3KZO * 4.92
[автор] (8 фев 2017, 22:54) [0/0] [0] [отв] [спам] [под] +1 | -1

хм.. связь java, c++ и js.. интересно))


From paradise with love
22.
3KZO * 4.92
[автор] (8 фев 2017, 22:56) [0/0] [0] [отв] [спам] [под] +1 | -1

bibilink, я больше по яве и c++ убиваюсь.. там есть где развернуться.. можно взять во внимание и actionscript (flash), но не сказал бы что он так эффективен как вышеперечисленные мною языки.
Добавлено 09.02.17 в 00:31:52:
Часть кода..

http://dumpz.org/2497142/


From paradise with love
23.
abler98 * 22.68
(10 фев 2017, 19:06) [0/0] [0] [отв] [спам] [под] +1 | -1

3KZO, о, ясно, можно не ждать.

24. (10 фев 2017, 19:17) [0/0] [0] [отв] [спам] [под] +1 | -1

3KZO, меня добавь http://vk.com/ebatih у меня в друзьях есть djpasica создатель 4мас и дройдера

25.
BoB * 0.34
(10 фев 2017, 20:06) [0/0] [0] [отв] [спам] [под] +1 | -1

Могу помоч с графикой, если нужно *

26.
3KZO * 4.92
[автор] (12 фев 2017, 15:40) [0/0] [0] [отв] [спам] [под] +1 | -1

Всем привет) Расскажу немного о ходе продвижения в написании цмс.

1. Убрано с кода всё лишнее.
http://dumpz.org/2497227/ на выходе мы получим следующее http://dumpz.org/2497228/
2. Безопасность, ввод данных и формы.
Написал небольшой, но удобный класс для построения форм. Написал до ужаса простую проверку на CSRF, т.е на частые запросы или повторые запросы с форм.
http://dumpz.org/2497229/
3. Написан дизайн) Постарался человек, под ником us{141} (pasha963)
Скриншот: https://pp.vk.me/c637422/v637422246/311d8/tiWInVle0bs.jpg
4. Написан очень удобное js ядро, который позволит удобно, а главное качественно создавать отдельные модули не занимая много места в плане кода.


From paradise with love
27. (12 фев 2017, 15:53) [0/0] [0] [отв] [спам] [под] +1 | -1

привет, че везде разные названия проекта?* то атом то солар
Добавлено 12.02.17 в 15:55:14:
+ не хочу обижать Pasha963™, но не пора ли рисовать что то новое? Понимаю что это для пабла, но все же
PS я не говорю что ты г.дизайнер

28.
3KZO * 4.92
[автор] (12 фев 2017, 16:08) [0/0] [0] [отв] [спам] [под] +1 | -1

мне кажется что и это название я поменяю))

Вообще думал назвать Атом, потому что вес маленький, потом назвал Солар, что в переводе как Солнечный.. Сейчас думаю сменить на что-то более посерьезней.. хотя мб и останется.)


From paradise with love
29. (12 фев 2017, 16:10) [0/0] [0] [отв] [спам] [под] +1 | -1

Экзо снова в большом кодинге *

30.
abler98 * 22.68
(12 фев 2017, 16:29) [0/0] [0] [отв] [спам] [под] +1 | -1

3KZO, возможно я придираюсь, но где всё это:
1. Одна точка входа (сейчас это почти как стандарт, так как с твоим подходом даже роутинг толком не сделать)
2. Шаблоны (я про разделение логики и представления)
3. Безопасность (для паролей уже даже дока по PHP не рекомендует использовать md5)
4. Могу ещё дополнить список, если интересно

Немного Code Review:

include __DIR__ . '/sys/start.php';
- Уже говорил про единую точку входа. Писать это на каждой странице не есть гуд.

[code]
if ($user !== null)
{
Удалён /');
exit;
}
[/code]

- Классика, так и остались на уровне DCMS... Пора уже понять, что поддерживать такой код - занятие для извращенцев. Прикажешь следить за тем, чтобы я не переопределил жизненно важные переменные у себя в коде?
- Какая нафиг ошибка может быть вызвана при установке заголовка?
- Предлагаешь делать подобную проверку в куче с остальным кодом, про middleware не слышал?

[code]
$doc = new document();

$doc->title = 'Вход';
[/code]

- Очень полезный класс, с таким же успехом можно вручную подключать все части представления... Есть же готовые шаблонные системы, которые можно легко интегрировать с свою систему, только для этого нужно саму систему переписать *

[code]$security = new Security();
$security->is_valid($_POST['anti_csrf'])[/code]

- Мне почему-то кажется, что от этого класса вообще нет толку, тебе просто захотелось создать новый класс
- А ещё стрёмно обрабатывать разные запросы в одном месте (я про отображение формы и её же обработку)
- isset($_POST['anti_csrf']) - почему именно так? Неужели нельзя проверить метод запроса?

[code]$bind = [];
$bind[] = $_POST['name'];
$stmt = $db->executeQuery('select * from `users` where `users`.`name` = ? limit 0, 1;', $bind);
if ($stmt->rowCount() != 0)
{

$row= $stmt->fetch();
if ($row['password'] == md5($row['id'] . md5($_POST['password'])))
{

$token = md5(rand());
$bind = [];
$bind[] = $token;
$bind[] = $row['id'];
$db->executeQuery('update `users` set `access_token` = ? where `users`.`id` = ?;', $bind);
$_SESSION['user'] = $token;

Удалён /');

}

}[/code]

- Где проверка на наличие ключа name у переменной $_POST ?
- $stmt->rowCount() - почему нельзя сделать просто fetch(), а потом проверить $result !== false, ты же два запроса таким образом делаешь
- Про md5 уже говорил, забудь про него, когда речь идёт о безопасности паролей
- Ну ток ладно, md5 сойдёт, но какой нафиг access_token? Ты хоть знаешь, что это такое? Назвал бы уже просто - token
- Надеюсь ты хоть добавил ключ UNIQUE для поля token в таблице users?
- Снова подавление ошибки в самом ненужном месте
- Желательно после установки заголовка Location убрать весь ненужный вывод (я про форму ниже), т.е. просто добавить exit

[code]
$form = new FormForm();
$form->action('/login.php');
$form->method('POST');
$form->input([
'type' => 'hidden',
'name' => 'anti_csrf',
'value' => $security->getToken()
]);
$form->label('Имя');
$form->input([
'name' => 'name'
]);
$form->label('Пароль');
$form->input([
'type' => 'password',
'name' => 'password'
]);
$form->submit('Войти');
$form->display();[/code]

- FormBuilder - дело вкуса, но если и создавать свой Builder, нужно хоть как-то упростить процесс создания формы... Как минимум, можно избавится от необходимости добавлять anti_csrf вручную. Про остальное говорить не стану, я бы вообще удалил это класс.

P.S. Я и сам раньше писал примерно такое, но это была просто практика, а не попытка написать свою CMS для общего доступа. Вот увидит твою CMS человек без опыта и будет также писать, это очень тормозит процесс развития. Пожалуйста, остановись, не нужно выкладывать это, лучше займись чем-то другим.

Чтобы писать сообщения авторизируйтесь или пройдите регистрацию на сайте.
Подписаны: 0
Скачать тему | Файлы темы | Фильтр сообщений