Size: a a a

Laravel для начинающих

2020 May 02

D

Dmitry in Laravel для начинающих
Надеюсь, просто, не заумно и доступно.
источник

ЕК

Егор Карась... in Laravel для начинающих
Vladimir Yefremov
т.е. - для цен - отдельная таблица?
Ну как бы да
источник

ЕК

Егор Карась... in Laravel для начинающих
Dmitry
Я делаю приложение для Android. У меня в плане есть разблокировка по обычному паролю, по паттерну, NFC и разблокировка по сложному паролю. Первые 3 вида авторизации это в серверной части обычный пароль. Не совсем понимаю как к этому прибавить еще функционал сложного пароля(есть пароль, и при запросе пользователю отправляется некоторое количество букв и их положение. На сервере введенные пользователем буквы сравниваюся с паролем из БД). Я хотел бы посоветоваться с вами, поскольку вы наверняка видите дальше меня относительно построения таблиц и реализации в laravel. Я не до конца понимаю, как мне лучше всего можно было бы реализовать хранение букв в таблице, или может есть еще какие-то способы для того, чтобы забирать из захешенного пароля буквы отдельно?
А зачем....
источник

ЕК

Егор Карась... in Laravel для начинающих
Я не могу суть уловить)
источник

ЕК

Егор Карась... in Laravel для начинающих
Как юзеру мне это зачем? оо
источник

D

Dmitry in Laravel для начинающих
Егор Карась
Как юзеру мне это зачем? оо
Это для дипломной работы. В одном Польском банке на такую авторизацию сделан акцент
источник

D

Dmitry in Laravel для начинающих
Егор Карась
А зачем....
У меня стоит такая задача
источник

ЕК

Егор Карась... in Laravel для начинающих
Тогда больше вопросов не имею)
источник

AH

Andrey Helldar in Laravel для начинающих
Dmitry
Я делаю приложение для Android. У меня в плане есть разблокировка по обычному паролю, по паттерну, NFC и разблокировка по сложному паролю. Первые 3 вида авторизации это в серверной части обычный пароль. Не совсем понимаю как к этому прибавить еще функционал сложного пароля(есть пароль, и при запросе пользователю отправляется некоторое количество букв и их положение. На сервере введенные пользователем буквы сравниваюся с паролем из БД). Я хотел бы посоветоваться с вами, поскольку вы наверняка видите дальше меня относительно построения таблиц и реализации в laravel. Я не до конца понимаю, как мне лучше всего можно было бы реализовать хранение букв в таблице, или может есть еще какие-то способы для того, чтобы забирать из захешенного пароля буквы отдельно?
Смотри, авторизуясь по паролю или по "сложному" паролю (читай пароль), Лара под капотом сверяет кодированные значения с сохраненными в базе. Если значения совпадают, значит, пароль подошел.
При этом, если два раза подряд сделать Hash::make('qwerty'), то внешний вид символов будет абсолютно разным. Следовательно, дернуть из него "некоторое количество букв и положение" невозможно. Вдобавок, зачем тебе это? Чтобы так сделать, нужно хранить пароли в открытом виде, а это плохо.
Решил авторизовать по паролю? Дак пусть юзеры его и шлют. Делая сопоставление ты облегчаешь путь к взлому, так сказать.
В общем, хранить "отдельные буквы" - плохая затея. Лучше спрашивай у юзера пароль.
Дальше авторизуй либо встроенными методами, либо вручную.

Также, в случае с мобильным приложением, рекомендую заюзать JWT аутентификацию. Почему именно этот пакет? Его лара юзает "из коробки" и, следовательно, не будет N+1 лишних пакетов.
Суть проста - когда авторизуешь юзера "стандартным" методом, в ответ вернется токен для него. Сохраняешь его у юзера на мобиле и последующие запросы им подписываешь.
источник

AH

Andrey Helldar in Laravel для начинающих
Dmitry
Это для дипломной работы. В одном Польском банке на такую авторизацию сделан акцент
Если для дипломной, то там да, дичь может быть.
В таком случае, храни пароль в "чистом" виде - из него можно будет дернуть буквы.
Сделать это возможно командой str_split.
На выходе получишь неассоциативный массив ключ-значение, где ключ - числовое значение.

Например:

$splitted = str_split('foo');

// return [
//   0 => 'f',
//   1 => 'o',
//   2 => 'o',
// ]

А также можно работать со строкой как с массивом.

Например:

$str = 'qwerty';

return $str[4]; // 't'
return $str[0]; // 'q'
return $str[3]; // 'r'

Первый вариант очевидный, второй - нет. Но работают оба.
источник

D

