За последние 24 часа нас посетили 22748 программистов и 1268 роботов. Сейчас ищут 793 программиста ...

Написал первые наброски регистрации.

Тема в разделе "PHP для новичков", создана пользователем Михаил Запаленов, 6 сен 2017.

Метки:
  1. Михаил Запаленов

    С нами с:
    2 авг 2017
    Сообщения:
    120
    Симпатии:
    1
    Ребят администрация и т.д, тут не давно мне предложили такую штуку сделать, первые наброски предоставляю, критика в студию!
    Написал не большую регистрацию на ООП + PDO, без шифрование данных, еще не успел, жду оценки и критики аудитории!)

    https://github.com/mishazapl/registr
     
  2. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.632
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    Fell-x27 нравится это.
  3. Михаил Запаленов

    С нами с:
    2 авг 2017
    Сообщения:
    120
    Симпатии:
    1
    Слишком много я тоже так подумал)
    --- Добавлено ---
    Только не могу выбрать что убрать
     
  4. Познающий php

    Познающий php Новичок

    С нами с:
    23 мар 2017
    Сообщения:
    381
    Симпатии:
    74
    Всё убрать. ВСЁ!

    PHP:
    1. private function sendData()
    2.     {
    3.         $this->protect = 'Защита!';
    4.         $protect = new model_query();
    5.         $protect->connect($this->protect, $this->login,$this->password,$this->age);
    6.     }
    Это чего за технологии?
     
    Fell-x27 нравится это.
  5. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    lol в пекло программирование
    --- Добавлено ---
    как будто пассал и радуга появилась
     
  6. Abyss

    Abyss Старожил

    С нами с:
    12 дек 2015
    Сообщения:
    1.298
    Симпатии:
    218
    Адрес:
    Default city
    Критики ?
    Говно.
     
  7. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.555
    Симпатии:
    1.754
    PDO, и ни одного подготовленного запроса. Зато ограничение на символы в пароле...
    Слишком мало. Вон строковых функций в php сколько, поставь все: https://php.ru/manual/ref.strings.html
     
    Fell-x27 нравится это.
  8. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.155
    Симпатии:
    1.769
    Адрес:
    :сердА
    И ссылка на гитхаб идет через вконтакт.
    --- Добавлено ---
    Автор, а как так вышло, что ты, в не статическом классе адресуешься к self::? Ворнингами семерка за такое еще не кидается разве?
    --- Добавлено ---
    PHP:
    1.  private function check_pass()
    2.     {
    3.         if (preg_match('/^[а-яА-ЯёЁa-zA-Z0-9]+$/', $this->password)) {
    4.             self::sendData();
    5.         } else {
    6.             print 'Система безопасности, ошибка пароля!';
    7.         }
    8.     }
    О какой безопасности идет речь? И как она связана с символами в пароле? И почему я не могу использовать в нем спецсимволы, которые заведомо усиливают его в разы?
    --- Добавлено ---
    Далее:

    Код раз
    PHP:
    1.  private function sendData()
    2.     {
    3.         $this->protect = 'Защита!';
    4.         $protect = new model_query();
    5.         $protect->connect($this->protect, $this->login,$this->password,$this->age);
    6.     }
    Два
    PHP:
    1. public function connect($protect,$login,$pass,$age)
    2.     {
    3.         if ($protect === 'Защита!') {
    4.             try {
    5.                 $this->PDO = new \PDO("mysql:host=$this->host;
    6.            dbname=$this->db", $this->log, $this->password);
    7.             }
    8.             catch (\PDOException $e) {
    9.                     echo "Ошибка базы данных, сообщите создателю!<br />
    10.                          mzapalenov@mail.ru";
    11.                     exit();
    12.                 }
    13.             self::checkTable($login, $pass, $age);
    14.         } else {
    15.             printf ("Критическая ошибка! Зафиксированна попытка взлома");
    16.             exit();
    17.         }
    18.     }
    О какой попытке взлома идет речь? Каким образом эта "Защита!" от взлома какого бы то ни было оберегает?
    --- Добавлено ---
    Смысл класть временный "итератор" в объект?
    PHP:
    1. foreach ($this->check as $this->row) {
    2. var_dump($this->row);
    3. }
    --- Добавлено ---
    Ты проверял, это работает?
    PHP:
    1. <form action="<?$_SERVER['SCRIPT_NAME']?>" method="post" id="form">
    Скажу сходу - нет. Ну..форма-то отрабатывает, покуда скриптнейм совпадает с адресом страницы. Но action у тебя в итоге пустой.
    --- Добавлено ---
    Задача подразумевает не введение возраста, а указание даты рождения, не?
    PHP:
    1. Your birthday from 5 to 150
    2.     <br>
    3.     <input type="number" name="age">
     
  9. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.199
    Симпатии:
    184
    убрать всё и забиндить.
     
  10. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    лень писать filter_input_array
     
  11. Михаил Запаленов

    С нами с:
    2 авг 2017
    Сообщения:
    120
    Симпатии:
    1
    Работает, script name, это текущий скрипт, и так по порядку, что и как исправить.
    --- Добавлено ---
    Ахахах какая херь ржу сам с кода, крч по порядку, что на что поменять и почему.
     
  12. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.155
    Симпатии:
    1.769
    Адрес:
    :сердА
    Нет, не работает. <?$var?> и <?=$var>? не одно и то же. У тебя используется первый вариант. Выключишь шорттаги и он упадет.

    А ты ответь на все вопросы, что я задал. Ответь честно. Ты же чем-то руководствовался. Не стесняйся. У тебя же хватило смелости код выложить. Это самое тяжелое, а дальше будет легче :)

    Вот тогда и заладится диалог. До многих вещей ты сам дойдешь, когда проанализируешь то, что написал и постараешься ответы дать.

    А потом я тебе отвечу, сказав, где ты прав, а где нет. И почему, разумеется. И как исправить.
    Такой метод очень помогает учиться.
     
  13. Михаил Запаленов

    С нами с:
    2 авг 2017
    Сообщения:
    120
    Симпатии:
    1
    Про равно забыл,да.
    Защита бессмысленна, т.к. это чушь руководствовался я тупостью, т.к. пользователь ни как не сможет сделать запрос к объекту тому. То что я создал объект модели в классе, так мне в другой теме сказали.
    Временный итератор, не знаю я просто делал проверку, об это я не задумывался, а чем это плохо, и почему нет? Дата рождения, там вроде не было написано именно дата, но могу переделать.
    --- Добавлено ---
    Про статику А, я забыл что нельзя, но ворнингов не было поэтому не исправил из-за этого да и шторм не ругался, может можно уже?
    --- Добавлено ---
    блог с добавлением статей и админку с возможностью добавления статей в БД и выводить их. Вот что я собираюсь после этой регистрации сделать все на чистом пхп ток мы регу сделаем нормально, сделаем более менее хорошую структуру, а потом я сделаю бложек и вам на критику!)
     
  14. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.155
    Симпатии:
    1.769
    Адрес:
    :сердА
    Во-первых выключай самобичевание. Оно не нужно совершенно. Никто тебя не оскорбляет и не собирается. Попытка защититься, оскорбив себя самого - так себе дело. Не надо так, в общем.
    Молодец.
    Вооот. А это важно.
    А что это дает? Это переменная, которая нужна только внутри цикла. Смысл ее хранить дальше? Сентиментальность? Лишние расходы памяти и мусор в свойствах объекта, не более.
    Если ты все же делаешь мою задачу, а похоже именно на то, то там написано, что указывать надо дату.
    Нет, не можно. Это не новая фича. Это старый баг. Суть в том, что ты обращаешься к методам вне контекста объекта. Это автоматом гарантирует непредсказуемое поведение. А оно тебе надо?
    Окей, но пока есть над чем поработать.

    По поводу
    PHP:
    понял, в чем беда?
     
  15. Dilon

    Dilon Активный пользователь

    С нами с:
    4 май 2014
    Сообщения:
    119
    Симпатии:
    4
    Адрес:
    соседний двор
    Зачем require_once когда уже сверху используешь use?.

    А так вот здесь можно посмотреть годный пример.
     
  16. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.199
    Симпатии:
    184
    На видео тоже данные не биндет
     
  17. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.555
    Симпатии:
    1.754
    Как одно с другим связано? У него же автозагрузчик не подключён, значит надо делать require. Use импортирует в текущее пространство имён, а не подгружает файл
     
    Fell-x27 нравится это.
  18. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.155
    Симпатии:
    1.769
    Адрес:
    :сердА
    Сразу видно, человек по видеоурокам учится.
     
  19. Михаил Запаленов

    С нами с:
    2 авг 2017
    Сообщения:
    120
    Симпатии:
    1
    блог с добавлением статей и админку с возможностью добавления статей в БД и выводить их. Вот что я собираюсь после этой регистрации сделать все на чистом пхп ток мы регу сделаем нормально, сделаем
    Да понял про последние надо было перенести проверку регулярки туда, я просто функций бессмысленно напладил когда ниже регулярной все проверяется
     
  20. Dilon

    Dilon Активный пользователь

    С нами с:
    4 май 2014
    Сообщения:
    119
    Симпатии:
    4
    Адрес:
    соседний двор
    А, вот оно что. Не заметил что у него нет автозагрузчика.
     
  21. Михаил Запаленов

    С нами с:
    2 авг 2017
    Сообщения:
    120
    Симпатии:
    1
    Я его убрал так как он мне сейчас не нужен.
    --- Добавлено ---
    По поводу того видео что ты скинул, тут компосера нет, во вторых, пусть великий скажет хорошо на видео сделано или нет!
     
  22. Михаил Запаленов

    С нами с:
    2 авг 2017
    Сообщения:
    120
    Симпатии:
    1
    model_query::checkTable($login, $pass, $age); - Так можно?
     
  23. Abyss

    Abyss Старожил

    С нами с:
    12 дек 2015
    Сообщения:
    1.298
    Симпатии:
    218
    Адрес:
    Default city
    Збс и зачем оно, когда автолоадера нет ?

    Видео говно. С 40ой минуты можно начинать адово гореть.
     
  24. Михаил Запаленов

    С нами с:
    2 авг 2017
    Сообщения:
    120
    Симпатии:
    1
    УУ а ты клонируй репозиторий, и удали use увидишь как твой браузер будет с тобой общаться, а точнее никак. Ничего не будет кроме херова туча ошибок!
     
  25. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.155
    Симпатии:
    1.769
    Адрес:
    :сердА
    Регулярки отдельная тема. Зачем они там вообще? Зачем говорить пользователю, какие символы ему можно вводить, а какие нельзя?