PHP - Come strutturare questa applicazione

0

Scusa se il titolo è in testa .. Sto cercando un consiglio per il seguente sistema che sto implementando:

Il sistema deve fornire preventivi per i clienti, che vengono quindi esportati in PDF e inviati via email al cliente. Fondamentalmente, la "citazione" è composta da quanto segue:

  • Copertina del font (Immagini - Estratto da un database)
  • Attributi - (Questa è la citazione attuale)
  • Immagine intestazione - (Immagini prodotto - Estratto dal database)
  • Informazioni sui clienti (dettagli dei clienti per il preventivo)
  • T & C

Ho creato classi per ognuno e dichiarato un oggetto. Che viene quindi passato all'oggetto finale Quote ma il problema è questo:

Uso PHP e l'interfaccia utente funziona in modo che ciascuna di queste sezioni sia una pagina. Quindi, page 1 = front cover , Attributes = page 2 ecc. La pagina finale, è dove l'oggetto Quote viene creato e memorizzato all'interno del database. Ma, in ciascuna delle sezioni, l'utente ha la possibilità di visualizzare i dettagli fino a questo punto.

Ho usato sessioni per questo, ma, ora, ho 5 sessioni e tutti questi modulo 1 oggetto (che è memorizzato come sessione) - Esiste un modo più pratico per farlo? E se c'è, come trasferirei le informazioni precedenti alla sezione successiva?

Qualche consiglio, molto apprezzato.

    
posta Phorce 01.05.2015 - 15:21
fonte

1 risposta

1

Se vuoi preservare i dati attraverso le pagine, ci sono diversi approcci:

  • L' URI o il modulo . Una scelta sbagliata nella maggior parte delle situazioni (alcuni sviluppatori ASP.NET non sarebbero d'accordo, indicando lo stato di visualizzazione come un esempio di conservazione delle informazioni in un modulo).

  • Sessions . Questo funziona bene per la maggior parte dei casi se la dimensione dei dati conservati non è molto grande.

  • Database (compresi Redis). I vantaggi, rispetto alle sessioni, sono:

    1. La dimensione dei dati è irrilevante e non influisce sull'impronta di memoria della tua applicazione web.

    2. Se l'applicazione web o il server Web si arresta in modo anomalo, i dati sono ancora lì.

    3. I dati vengono mantenuti per sempre (beh, finché non decidi di non averne più bisogno), che è l'ideale per i casi in cui desideri conservare i dati anche se l'utente lascia e ritorna qualche giorno , settimane o mesi più tardi.

    4. Gli scenari di failover / mirroring diventano molto più semplici rispetto alle sessioni.

Dalla tua descrizione, sembra che tu non abbia necessariamente bisogno dei benefici della persistenza all'interno di un database. Le sessioni sembrano un buon approccio qui.

Tieni presente che il numero di sessioni dipende dal numero di utenti, con una sessione per utente . Due utenti: due sessioni, indipendentemente dalla quantità di oggetti memorizzati nelle sessioni. Ciò significa che:

now, I have 5 sessions and all of these form 1 object

non ha molto senso. O chiami sessione qualcosa che non è una sessione effettiva, o ho finito col pensare che ci sono più sessioni, dove ce n'è solo una.

    
risposta data 01.05.2015 - 16:02
fonte

Leggi altre domande sui tag