Dmitry in Laravel для начинающих
Andrey Helldar
Если для дипломной, то там да, дичь может быть.
В таком случае, храни пароль в "чистом" виде - из него можно будет дернуть буквы.
Сделать это возможно командой str_split.
На выходе получишь неассоциативный массив ключ-значение, где ключ - числовое значение.

Например:

$splitted = str_split('foo');

// return [
//   0 => 'f',
//   1 => 'o',
//   2 => 'o',
// ]

А также можно работать со строкой как с массивом.

Например:

$str = 'qwerty';

return $str[4]; // 't'
return $str[0]; // 'q'
return $str[3]; // 'r'

Первый вариант очевидный, второй - нет. Но работают оба.
Теперь точно понимаю что это глупая затея. Буду реализовывать как вы сказали. Спасибо вам огромное)
источник

AH

Andrey Helldar in Laravel для начинающих
Dmitry
Теперь точно понимаю что это глупая затея. Буду реализовывать как вы сказали. Спасибо вам огромное)
👍
Преподы иногда откровенную херню задают, т.к. им важно проверить насколько студенты усвоили материал. При этом, у практических разработчиков глаз дергается от таких решений. НО если ты сделаешь правильно и сможешь объяснить, то это будет лишь "плюсом".
Я так свой диплом защищал. Пока официально в ВУЗе все писали в среде borland delphi 7, на C# работы сдавал.
Так что, всё зависит от тебя.
источник

D

Dmitry in Laravel для начинающих
Andrey Helldar
👍
Преподы иногда откровенную херню задают, т.к. им важно проверить насколько студенты усвоили материал. При этом, у практических разработчиков глаз дергается от таких решений. НО если ты сделаешь правильно и сможешь объяснить, то это будет лишь "плюсом".
Я так свой диплом защищал. Пока официально в ВУЗе все писали в среде borland delphi 7, на C# работы сдавал.
Так что, всё зависит от тебя.
Я думаю там и не поймут как все реализовано, если не обьясню)
источник

ДК

Дмитрий Кожанов... in Laravel для начинающих
Andrey Helldar
👍
Преподы иногда откровенную херню задают, т.к. им важно проверить насколько студенты усвоили материал. При этом, у практических разработчиков глаз дергается от таких решений. НО если ты сделаешь правильно и сможешь объяснить, то это будет лишь "плюсом".
Я так свой диплом защищал. Пока официально в ВУЗе все писали в среде borland delphi 7, на C# работы сдавал.
Так что, всё зависит от тебя.
А я писал лабы по своему.  И я их делал досконально и красиво. Только вот одногруппники, которые у меня копировали код копировали его втупую за что отхватывали на сдаче
источник

AH

Andrey Helldar in Laravel для начинающих
Дмитрий Кожанов
А я писал лабы по своему.  И я их делал досконально и красиво. Только вот одногруппники, которые у меня копировали код копировали его втупую за что отхватывали на сдаче
Знакомо))))
Первый вопрос от препода им был - "на каком языке это написано?"
Вот я ржал с них))
источник

AH

Andrey Helldar in Laravel для начинающих
Еще эпичней было когда первый курс заканчивал. Всем дали персональные задания. Смотрю - 14 не сложных задач на один вечер.
Заставку на DVD помните, когда логотип бегает по экрану, ударяется об стену и т.д.? Примерно то же самое. Одна из задач такая была.
Сделал, оформил приложением, принес сдавать...
...оказалось, что это были задания с 3-го курса, а нашим дали по 2 задания для 1-го курса, и больше половины с ними не справились))
Было эпично)

Лирическое отступление: в 2007-м я поступил на очное в этот вуз, после вылетел за завал сессии по вышмату. В 2009-м поступил туда же на заочное, поэтому преподы информатики знали мои знания и давали сложные задачи.
источник

ДК

Дмитрий Красавцев... in Laravel для начинающих
Привет! кто знает как победить переполнение памяти при запросах к DB? при каждом запросе увеличивается количество используемой памяти. Когда нужно тысячи запросов к базе делать в цикле наступает переполнение памяти.  protected $loggingQueries = false; логирование запросов выключено... Laravel 7
источник

ДК

Дмитрий Кожанов... in Laravel для начинающих
Дмитрий Красавцев
Привет! кто знает как победить переполнение памяти при запросах к DB? при каждом запросе увеличивается количество используемой памяти. Когда нужно тысячи запросов к базе делать в цикле наступает переполнение памяти.  protected $loggingQueries = false; логирование запросов выключено... Laravel 7
Отключить дебагбар?)
источник

А

Андрей in Laravel для начинающих
Дмитрий Кожанов
Отключить дебагбар?)
слишком просто чтобы не заметить и не отключить раньше)
источник

AH

Andrey Helldar in Laravel для начинающих
Андрей
слишком просто чтобы не заметить и не отключить раньше)
А прикинь...))))
источник