Rechercher : dans
Par :

Panier en php

Dernière réponse le 25 sep 2009 à 08:57:49 rake-off, le 24 sep 2009 à 08:15:03 
 Signaler ce message aux modérateurs

Bonjour,
Je vous écris car j'ai un petit problème, je veux créer un panier sur mon site web pour vendre des produit et j'ai trouvé ce tutoriel
http://jcrozier.developpez.com/articles/web/panier/#LIV
Mais je voudrais savoir, comment cela ce passe, si j'ai besoin d'une base de donnée temporaire.
Car je voulais créer une base de donnée avec mes produit, ensuite quand le client selectionne un article, qu'il aye dans une base de donnée temporaire
( est-ce nécessaire ou non possible car il faudrais une base de donnée temporaire pour chaque personne connecter à son panier, mais sinon ou son stocké les colis du clients pendant qu'il fait ces achats avec des produits dans le panier??)
Et après avoir répondu à ces question je voudrais savoir s'il était possible de cliquer sur "valider le panier" ensuite je serai envoyé vers une pages sur laquelle le client rentreras ses coordonnées et son mode de livraison et seulement ensuite, il sera envoyé vers paypal pour payer le montant qu'il doit.

Merci beaucoup à vous
Cordialement rake-off.

Configuration: Windows XP
Firefox 3.0.14

Meilleures réponses pour « panier en php » dans :
[PHP] Upload de fichiers VoirLe langage PHP permet de gérer des fichiers envoyés (uploadés) grâce à un formulaire HTML. Formulaire d'envoi de fichiers Configuration de PHP pour permettre l'upload Récupération du fichier avec PHP Formulaire d'envoi de fichiers La...
[PHP] Notice: Undefined index: VoirSi vous utilisez les tableaux $_POST ou $_GET pour récupérer les variables de vos formulaires ou autres, il se peut que vous tombiez sur cette erreur: Notice: Undefined index 'champs du tableau' in 'chemin du fichier php en cours d'execution' on line...
[PHP] Parse error, unexpected T_STRING, expecting ',' or ';' VoirCette erreur, fréquente, se produit notamment lorsqu'un guillemet est présent dans une chaîne délimitée par ce même type de guillemets, par exemple :
Télécharger PHP Edit VoirPHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de fonctionnalités permettant de développer plus efficacement : Coloration syntaxique Auto-complétion des fonctions Débuggeur...
Télécharger PHP FTP Synchronizer VoirLa mise à jour de site web est aussi complexe que sa conception. Alors il faut utiliser le bon outil avec les bon paramètres et une bonne connaissance de programmation pour mettre à jour un site. PHP FTP Synchronizer est une application vous...
PHP - Récupération de données VoirPHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Création d'un formulaire Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des...
PHP - Les fichiers VoirLa gestion des fichiers avec PHP Avec PHP, la création ou la lecture de fichiers est, une fois de plus, assez simple. Il existe une multitude de fonctions dédiées à l'utilisation des fichiers. La communication entre le script PHP et le fichier...
PHP - Structures conditionnelles VoirQu'est-ce qu'une structure conditionnelle? On appelle structure conditionnelle les instructions qui permettent de tester si une condition est vraie ou non, c'est-à-dire si la valeur de son expression vaut 0 ou 1 (le PHP associe le mot clé true à 1...

1

NetDoor, le 24 sep 2009 à 09:35:08

Houla, le sujet est vaste.

Pas de base de données temporaires. Ça n'existe pas, sauf en interne dans les moteurs de base de données.
On ne créé et supprime pas des bases de données à la volée.

Le panier d'un utilisateur, c'est une table dans ta base de données permanente.
Ou bien, le panier de ton utilisateur c'est un objet en session (moins performante approche).

Par exemple tes tables pourraient être:

MonPanier(
IdUtilisateur
DateExpiration
ClefSecrete
IdProduit)

Produit(
Id
Nom
Description
etc...)

Enfin il y a un aspect sécurité à bien analyser dans tout celà :0)

