A
A
alexandCmyk2017-01-19 21:53:18
PHP
alexandCmyk, 2017-01-19 21:53:18

How to remember user in db and how to store md5 in db?

Необходимо запомнить корзину пользователя на сайте, срок хранения корзины ~ 30 дней.
Как запоминать пользователя?
Так как IP у всех динамический тут у меня в голове один вариант:
При входе на сайт шифровать IP пользователя, кидать в куку на 30 дней и добавить в БД это шифр чтобы связать с ним корзину.
Есть ли какие то еще варианты? И какие минусы в этом ?
И какой тип данных и размер использовать для хранения md5 или sha1?

Answer the question

In order to leave comments, you need to log in

5 answer(s)
A
Andrzej Wielski, 2017-01-19
@alexandCmyk

Why identify a basket by ip? You will face many problems - dynamic IPs, vpn, proxy servers.
It is enough to store the cart data in the session.
In the event that the user is authorized, synchronize the basket in the database.

D
d-stream, 2017-01-19
@d-stream

А зачем шифрование и прочая? Зачем IP?
Хочется как-то идентифицировать анонимного пользователя при повторном заходе - генерим ему некий уникальный ID и скармливаем куку с ним.
В качестве уникального ID можно пользовать например автоинкрементное поле, но это если не страшит перебор "злобным хакером" соседние записи. Можно пользовать "стандартизированый" GUID/UUID

Михаил Ким, 2017-01-20
@Marox

Куки, либо localStorage. Хранить id и количество.

M
Mysterion, 2017-01-19
@Mysterion

Можете просто содержимое корзины хранить в куках. ID товаров, например, и их количество. А при посещении сайта клиентов генерировать это содержимое из кук. В базе ни к чему это хранить. А если хочется, то сохранять корзину стоит, разве что, авторизованного пользователя.

A
Andrey Zubkov, 2017-07-26
@Shshzik

Nginx needs read-only permissions, so look at the folder permissions. Should be something like drwxr-xr-x (755)

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question