• User Newbie

    [Session] come salvare i valori in una classe

    Ciao a tutti,
    sono nuovo su questo forum e alle prime armi con il PHP ad oggetti.
    Vengo al dunque.
    Al momento ho utilizzato le variabili di sessione, solo a livello base, ma ora ho la necessità di implementare un carrello della spesa, senza voler obbligare l'utente a registrarsi e, quindi ipotizzo questo sia l'unico modo per procedere.
    So che in questo modo, se l'utente non completa la fase dell'acquisto e ad esempio chiude la finestra del browser o cambia pagina, perde tutto quello appena "salvato". Ma è un "rischio" calcolato.

    La gestione del carrello della spesa avviene tramite ajax e questo è l'esempio
    dhtmlgoodies.com/scripts/fly-to-basket/fly-to-basket.html
    il quale, si appoggia su due file e sulla tabella Prodotti

    addproduct.php
    removeproduct.php

    Nel primo, si aggiungono i prodotti, accedendo alla tabella Prodotti e nel secondo si eliminano.

    Per evitare di registrare l'utente pensavo di utilizzare quindi l'id di sessione, ogniqualvolta questo si collega alla pagina.
    Quando poi seleziona un prodotto, all'interno del file addproduct.php vorrei fare in modo che aggiorni il contenuto di una classe Prodotti, che contiene, ad esempio, come attributi l'Id, il nome e il prezzo.
    Vorrei quindi salvare in sessione una lista di oggetti di tale classe e, quando l'utente decide di fare l'acquisto, rielaborare il tutto e inviare la mail.

    Se per l'invio della mail e la gestione del db non ho problemi, non so come gestire (creazione/lettura/aggiornamento/eliminazione) questa classe.

    Mi mancano le basi e anche se sto cercando di approfondire, al momento mi sono bloccato.

    Spero di essere stato chiaro.

    Qualsiasi consiglio è ben accetto.

    Grazie in anticipo
    ciao


  • Consiglio Direttivo

    Ciao developer10 e benvenuto nel Forum GT. 😉

    Se hai già una gestione completa per gli utenti registrati potresti sfruttare la stessa struttura per i guest, almeno credo, non conosco lo script in questione.

    Potresti creare il record utente, quando lo stesso inizia a riempire il carrello, associando all'id i valori "certi", IP e data (id=103; utente=guest192.168.1.12.332423423), e lavorare con questi valori, come se fosse un utente registrato. 🙂

    E' la prima cosa che mi è venuta in mente, non so se sia cosa fattibile con quello script ovviamente. 😉