LINUX.ORG.RU

Дайте совет как по феншую сделать ссылку на оплату в Интернет магазине.

 ,


0

1

Задача такова. Интернет магазин, покупка перед тем как оплатить должна быть проверенна менеджером. После того как менеджер подтверждает, можно заказ оплачивать.

Условия: Покупатель не зарегистрирован. То есть личного кабинета нет.

Пока придумал только добавить поле в таблицу с заказами, и писать в него уникальный код, например на основе хеша от данных заказа. При подтвержденнии заказа отправлять покупателю ссылку в которой через GET параметр будет передаваться этот код. При переходе по ссылке, по коду вытаскиваем данные заказа и запускаем процесс оплаты.

Недостатки лишнее поле в базе, которое для зарегистрированных пользователей не нужно.

Есть ли какие то другие варианты или более оптимальные пути?


Если у тебя корзина так или иначе в СУБД сразу пишется для всех, то разумнее было бы каждой покупке привязывать хеш сессии, в которой проходила покупка (для всех, зареганных или нет). А далее дергаешь жаваскриптом /bucket/isavailable и парсишь жсон. Возвращать true должно, когда менеджер тыкнул «окэюшки, пущай барин плотит». Хотя, если у тебя зареганный может нашвырять в корзину, разлогиниться, потом вернуться и докидать... ну, тогда так не прокатит.

GateKeeper ★★
()

окупка должна быть проверенна менеджером.

Я бы послал нафиг такой интернет магазин.

Ну идентификатор заказа, всё нормально. Разве что если это хэш от данных, то нафига его хранить? Куки ещё можно, с ними всё очевидно вроде.

Kalashnikov ★★★
()
Ответ на: комментарий от GateKeeper

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

RaDiSt
() автор топика
Ответ на: комментарий от Kalashnikov

Есть такие покупки которые надо проверять.

Разве что если это хэш от данных, то нафига его хранить?

Как его использовать если не хранить? Если он есть в БД то получить данные заказа это 1 запрос. Если его нет в БД, то перебрать все заказы и вычислить от них хеши, до нахождения нужного?

Куки ещё можно, с ними всё очевидно вроде.

Вопрос не в том от чего делать хеш. Вопрос есть ли другие пути.

RaDiSt
() автор топика
Ответ на: комментарий от RaDiSt

Вот нахрена хранить-то хеш? Делаешь вида ?action=get_order&hash=ТВОЙ_ХЕШ&id=ИД_ЗАКАЗА. Тогда хеш в базе хранить не надо будет, только проверить, соотвествуют ли данные заказа хешу. Плюс не забыть про соль.

drakmail ★★★★
()
Ответ на: комментарий от drakmail

Вот, спасибо. За этим и спросил.

RaDiSt
() автор топика
Ответ на: комментарий от drakmail

Что делать если измениться заказ. Например менеджер позвонил клиенту, уточнить и в процессе пришли к выводу что надо добавить еще 1 позицию. Брать Только те поля которые 100% не поменяются?

RaDiSt
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.