Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    144

    Carrello acquisti. Gestirlo con le sessioni o tramite tabella mysql?

    Buonasera a tutti. Volevo chiedervi un consiglio: Sto realizzando un carrello per un sito ecommerce e sto utilizzando le sessioni. Il problema mio è che io posso avere nel carrello anche più prodotti con lo stesso ID e quindi non posso eliminare i prodotti dal carrello seguendo l'id altrimenti mi elimina anche quelli che non devono essere eliminati. Mi sono studiato questo sistema arrangiato: Il link per cancellare il prodotto dal carrello lo genero con un contatore. Poi elimino il prodotto facendo un ciclo e quando il contatore è uguale al numero che arriva in get (che corrisponde alla riga) non riscrive la sessione.

    codice:
    $prodotti = @explode(',',$carrello);      $acquisto = '';
    	  $i=0;
          foreach ($prodotti as $prodotto)
          {
            if ($_GET['id'] != $i)
            {
              if ($acquisto != '')
              {
                $acquisto .= ','.$prodotto;
              }else{
                $acquisto = $prodotto;
              }
            }
    		$i++;
          }
          $carrello = $acquisto;
    Però non sono sicuro che sia una soluzione valida e siccome ho perso troppo tempo pensavo di spostarmi su mysql

  2. #2
    io ho sempre usato le tabelle, in modo da ovviare a questo e altri problemi.
    io in genere faccio due tabelle:
    -una di testata con le info generali
    -una di righe, dove ogni riga è un prodotto legato alla tabella dei prodotti

    così evito questo tipo di problematiche.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    144
    ciao! grazie per la risposta. Io in realtà devo solo memorizzare l'id dei prodotti poi altre informazioni non ne ho bisogno. Ma con eventuali ordini non portati a termine come li gestisci?

  4. #4
    bhe non ti servono informazioni come il cliente, quantità, importo totale,ecc ??

    in genere uso un campo flag che mi indica se è chiusa o meno.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    144
    aa si le informazioni del cliente le tengo memorizzate in tabelle separate e me le recupero successivamente...

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    144
    quindi te obblighi il login per compilare il carrello?

  7. #7
    bhe quello dipende da te o da chi ti commissiona il lavoro.
    in alcuni era obbligatorio iscriversi prima e fare il login.
    in un lavoro che ho fatto ad esempio non era richiesta l'iscrizione vera e propria.

    le informazioni del clienti le tieni in un'altra tabella ok.
    ma ci dovrà essere un riferimento all'acquisto al cliente nel caso sia registrato no??
    sennò come fai poi a capire chi ha comprato quel prodotto.

    esempio banale.
    TESTATA
    -id_testata
    -id_cliente
    -flag_vendita_chiusa
    -data_creazione
    -data_acquisto
    -eventuali altre

    RIGHE
    -id_riga
    -id_testata
    -id_prodotto
    -eventuali altre

    ma ovviamente dipende da vari fattori e dal commissionante e da come vuole il sito strutturato.

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    144
    Si certo...La mia tabella carrello è del tipo di prodotto id cliente id data inserimento. Il login è obbligatorio dopo quindi pensavo di registrare l'IP per tenerne traccia... Che ne pensi?

  9. #9
    bhe non penso sia una buona idea.
    io posso iniziare ad acquistare mentre sto in ufficio e accorgermi che la carta di credito è scaduta.
    quindi lo voglio completare a casa.
    due IP diversi, come fa il programma??

    se l'utente si deve registrare dopo non hai modo di tenere questo tipo di traccia.

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    144
    secondo te un modo pratico per non rendere obbligatoria la registrazione?

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.