Tôi hiện đang xây dựng một trang web thương mại điện tử với PHP/MySQL. Gần đây, tôi đã làm việc về tích hợp Giỏ hàng. Khách hàng muốn đảm bảo rằng cổ phiếu đã có sẵn cho người mua tiềm năng, vì vậy tôi đã tạo một hệ thống quản lý cổ phiếu. Giỏ hàng hoạt động như sau:Giỏ hàng và quản lý chứng khoán
- Khách hàng thêm số lượng mặt hàng vào giỏ hàng của mình.
- Số lượng mặt hàng được đặt trước từ cổ phiếu có sẵn trong cơ sở dữ liệu.
- Không ai khác có thể mua riêng cổ phiếu.
- Cổ phiếu vẫn được giữ lại cho đến khi khách hàng quy trình đặt hàng - nơi cổ phiếu sau đó được xóa khỏi cơ sở dữ liệu.
- Nếu khách hàng từ bỏ giỏ hàng của mình, cổ phiếu vẫn được giữ lại.
- Nếu một khách hàng khác muốn mua một mặt hàng, nhưng chỉ có cổ phiếu sẵn có được đặt trước bởi một khách hàng khác, thì khách hàng có thể lấy cắp cổ phiếu dự trữ nếu nó không hoạt động trong 20 phút.
Câu hỏi của tôi là, thực tiễn tốt nhất cho loại kịch bản này là gì? Tôi đang làm điều này một cách chính xác? Điều chính là khách hàng không muốn bán cổ phiếu mà anh ta không có.
Tôi đang tìm cách thảo luận về cách cải thiện chức năng hoặc những gì người khác đang làm để thực hiện việc này.
Cảm ơn lời khuyên. Tôi sẽ làm lại chức năng. Tôi biết đó không phải là cách tốt nhất để làm việc này. Cổ phiếu đóng băng có lẽ không phải là một ý tưởng hay, trừ khi bạn bán các sản phẩm độc đáo, chẳng hạn như vé hòa nhạc. – jgallant
Có, như với các giao dịch cơ sở dữ liệu và kiểm soát nguồn, mặc định là khóa lạc quan trừ khi bạn có lý do chính đáng để làm khác. – Jerph