Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Consiglio su anagrafiche in ordini e-commerce

    Ciao a tutti, spero di non essere off-topic.
    Ho un dubbio enorme: sto implementando un carrello per gli acquisti in un progetto, carrello che poi porta ovviamente ad un pagamento online e relativo ordine.
    Il dubbio che ho è come gestire l'anagrafica dell'utente per il singolo ordine.
    Mi spiego meglio.
    L'utente registrato ha una sua anagrafica, completa di nome, cognome, email, p.iva ecc.
    Quando effettua un ordine lo salvo in db e collego l'ordine all'utente tramite il suo id.
    PERO' in questo modo l'anagrafica dell'utente associata all'ordine è dinamica e quindi può mutare se l'utente effettua delle modifiche al proprio profilo, per esempio se cambia l'email, la p.iva o il nominativo (penso a una donna che divorzia per esempio). Di conseguenza lo storico ordini non presenterebbe necessariamente i dettagli dell'utente specificati al momento dell'effettivo ordine, ma quelli più aggiornati.
    Qualcuno mi sa consigliare su come gestire questo aspetto?
    E' meglio salvare l'anagrafica esistente nell'ordine stesso?
    Spero di essermi spiegato, in caso contrario chiedetemi.
    Gabriele Fabbri
    http://www.overzero.it

  2. #2
    Alcuni campi deveono essere necessariamente bloccati, per esempio il codice fiscale o la partita iva. Tutti gli altri sono liberamente modificabili. Se sei sposato o divorziato il codice fiscale non cambia.

    Però, pensa se il cliente cambia la residenza:
    Puoi montare una tabella SPEDIZIONI per relazionare il cliente, l'ordine e l'indirizzo di spedizione.

    O creare un checkbox che, se attivato ti permette specificare un indirizzo di spedizione diverso: esempio: se non lo spunti prendi l'indirizzo del profilo del cliente, se lo spunti prendi l'indirizzo dal form che il cliente compila. E i dati li salvi nella tabella ORDINI.

  3. #3
    Ciao cris.calleo, grazie per la risposta.
    Si, per gli indirizzi di spedizione davo già per scontata una logica come quella descritta da te, ma per l'anagrafica nutrivo qualche perplessità.
    A questo punto direi che in linea di massima mi conviene salvare in db praticamente tutti i dettagli dell'ordine, compresa l'anagrafica utente e l'indirizzo di spedizione.
    E' l'unico modo, credo, per poter fornire uno storico ordini davvero affidabile e utile.
    Se qualcuno ha altre osservazioni/opinioni sono sempre ben accette
    Gabriele Fabbri
    http://www.overzero.it

  4. #4
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    puoi inserire i dati una sola volta fai una cosa del genere

    Tabella utenti
    id username password codice_fiscale etc etc

    Tabella dati_utenti
    id_utente id_dati nome cognome partita_iva attivo

    Oridine
    id_articolo quantità id_dati

    dove attivo è si o no, vero o false come preferisci, per ogni utente ci può essere una sola riga attiva ogni volta che cambia il dato (visto che è una eccezione) disabiliti la riga e ne inserisci una nuova abilitata. Se vuoi nell'ordine puoi mettere anche id_utente anche non è strettamente necessario

    Copiare tutti i dati nell'ordine è uno spreco di spazio visto che aggiungere un ordine è la norma cambiare i dati è una eccezione

  5. #5
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    La migliore soluzione in questo caso e' sbattersene della normalizzazione e replicare i dati nell'ordine.


    quindi la tabella ordine conitene anche lo stato dei dati al momento dell'ordine facendo cosi' eviti qualsiasi problema. Se poi devi anche generare vouchers o schede etc sei sicuro che i dati sono presi dall'ordine e anche se l'utente li cambia per quell'ordine saranno sempre i dati che erano impostati al momento dell'ordine.

  6. #6
    Immaginavo.
    Ringrazio tutti per le utili info e consigli!
    Gabriele Fabbri
    http://www.overzero.it

  7. #7
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    in bocca al lupo.

    P.S.
    ho incotrato gia' questo problema su un sistema di fatturazioni dove ho pdf dinamici etc,, ho risolto appunto con una tabella tampone in cui fare lo store dello stato dei dati di anagrafica al momento di creazione della fattura in modo da poter poi rigenerare tutti i pdf senza perdere la coerenza dei dati(in quanto appunto le anagrafiche avrebbero potutoi cambiare)

    Nel caso in cui sia stata inserita un p.iva errata si stornava la fattura e se ne emettava una nuovca con i dati corretti applicando sempre la stessa logica.

  8. #8
    Crepi il lupo!
    Il tuo esempio calza a pennello, procederò in questa direzione.
    Grazie ancora.
    Gabriele Fabbri
    http://www.overzero.it

  9. #9
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.