1. PHP / Говнокод #13606

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (!isset($_SESSION['user']))
    {
    	$_SESSION['user'] = "guest";
    	$_SESSION['user_id'] = mt_rand(1000000, 99999999);
    }

    Так и представляю двух очень везучих юзеров, у которых в корзине сами собой будут появляться товары.

    Запостил: Tairesh, 14 Августа 2013

    Комментарии (9) RSS

    • $_SESSION['user_id'] =
      - это изначально эпичный фейл, так что фейк скорее всего
      Ответить
      • В чем фейл в $_SESSION['user_id'] = xxx, поясните плиз?
        Ответить
    • Ну, вероятность, кажется, будет всего-то 1,01e-8, это можно пережить.
      Ответить
      • Не, тут в силу вступит парадокс дней рождения. И получится цифра в районе 10e-4. Емнип парадокс звучит так: "При 10000 сессиях у двух совпадут айдишки с вероятностью 1/2".

        P.S. А где-то в районе 30к сессий там будет уже вероятность 99%.
        Ответить
    • // fix
      $_SESSION['user_id'] = microtime(true) . mt_rand();
      Ответить
      • А вдруг там какие-то ограничения на ид? Например в базе 4х байтное целое. И из-за этого заказ не сможет сохраниться в бд ;)
        Ответить
    • не, автоинкремент, не наш метод
      Ответить

    Добавить комментарий