• Как вывести символы и их обратный порядок в одном цикле?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Надо просто составить математическую функцию, которая будет давать нужные значения.
    $a = 4;
    for ($i = 1; $i < $a*2; $i++) {
        echo str_repeat("+", 4-(abs($a-$i)));
        echo "<br>";
    }
    Ответ написан
    Комментировать
  • Как лучше сделать функцию Запомнить меня?

    @MadridianFox
    Web-программист, многостаночник
    Привязка текущей сессии с браузеру в PHP происходит как раз через куки. Т.е. это механизм, который по умолчанию используется на миллионах сайтов.
    Да, он не идеален. Любой, кто сможет перехватить то что браузер пользователя отправляет серверу, может взять эту куку, вставить себе и зайти на сайт от лица того пользователя.
    Спасает https, который шифрует передаваемые данные.

    все эти "запомнить меня" просто вешают куку. В ней обычно токен - просто уникальная строка для пользователя. Т.е. ни логин ни пароль, именно что случайная уникальная строка.
    Когда сервер видит токен, он без вопросов аутентифицирует пользователя.
    Так работают и различные api соцсетей и различных сервисов. Никто не боится что кто-то может перехватить токен, ибо во-первых https, а во-вторых, если таки могут перехватить, то что ни передавай - всё перехватят. А не передавать вовсе невозможно.
    Ответ написан
    1 комментарий
  • Как лучше сделать функцию Запомнить меня?

    Driver86
    @Driver86
    Немодератор toster.ru
    Куку могут своровать. И пароль могут своровать.
    При регистрации пользователя генерируем ему уникальную строку и сохраняем в БД. После запоминания ставим её в куках. Для защиты от кражи кук можно привязывать строку к IP, но не всем пользователям это подойдёт
    Ответ написан
    Комментировать
  • Как лучше сделать функцию Запомнить меня?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    В куки - храним токен, токен - может быть привязан к IP, подсети провайдера, браузеру (User-Agent), разрешению экрана.
    При использовании токена с несовпадающими параметрами - токен устанавливается невалидным на сервере и пользователю предлагается снова ввести логин и пароль.

    Схема последовательности авторизации: token -> login/pass
    Схема линковки на сервере:
    userID/login:token1:md5(ip:subnet:user-agent:screen-size):salt1:timestamp1
    userID/login:token2:md5(ip:subnet:user-agent:screen-size):salt2:timestamp2
    ..........
    userID/login:tokenN:md5(ip:subnet:user-agent:screen-size):saltN:timestampN
    PS: то, что не хотим учитывать в md5-хеше - ставим пустой строкой.

    Один токен = одно устройство = один браузер.
    Генерация токена: token=hash(md5(...).saltN)
    (можно ещё добавить время создания)

    БОНУС!
    Ответ написан
    6 комментариев
  • Как лучше сравнить результаты?

    MaxDukov
    @MaxDukov
    впишусь в проект как SRE/DevOps.
    хранить же будете в БД? делаем таблицу прогнозов, таблицу результатов и таблицу балов.
    потом делаем LEFT JOIN таблицы результат с таблицей прогноза, к ним JOIN таблицы баллов - и считаем сумму баллов, группируя по "прогнозисту" и игре.
    профит
    Ответ написан
    Комментировать
  • Какие знания необходимы перед изучением php фреймворка?

    @AlikDex
    тут играет роль не столько знания пхп, сколько понимание принципов работы той или иной системы. Иными словами, необходимо изучить основные паттерны проектирования.
    Для ознакомления неплохая статейка с хабра: habrahabr.ru/post/214285
    Далее нагуглите думаю.
    Ответ написан
    1 комментарий
  • Почему у PHP такая опулярность?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Это следствие его незаменимости в прошлом.

    Пых появился в нужное время в нужном месте, когда поляна была еще не занята никем.
    А точнее, была занята перлом - утилитой для парсинга текста типа awk, что конечно, совсем недостаточно для написания полноценных приложений. Как следствие, перл как средство веб-разработки был задушен за пару лет, а больше никого и не было - про питон и руби никто не слышал, поделка от М$ была еще хуже. Ява просто не помещалась на тогдшних серверах. И остался один пхп. Вот он и занял всю нишу, а синонимом веб-разработки стала аббревиатура LAMP.

    Собственно, с тех пор разные технологии потихоньку отъедают его долю, но пых держится за счет накопленной массы и экосистемы. И продержится ещё долго - поскольку на месте не стоит: несмотря на то, что большинство клиентов тостера пишут на том самом ПХП, который завоевывал популярность в прошлом веке (поскольку не могут осилить ничего сложнее классического говнокода), современный пых предоставляет современные средства разработки и тем, кто имеет представление о программировании.
    Ответ написан
    3 комментария