Creare carrello spesa per sito e-commerce

Salve a tutti. Come sempre mi rivolgo a voi quando ho da imparare una cosa nuova che non ho mai fatto. In pratica sto realizzando un sito di e-commerce, ho creato le pagine con gli articoli memorizzati in un database e adesso vorrei creare un pulsante "aggiungi al carrello" che mi permetta di memorizzare gli articoli scelti anche se cambio le pagine del sito senza che si perdano fino alla fine della procedura di  acquisto. Mi potete come fare? Array, sessioni? Non so come andare avanti.....

Grazie.

inviato 6 anni fa
MGbyte78
X 0 X

Dovresti usare le sessioni.

Per la costruzione di un sito e-commerce ti consiglio di appoggiarti ad un cms già fatto. Elimini tanti problemi di sicurezza che sicuramente incontrerai nella creazione di questo tuo applicativo. Problemi che non puoi non sottovalutare.

risposto 6 anni fa
Mario Santagiuliana
X 0 X

In una discussione sui cms abbiamo già avuto modo di discutere su wordpress joomla e Drupal che è il tuo preferito se non ricordo male, però io lo voglio fare da zero e a tal proposito volevo chiederti che tipo di problemi potrei incontrare.

risposto 6 anni fa
MGbyte78
modificato 6 anni fa
X 0 X

Ne sono state aperte tante di discussioni simili alla tua, solo alcune per fare un esempio:

http://www.phpnews.it/forum/commenti-e-suggerimenti/realizzazione-e-commerce/msg26004/#msg26004

http://www.phpnews.it/forum/programmazione-php/aiuto-per-sito-e-commerce/msg24160/#msg24160

http://www.phpnews.it/forum/programmazione-php/e-commerce-in-php/msg8948/#msg8948

http://www.phpnews.it/forum/programmazione-php/carrello/msg14477/#msg14477

L'ultima risponde forse di più alla tua richiesta iniziale.

Ripeto: esistono cms ben fatti ed liberi per creare ottimi siti di e-commerce.

I problemi in cui si incorrono sono tanti e trovo personalmente stupido voler ricreare da zero un qualcosa che già esiste ed è supportato da una comunità di sviluppatori.

I problemi che si incorrono nello sviluppo autonomo di un applicativo sono tanti.

P.S. io conosco bene wordpress e xoops, ma non ho preferenze sull'uso o meno di un cms o di un altro. I due che ho citato non sono specifici per fare e-commerce.

risposto 6 anni fa
Mario Santagiuliana
X 0 X

Grazie per i post, li vedrò sicuramente, tuttavia non userò i cms per lo stesso motivo che ti dissi nella seguente discussione. ciao.

http://www.phpnews.it/forum/programmazione-php/parere-sui-cms/msg26026/#msg26026

risposto 6 anni fa
MGbyte78
X 0 X

Secondo me la soluzione al tuo problema non è un CMS.

I CMS vanno bene per altre cose, per siti che non si discostano troppo dalla media. Altrimenti, come giustamente dici nell'altro topic, devi sputare lacrime e sangue per fare delle personalizzazioni.

Quello che ti serve invece è un framework, cioè uno strumento che ti aiuti nello sviluppo, risparmiandoti tutte quelle parti noiose e ripetitive e consentendoti di concentrarti sulla logica dello sviluppo. Ad esempio, è frustrante dover rifare per ogni tabella un form di inserimento, con validazione dei campi, e scrivere le query per inserire, modificare, cancellare le righe.

I due framework che vanno per la maggiore in questo momento sono Zend Framework e symfony. Il primo purtroppo non è un vero e proprio framework, ma piuttosto un insieme di librerie, per cui ti costringe a fare comunque una serie di operazioni a mano. Il secondo invece è altrettanto flessibile ma molto più completo. Puoi ad esempio creare uno schema in YAML che definisce le tabelle del tuo db e avere gratis tutti i CRUD e i form.

risposto 6 anni fa
Massimiliano Arione
X 0 X

La tua soluzione mi piace di più di usare un cms, può essere noioso rifare form e database ogni volta, è vero, però è anche vero che fare copia e incolla di pezzi di codice di lavori già fatti in passato e personalizzarli un poco non è poi così frustrante penso.

Alla fine le routine sono sempre quelle, rifarle da zero è sicuramente da pazzi, questo sì. Tuttavia darò uno sguardo ai due framework, potrà essermi utile.

