Panier d'achat + Session client

Messages postés
8
Date d'inscription
dimanche 2 août 2009
Statut
Membre
Dernière intervention
9 décembre 2009
- - Dernière réponse : cs_gabin21
Messages postés
8
Date d'inscription
dimanche 2 août 2009
Statut
Membre
Dernière intervention
9 décembre 2009
- 9 déc. 2009 à 21:19
Bonjour,
Je ne suis pas débutant en création de site internet, mais je me lance dans la création d'une e-boutique, et là, je ne connais pas grand chose.

Je souhaiterais créer un espace client ainsi qu'un panier d'achat qui serait relier au compte du client.
Je n'ai trouvé aucun scripts combinant les deux.
Mon site est "presque prêt" je ne souhaite donc pas utiliser de cms ou autre...

J'utilise dreamweaver.

Donc : Espace client avec les infos de livraison etc
Quand on valide la commande, après paiement, le panier m'envoie un mail avec les produits commandé, et les infos de livraison etc...

J'espère pouvoir être guider, aider dans cette création.

Merci.
Afficher la suite 

12 réponses

Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
13
0
Merci
Salut,

Concrètement, il te manque quoi, pour créer l'espace client et le panier ?
Quelles fonctionnalités souhaites-tu avoir ?
Tu as cherché un script sans succès : es-tu prêt à développer ça toi-même ? Si oui, alors pour te donner des informations pertinentes, il faut que tu en dises un peu plus sur ce que tu as, ce que tu veux, etc.

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Commenter la réponse de neigedhiver
Messages postés
8
Date d'inscription
dimanche 2 août 2009
Statut
Membre
Dernière intervention
9 décembre 2009
0
Merci
Je souhaites,
- Que le client puisse s'inscrire et remplir un profil avec ses coordonnées.
- Quand il passe commande, il choisis son mode de paiement, l'effectue, et je recois par mail sa commande ainsi que ses coordonnées.
- Si possible, un n° de commande généré.

Ce que j'ai,
- la structure de mon site, pour intégrer tout ces "blocs".

Je suis prêts à le développer moi même s'il le faut, mais je n'ai jamais développer...

Merci !!
Commenter la réponse de cs_gabin21
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
13
0
Merci
Arf !
Donc en gros, si je comprends bien, t'es à l'aise avec la création de site, mais plus spécialement ce qui est front, mise en page, etc. Donc t'es plus proche du webmaster / intégrateur que du développeur ?

Et si je comprends toujours bien, tu n'as en fait, rien concernant le traitement des commandes ni la gestion des clients, etc...
Et donc, tu cherches à être guidé, orienté, tout ça... Ca, pas de problème...

Pour pouvoir te venir en aide, il faut d'abord que tu me dises ce que tu sais faire, précisément, plus particulièrement avec PHP et une base de données.

Au programme de cette formation tutorée (lol), je te propose :
- conception d'une petite base de données clients, produits, commandes
- inscription / connexion d'un client, paiement (quels modes de paiements envisages-tu ?)
- gestion d'un panier
- suivi de commande dans l'espace client

Les principaux outils utilisés :
- phpMyAdmin avec MySQL
- sessions PHP

Je sais pas trop quoi te dire pour l'instant... On va y aller pas à pas ;)

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Commenter la réponse de neigedhiver
Messages postés
8
Date d'inscription
dimanche 2 août 2009
Statut
Membre
Dernière intervention
9 décembre 2009
0
Merci
Et bien tu as tout compris !!!

En php j'ai juste l'habitude de me servir de code "prêts à l'emplois".
Je n'ai pas eu l'occasion de créer de BDD.

Ton "programme de formation" me serait en effet d'une grande aide !
Paiement prévu : CB, Paypal éventuellement en chèque.

Merci beaucoup !
Commenter la réponse de cs_gabin21
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
13
0
Merci
Well well. Bon alors on a du pain sur la planche. J'espère que tu es du genre à chercher par toi-même, hein... Je dois te prévenir que je n'ai pas l'intention de (ni le temps pour) développer à ta place. Je peux te guider, te dire quoi faire, comment, à quoi penser, les questions à te poser, etc, mais pas écrire le code à ta place ;)

Ceci étant posé, il faut que je sache dans quel environnement tu évolues :
- OS utilisé (Windows, Linux, Mac ?) => pour le développement et pour la mise en production du site
- versions des logiciels (Apache, PHP, MySQL) => idem : pour le développement et le serveur de production
- si tu as déjà un hébergement, chez qui, quel type (mutualisé, serveur privé, dédié ?), tout ça tout ça

Bon. Il faut que tu commences par recenser toutes les informations que tu veux stocker dans ta base de données. Ca risque d'être, de manière sommaire :
- nom du client
- prénom du client
- adresse du client
- téléphone du client
- adresse email du client
- etc
- référence du produit à vendre
- nom du produit à vendre
- prix HT du produit à vendre
- tva appliquée (si elle peut varier d'un produit à l'autre)
- etc
- référence de la commande
- date de la commande
- montant total de la commande
- identifiant du client qui passe la commande
- etc

Il faut vraiment faire ça de manière exhaustive. Pour ne pas te laisser influencer par chaque "catégorie", tu peux faire une liste alphabétique. On appelle ça un dictionnaire de données, il s'agit de la première étape pour établir un MCD (Modèle Conceptuel de Données). Après avoir défini le MCD, on en déduira le MLD (Modèle Logique de Données) puis on implémentera (enfin surtout toi ^^) le MPD (Modèle Physique de Données) qui est directement lié au SGBDR (Système de Gestion de Bases de Données Relationnelles). Bon, n'aies pas peur, ce ne sont que des mots, quand on fait tout dans l'ordre, tout se passe très bien et c'est pas si compliqué que ça peut sembler.

Concernant le côté technique, je ne sais pas quelles sont tes compétences en PHP. Je t'invite à te documenter sur les sessions, à faire des scripts "à la con" juste pour tester, voir comment ça marche. La doc PHP n'est pas forcément la plus facile à lire, mais elle présente l'avantage de ne pas être fausse (à quelques rares exceptions près).

Voilà pour le moment...

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Commenter la réponse de neigedhiver
Messages postés
8
Date d'inscription
dimanche 2 août 2009
Statut
Membre
Dernière intervention
9 décembre 2009
0
Merci
Oui oui, je compte (avec de l'aide) créer moi même la totalité ou une partie du système, j'en profite pour étendre mes connaissance là dessus. C'est déjà très gentil de ta part de me guider !

Je suis sous Windows Vista.
En local je suis sous Wamp.
- Apache : 2.2.11
- PHP : 5.3.0
-MySQL : 5.1.36
Je ne connais pas celui de l'hebergeur.

Mais j'ai déjà un site chez OVH, je vais continuer chez eux !
Donc hébergement chez OVH en mutualisé certainement, pour un début...

BDD :

Client :
- E-mail
- Nom
- Prénom
- Adresse
- Téléphone

Panier :
- Produit
- Référence
- Prix HT
- Prix TTC
- Quantité
- Autre options (variables => coloris, taille..)
- code réduction

Gestion commande :
- Référence client
- Référence commande
- Date
- Montant
- Mode de paiement
- Statut de la commande (attente paiement, réaprovisionnement, expediée.)

Je vais me documenter sur les sessions en attendant ! Merci !
Commenter la réponse de cs_gabin21
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
13
0
Merci
C'est un bon début, mais il faut affiner encore plus.
Chaque option est une donnée. Chaque statut est une donnée. Il faut donc tout lister.
Exception : par exemple, les options. Si elles sont variables, il faut modéliser leurs caractéristiques, de la même manière que tu modélises un client, une commande, etc.
Un client est défini par plusieurs propriétés, mais tu ne vas garder que celles qui t'intéressent (par exemple la couleur de ses cheveux est effectivement une propriété qui permet de définir un client, mais tu n'en as pas besoin) comme son nom, son prénom, son adresse, etc.
Si les options sont déterminées et représentent une liste finie d'éléments, alors tu les considères comme telles : des critères, au même titre que le prix, etc. Sinon, il s'agit de données que tu vas associer à d'autres données. A ce titre, il faut les définir. Il se peut qu'elles n'aient pas beaucoup de critères les définissant. Par exemple :
- un identifiant option_ID
- un nom option_NOM
On pourrait avoir besoin d'autres critères permettant de définir des options :
- option_ACTIVE : disponible ou pas ?
- option_DATE_AJOUT : date à laquelle elle a été créée
etc. Les deux exemples ci-dessus ne sont pas forcément pertinents, ce ne sont que des exemples.

Le prix TTC est-il vraiment indispensable ? Il peut être calculé à partir de la TVA : la TVA, par contre, il peut être intéressant de la présenter au client. Selon les produits, elle peut être de 5,5% , 19,6% , ou d'autres valeurs encore. Faut-il la stocker séparément ou laisser la possibilité de la saisir manuellement quand on crée un produit ?

Attention : les propriétés que tu énonces pour le panier ne sont pas vraiment applicables au panier, plutôt à un produit. Exemple :
PRODUIT
- identifiant unique
- nom
- coloris
- taille
- prix HT
- TVA applicable
- description

Pour savoir comment définir le panier, pense à un client dans un magasin avec un panier à la main. Il y place différents produits, lesquels sont définis par les propriétés énoncées ci-dessus.
Le panier est donc défini par :
PANIER
- produits contenus (identifiant de chaque produit + quantité)
- montant (la somme des prix de tous les produits)
on peut lui attribuer des propriétés utiles pour l'implémentation technique, comme la date de création (quand le client est entré dans le magasin), date de mise à jour (pour savoir, quand le magasin ferme, si le client n'est pas sorti sans rien acheter => pour un site, au bout d'un certain temps, on efface le panier, car on considère que le client a abandonné ses achats), etc

Une commande, quant à elle ressemble fortement à un panier, à quelques différences près :
- elle a un identifiant unique (qui peut être une entier qui s'incrémente ou une chaîne de caractères définie suivant certains critères : numéro d'ordre, année, type de client, etc)
- date d'émission
- date de règlement
- état : réglée, en attente de règlement, partiellement payée, etc
- mode de règlement
- adresse de facturation si différente de l'adresse du client (nom, prénom, adresse, code postal, ville, téléphone, indications supplémentaires)
- adresse de livraison (idem adresse facturation)
- liste des articles

Je n'ai peut-être pas poussé complètement dans les détails.

Si tu as quelques euros à dépenser (à partir de 11€), je te recommande la lecture de L'essentiel sur Merise de Dominique Dionisi chez Eyrolles, qui explique parfaitement comment concevoir une base de données avec la méthode Merise avec des phrases plus claires que les miennes (j'ai beau faire des efforts, je ne sais pas toujours si je parviens à faire passer tout ce que je veux dire).
D'une manière générale, l'acquisition de livres spécialisés n'est jamais un investissement vain, surtout si tu veux progresser. Je n'ai pas vraiment de références à donner pour PHP/MySQL, mais aux éditions Eyrolles ou Eni, on trouve rarement des bouses. Tiens, si, peut-être que PHP 5 avancé pourrait être un bon choix (pour faire de la pub à Webdeb ^^). Je sais, les livres techniques sont toujours chers... Mais, je le répète, l'investissement vaut toujours le coup (et puis Noël approche... lol)

V'là ^^

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Commenter la réponse de neigedhiver
Messages postés
8
Date d'inscription
dimanche 2 août 2009
Statut
Membre
Dernière intervention
9 décembre 2009
0
Merci
D'accord donc si j'ai bien compris, faut que je redéfinisse exactement chaque propriétés ?

L'achat des livres n'est pas obligatoire ? L'essentiel sur Merise m'est accessible, mais PHP5 avancé, le prix me fais un peu mal...

Donc, je vais tout bien définir alors !

Merci !!
Commenter la réponse de cs_gabin21
Messages postés
8
Date d'inscription
dimanche 2 août 2009
Statut
Membre
Dernière intervention
9 décembre 2009
0
Merci
J'ai oublier, je souhaiterais aussi, avec l'e-mail du client, créer un système de newsletter, c'est possible je suppose ?
Commenter la réponse de cs_gabin21
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
13
0
Merci
Oui, c'est possible. Mais on verra plus tard ;)
Simplement, le fait qu'un client soit abonné ou non à la newsletter est une propriété qui le caractérise ^^

Côté bouquin, non, leur achat n'est pas obligatoire. Je ne fais que recommander, je n'impose rien (on n'est pas en cours là !). Si tu veux apprendre à développer en PHP et que tu devais ne prendre qu'un bouquin, prends alors PHP 5 avancé. Fais des économies s'il le faut ^^ Pense que c'est un investissement : je ne sais pas si le site que tu fais est pour toi ou pas ; si oui, alors tu devrais logiquement récupérer des sous avec, c'est donc un investissement qui t'aide à gagner de l'argent. ; sinon, faut te faire payer la prestation du site (ou alors le bouquin ?) ^^
En conseillant la lecture de livres, je ne fais que partager mon expérience : j'ai pas appris QUE tout seul, j'avais à mes débuts des bouquins sur PHP, sur MySQL, HTML etc. Avec le temps, j'ai pu m'en passer et apprendre à utiliser toutes les ressources disponibles sur le net (et évaluer leur qualité). Un débutant qui veut vraiment apprendre le PHP ferait mieux de lire un bon bouquin sur le sujet plutôt que de lire les inepties qu'on trouve sur le site du zéro (surtout celles qui en plus d'être mauvaises sont obsolètes, mais toujours en ligne...).

Voilà voilà...

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Commenter la réponse de neigedhiver
Messages postés
8
Date d'inscription
dimanche 2 août 2009
Statut
Membre
Dernière intervention
9 décembre 2009
0
Merci
Bonjour,
J'ai retravaillé les BDD, j'espère ne pas trop m'être trompé.

CLIENT
- Titre
__Mr
__Mme
__Mlle
- Nom
- Prénom
- E-mail
- Téléphone
- Adresse


PRODUIT
- Titre
- Identifiant
- Description
- Prix HT
- TVA Applicable
- Options variables
__1
__2
__3


PANIER
- Produits contenu (Identifiant chaque produit + options + quantité + prix)
- Montant de la totalité du panier
- Frais de Port
__<500g = X€
__<1000g = X€


COMMANDE
- N° Facture
- Date d'émission
- Mode de règlement
__CB
__Paypal
__Chèque
- État
__En attente de règlement
__Réglée
- Date de règlement
- Adresse de facturation
- Adresse de livraison
- Liste des produits commandés
Commenter la réponse de cs_gabin21
Messages postés
8
Date d'inscription
dimanche 2 août 2009
Statut
Membre
Dernière intervention
9 décembre 2009
0
Merci
Quelle est la suite de la formation ?
Commenter la réponse de cs_gabin21