Création d'un panier sur un site marchand : Quelle est la bonne solution ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Création d'un panier sur un site marchand : Quelle est la bonne solution ?

par AB » 30 oct. 2008, 20:41

sa dépend, paypal, c'est un peu galère si tu as ton propre panier.
En principe tu transmet la quantité total du panier. la systeme monétique fait le reste.
Les autre c'est surement plus simple...
C'est le principe général. La doc pour transmettre les variables est plus ou poins bien documentée suivant les prestataires de paiement mais le principe reste le même (à ma connaissance).

par x@v » 29 oct. 2008, 16:31

sa dépend, paypal, c'est un peu galère si tu as ton propre panier.
En principe tu transmet la quantité total du panier. la systeme monétique fait le reste.
Les autre c'est surement plus simple...

par uspy62 » 28 oct. 2008, 12:04

Oui je ne sais pas puisque je n ai pas encore géré le paiement, mais toute façon si j'installe fianet ou paypal, ils me filent les scripts ?
Donc j'ai quasi rien à faire non ?
En fait c'est la première fois que j'installe des solutions de paiement donc je ne sias pas du tout si c'est facile ou pas.
Vous avez une idée ?

par caroube » 23 oct. 2008, 10:59

Au niveau sécurité, ce n'est pas mieux d'avoir un panier en base ?
Dans un système de boutique en ligne, le point crucial de sécurité, c'est au moment du paiement. Pas au niveau de la constitution du panier.
On va quand même s'assurer que n'importe qui ne peut pas lire le panier du voisin ou le modifier, mais ce n'est pas là dessus que va porter l'effort principal de sécurité.

Et puis comme là dit AB, de toute façon, il te faudra un id de session quel que soit le cas.

par AB » 22 oct. 2008, 18:53

A quel niveau ?
Si pour assurer l'identité du visiteur tout au long de sa visite tu utilises un identifiant de session, alors si on te pirate cet identifiant on pourra modifier le contenu du panier, qu'il soit dans une session ou dans une bdd :-k

par uspy62 » 22 oct. 2008, 18:04

Au niveau sécurité, ce n'est pas mieux d'avoir un panier en base ?

par AB » 22 oct. 2008, 18:02

Je vois pas bien l'intérêt de sauvegarder un panier dans une bdd si c'est pour l'effacer ensuite. Dans ce cas, comme le disait Caroube, pourquoi ne pas utiliser simplement les sessions, tu éviterais des accès inutiles à ta bdd.

Enfin bon ta méthode te permettra de faire facilement la transition dans le cas où tu voudrais que les utilisateurs puissent conserver leur panier de sessions en sessions.

par uspy62 » 22 oct. 2008, 12:20

J'ai fait mon panier et ça fonctionne très bien.
J'ai créé deux tables, une table "Panier" et une table "Panier_details".
La table panier contient l'id du panier, la session_id du client, et la table panier_details contient l'id du panier, et la description du produit, sa quantite etc.

De cette manière tous les paniers sont stockés dans la base de données.
Et le soir a minuit, je teste si les paniers ont été validés ou non (panier dont la date est dépassée depuis 1h) et je supprime les paniers non validés.

Voila voila, j'espère que cette solution est bonne.

Qu'en pensez-vous ?

par chrislabricole » 21 oct. 2008, 22:38

Au passage, voilà un tuto très bien réalisé par notre cher Mammouth Cyrano :mrgreen:

par caroube » 21 oct. 2008, 15:57

La technique de sessions est plus rapide car elle déploie un accès mémoire
De combien de millisecondes ?
A moins que l'internaute commence à mettre une centaine de millions d'articles dans son panier, la différence de temps sera absolument imperceptible. Tout comme la surcharge du serveur et du système de fichiers.

Dans ce genre de système, le temps de réponse ou la charge n'est absolument pas un argument.

Par contre, une question importante : est-ce que tu veux qu'un internaute puisse conserver son panier d'une visite sur l'autre ? Si oui, c'est la solution base de données qu'il faut mettre en place (avec gestion d'un compte utilisateur).
Si non, utilise les sessions : au moins, tu n'auras pas à mettre en place de système de suppression des paniers non utilisés.

par x@v » 18 oct. 2008, 16:51

la doc est pas mal faite...
http://dev.mysql.com/doc/refman/5.0/fr/ ... ngine.html
Après il est vrai que c'est à toi de l'implémenter.
la technologie me semble cohérente.
Pour les session tu as encore le tuto de Cyrano, c'est un très bon texte pédagogique.
Moi j'ai hésiter entre utiliser ces tables ou les sessions, j'ai renoncer n'ayant vue personne l'utiliser et faute de temps d'explorer une nouveauté.

par uspy62 » 18 oct. 2008, 15:22

Je ne pense pas avoir compris ...

par x@v » 18 oct. 2008, 14:29

sa m'avait échaper...
Utiliser le moteur de table MEMORY de mysql, le contenu est stocké en mémoire vive.
La tailles des données est fixe, donc pas de varchard...

par uspy62 » 18 oct. 2008, 14:11

Oui j'ai fait deux tables différentes mais il faut bien supprimer les panier un moment ou un autre.
Si j'ajoute un objet à mon panier, puis que je me déconnecte sans commander, la ligne dans ma table panier est encore présente, il faut donc la supprimer...

par x@v » 18 oct. 2008, 12:07

la tu mélange tout
le panier et les commandes validés ont chacune leurs tables et oublie les sessions dans ce shéma c'est soit la table ou la session...
Dès qu quelqu'un commande tu enregistre sa commande dans une table et tu effaces sont panier.