L'unico dubbio che mi è rimasto è capire se il mio progetto fatto da zero è sicuro, ma questo è un' altro discorso e rischierei di andare off-topic.

Comunque grazie del consiglio, ciao.

risposto 6 anni fa
MGbyte78
X 0 X

Ciao a tutti, riprendo questo post dopo aver realizzato il "motore" del sito senza ancora badare all'aspetto grafico in quanto vorrei capire se ho fatto bene visto  che per me è la prima volta che tento di realizzare un sito di e-commerce senza seguire una guida precisa.

In pratica ho una pagina dove ci sono gli articoli e per ognuno di essi ho un pulsante per aggiungerli nel carrello mediante le sessioni.Nella home page c'è un link che se cliccato apre la pagina e ti fa vedere cosa c'è all' interno del carrello. Ogni articolo ha un link per eliminarlo dal carrello richiamando la stessa pagina passando, tramite il metodo GET, l'indice del prodotto che deve essere eliminato dall' array sessione del carrello. Alla fine una volta riempito il form con i dati del cliente faccio cliccare il pulsante e automaticamente l'ordine viene memorizzato nel database e l' array sessione svuotato. Nel caso in cui il pagamento venga fatto con carta di credito, dopo la memorizzazione nel database, il cliente visualizza nella successiva pagina il pulsante per collegarsi a paypal e pagare. Se il pagamento viene effettuato, paypal mi manda una email di conferma e io aggiorno un campo del mio database per confermare il pagamento del relativo ordine.

Ora io non so se in termini di sicurezza ho omesso qualcosa e vorrei a tal proposito capire se ci sono da fare dei cambiamenti per evitare sorprese. L'unica cosa che ho fatto è un controllo sulla pagina che mi invia l'ordine nel database, in pratica se nella stessa sessione mi è già arrivato l'ordine nel database ma il cliente deve ancora pagare con la carta , non permetto di aggiornare la pagina (perchè il carrello a questo punto sarebbe vuoto) ,e nè di farne inviare un altro  da un'altra finestra del browser, costringo il cliente a finire tutto il procedimento nella stessa finestra e se vuole creare un nuovo carrello, deve prima concludere quello precedente o almeno azzerare il carrello attuale.

Non ho usato nessun sistema di crittografia e non so neache se sia il caso, a parte quello che fa già paypal .

risposto 6 anni fa
MGbyte78
X 0 X

Resto convinto che il miglior sistema di sicurezza è sfruttare un software opensource in cui più sviluppatori controllano il codice.

E sono convinto che questo non vuol dire essere meno bravi o non essere programmatori.

Credo che non ti si possa rispondere sulla qualità della sicurezza del tuo applicativo senza leggere il codice.

I criteri di sicurezza da usare sono sempre quelli che si dovrebbero tenere in mente per una qualsiasi applicazione web. Trattandosi di carta di credito direi che è il caso di stare attenti a qualsiasi tipo di dato passato in chiaro della stessa.

Paypal inoltre, se non sbaglio, da un servizio per creare un carrello elettronico, ciò semplificherebbe lo sviluppo della tua applicazione e risolverebbe parzialmente alcuni problemi di sicurezza legati al carrello e al successivo ordine da terminare.

risposto 6 anni fa
Mario Santagiuliana
X 0 X

Anche io resto convinto di ciò che ho detto nei precedenti post.

Grazie

ciao.

risposto 6 anni fa
MGbyte78
X 0 X

Non capisco come ti si possa rispondere in altro modo.

Non fornisci alcun tipo di codice. Hai reso noto solamente una logica di funzionamento ma non hai detto che strumenti hai usato eccetera.

Si dovrebbe avere una sfera magica per dire dove il tuo applicativo ha un buco nella sicurezza...

risposto 6 anni fa
Mario Santagiuliana
X 0 X

Ho trovato questo articolo in proposito all'e-commerce:

http://www.ncoded.com/2010/05/effective-e-commerce/

Non so se ti può dare qualche spunto di riflessione.

Ciao

risposto 6 anni fa
Mario Santagiuliana
X 0 X

Articolo interessante, grazie sei stato gentile. Mi servirà sicuramente.

Ciao :bye:

risposto 6 anni fa
MGbyte78
X 0 X

Rimanendo in tema di eCommerce vi segnalo quello che, secondo me, è il miglio cavallo su cui puntare al momento:

http://www.magentocommerce.com/

 :bye:

risposto 6 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda