Domanda

Mentre la costruzione di una piattaforma di e-commerce ho incontrato problemi di progettazione. Sto lavorando con il CodeIgniter built-in della classe della spesa. Memorizza tutte le informazioni della spesa in sessione. Diciamo che la spesa è già stato riempito con i prodotti e clic degli utenti cassa. Quando devo conservare ordine nel database? Subito dopo che il clic o dopo diverse fasi di raccolta delle informazioni e stoing in sessione? Come trattare con funzionalità aggiuntive come diversi metodi di spedizione? Dovrei aggiungerlo al carrello primo ed ottenere ulteriori (indirizzo regalo) per sessione? Non voglio conservarlo in banca dati a causa della relazione tra l'indirizzo dono e l'ordine è necessario e poiché io non so qual è l'ID dell'ordine. Sono perplesso :) Inoltre penso che sia fondamentale per mantenere carrello a conoscenza di metodi e servizi acquistati supplementari di trasporto (selezionando l'indirizzo dono v'è un costo aggiuntivo), perché il contenuto della spesa è proprio come una ricevuta?

In breve, qual è la migliore pratica alla cassa processo?

È stato utile?

Soluzione

È possibile aggiungere ulteriori attributi al vostro articolo della spesa (come il trasporto opzioni) utilizzando le "opzioni" valore della spesa .

$data = array(
           'id'      => 'sku_123ABC',
           'qty'     => 1,
           'price'   => 39.95,
           'name'    => 'T-Shirt',
           'options' => array('shipId' => '1234abcd5678efghi')
        );

$this->cart->insert($data);

Tenete a mente non è necessario ID incrementali dal database; è possibile creare gli ID unici con uniqid () o com_create_guid () .

Dal momento che si sta chiedendo un parere ... È possibile memorizzare diversi indirizzi di spedizione in una tabella separata rubrica relative all'utente, non si è unito l'ordine. Quando finalmente crea un ordine come parte della cassa, è necessario copiare tutti i dati (dati di indirizzo e dati di prodotto di cui trattasi) a tabelle degli ordini separati perché i dati del libro di dati di prodotto e di indirizzo possono cambiare; dati dell'ordine dovrebbero essere scritti una volta e mai aggiornati, a parte lo stato. Una volta che l'ordine viene salvato è possibile eliminare i dati di sessione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top