Répondre à NetDoor

2

NetDoor, le 24 sep 2009 à 09:38:04

En effet, dans le lien que tu as donné les produits sont en session:


function ajouterArticle($libelleProduit,$qteProduit,$prixProduit){

if (creationPanier())
{
$positionProduit = array_search($libelleProduit, $_SESSION['panier']['libelleProduit']);

if ($positionProduit !== false)
{
$_SESSION['panier']['qteProduit'][$positionProduit] += $qteProduit ;
}
else
{
array_push( $_SESSION['panier']['libelleProduit'],$libelleProduit);
array_push( $_SESSION['panier']['qteProduit'],$qteProduit);
array_push( $_SESSION['panier']['prixProduit'],$prixProduit);

}

}

else
echo "Un problème est survenu veuillez contacter l'administrateur du site.";
}

Répondre à NetDoor

3

NetDoor, le 24 sep 2009 à 09:40:35

Personnellement, je te déconseille cette approche, à part pour mettre juste l'identifiant du produit et sa quantité. Mais rien de plus! Les sessions, c'est un espace de stockage pour 2-3 trucs, pas plus...car delà impacte les performances de chaque pages web.

Répondre à NetDoor

4

rake-off, le 24 sep 2009 à 11:49:47

A ok donc tu me conseille de rentrer de manière permanante sur ma base de donnée ce qu'a mis la personne dans sont panier même si el le valide pas car quelque fois l'on peut mettre des chose dans sont panier et ne pas les commander.

Ou alors de les mettre dans ma base de données et si l'utilisateur ne le valide pas avant un certain temps alors il est supprimé??
mais comment faire si l'utilisateur ne c'est pas encore identifier et qu'il ajoute des chose à son panier??

merci

Répondre à rake-off

5

NetDoor, le 24 sep 2009 à 13:31:48

Exact, tu peux te constituer un panier de manière permanente, le valider, ou non.
Il te suffit de rajouter un champ dans ta table: panierValide (0 ou 1)
tant que ton booléen est à 0 tu peux modifier ton panier, une fois le panier validé c'est que le panier est transformé en commande.
tes utilisateurs pourraient ainsi constituer leurs paniers sans les perdre au bout de n minutes de session inactive.

plus tard, pour tous les paniers validés,et une fois les commandes livrées, il te suffira de lancer une requete de suppression DELETE FROM Panier WHERE Valide = 1 AND EtatCommande = 5

5 étant le status livré et payé.

pour les utilisateurs non authentifiés utilise l'id de session dans la table à la place de l'id de l'utilisateur, positionne l'id utilisateur une fois le membre authentifié.

un membre peut démarrer ainsi la création d'un panier en non connecté, puis se connecter:

a la connexion:
UPDATE MonPanier SET IdUtilisateur=155445 WHERE IdSession=session_id()

périodiquement:
DELETE FROM MonPanier WHERE IdUtilisateur IS NULL AND DIFF(DatePanier,NOW(),60min)
DELETE FROM Panier WHERE Valide = 1 AND EtatCommande = 5

c un exemple!

++

Répondre à NetDoor

6

 rake-off, le 25 sep 2009 à 07:46:55

Merci bien,
J'ai fait mon panier et donc j'ai deux petite question, la première que peut on faire en php pour dire:

si la requête arrive en GET prendre la variable sur le get sinon en POST, car j'ai fait un petit formulaire en hidden pour enrichir ma variable (elle me sert quand je mais à jour le panier) et la même variable mais en get pour supprimer des articles et cela ne me plaît pas trop mais je ne peut mettre deux formulaire imbriqué.
Donc avez- vous une idée???

Mais la n'est pas mon soucis, le gros soucis maintenant est command transféré mon panier vers un PANIER PAYPAL pour que les personne est un accès sécurisé pour le payement.

Merci.

Répondre à rake-off
Collection CommentÇaMarche.net