IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Panier en JS


Sujet :

JavaScript

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut Panier en JS
    Bonjour à tous ,

    Dans le cadre d'un TP je doit créer un site de type e-commerce, j'en suis à la réalisation du panier , et pour se faire je n'ai droit qu'a du JS (j'aurai préféré du PHP)

    Toutefois je débute la formation en Js et a vrai dire je suis pas mal largué, je souhaiterai savoir si quelqu'un dispose de code en JS et HTML qui retracerai un panier mais une version light :
    -Ajouter un produit
    -Supprimer un produit
    ...
    (Pas de cokies)

    Rien de plus je ne cherche pas a faire un site pour mettre en ligne mais juste pour ma culture perso.

    Merci pour votre aide.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    un panier sans cookies ?

    manquerait plus qu'il faille que ce soit crossbrowser en plus !!

    si c'est uniquement sous windows c'est réalisable avec des variables navigateur ...

    sinon heu t'es dans la chmire ...
    va falloir tout passer en pramètre dans l'url d'une page à l'autre ...

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    Si Windows
    En effet c'est juste en windows

    C'est pas possible de faire un panier d'une maniere simple genre j'ai un tableau (HTML) du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <table>
    	<tr>
    		<td id="ProCurve_2650">ProCurve 2650 J4899C</td>
    		<td><img src="img\produits\ProCurve_2650_J4899C.jpg"/></td>
    		<td>Commutateur - 48 ports</td>
    		<td>823,00€</td>
    		<td><a href ="javascript:void(0)" onClick ="ajoute_objet('ProCurve_2650',2045);"/><img src="img\caddie.png" border="0"/></a></td>
    	</tr>
    </table>
    Puis en JS des trucs simple du style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    /**cree l'objet panier**/
    function Panier(){
    	// A chaque fois que le client clique sur le caddie on ajoute une nouvelle ligne dans cette variable Array
    	this.caddie=new Array();
    }
     
    /**fonction insert_produit pour ajouter un produit dans le panier**/
    //Prototype permet de redéfinir la fonction insert_produit
    Panier.prototype.insert_produit=function(NewProduit){
    	//on insère une nouvelle ligne dans le caddie contenant le produit ajouté avec toutes ses caractéristiques
    	//NewProduit est donc un tableau à une ligne : ref,prix
    	this.caddie[this.caddie.lenght]=NewProduit;
    }
     
    /**programme principal **/
    function ajoute_objet(id,prix){
    	//Instancie le panier
    	MonPanier=new Panier();	
    	//Créer une nouvelle ligne produit
    	NewProduit=new Array(id,prix);
    	MonPanier.insert_produit(NewProduit);
    	print_r(MonPanier);
    }
     
     
    /**Fonction pour supprimer un produit dans le caddie**/
    Panier.prototype.Delete = function(index) {
    	if ( this.caddie.length > 0 ) {
    		this.caddie = del_index(this.caddie,index);
    	}
    }
     
    /**Fonction qui permet la suppression complète de mon pannier**/
    function supprimer_MonPanier(){
    delete MonPanier;
    MonPanier = null;
    }
    Mos script JS est mauvais au large!!!!

    Merci pour vos réponses

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    le problème majeur est qu'il faudra rester sur la même page car une variable n'a pas de protée au dela de la page...


    crossbrowser = jargon super technique ^^ = compatible avec les différents navigateurs (IE FFX OPERA Tootiweb maxthon Avant Browser etc ... )

    IE accepte des variables navigateur qui ont une portée au dela de la page active, sur la session du navigateur

  5. #5
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    Heu bon c'est un point à savoir ,

    Question à 1000 balles : la portée des variables ne va pas au dela d'une frame ?

  6. #6
    Membre émérite Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Points : 2 953
    Points
    2 953
    Par défaut
    Salut,

    Je ne comprends pas, même pour un TP, comment créer une boutique en ligne sans base de données ou même scripts serveur pour taper dans les produits?
    Car l'idée serait donc peut-être de gérer l'affichage de la boutique en ajax. Ainsi aucun chargement de la page ne serait nécessaire.

  7. #7
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    Citation Envoyé par franculo_caoulene Voir le message
    Je ne comprends pas, même pour un TP, comment créer une boutique en ligne sans base de données ou même scripts serveur pour taper dans les produits?
    Malgré les problèmes que cela induit (maintenance, essentiellement), une "base de données" peut tout à fait être gérée dans des tableaux JS ...
    De même, ces données peuvent être stockées dans des fichiers text/XML en local (=> Ajax sans serveur) ...

    A+

  8. #8
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    A vrai dire c'est une tres bonne question , je crois simplement que le formateur veut nous faire prendre connaissance des manipulations des tableaux en JS et boucle ittératives je pense... Mais à lire vos réponses j'ai l'impression d'avoir à faire à une montagne de problèmes .

    A vrai dire je crois simplement qu'il faut faire :

    -Sur clic
    -Dans JS vérifier que le panier existe sinon le créer
    -Puis ajouter à ce tablleau les valeurs envoyer via le onclic
    -Si produit existant dans le panier incrémenter sa valeur
    -Afficher le panier
    -Avoir la possibilité de supprimer un élément ou le panier

    Merci pour votre précieuse aide ..

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    on peut peut passer des varaibles d'une frame à l'autre ...
    mais bon les frames c'est deprecated ...
    ce n'est plas w3c correct
    sinon pour le coup des array mieux vaut faire un array litteral ...

  10. #10
    Membre émérite Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Points : 2 953
    Points
    2 953
    Par défaut
    Citation Envoyé par E.Bzz Voir le message
    Bonjour,
    Malgré les problèmes que cela induit (maintenance, essentiellement), une "base de données" peut tout à fait être gérée dans des tableaux JS ...
    De même, ces données peuvent être stockées dans des fichiers text/XML en local (=> Ajax sans serveur) ...

    A+
    Je sais, c'est vrai je n'ai pas complètement exprimé mon idée. je pense juste qu'il manque des informations données par javaboy, peut-être dues au manque d'informations fournies par son formateur.
    En gros comment est géré le stock de la boutique. Si c'est juste un panier à faire et non une boutique (gestion de stock) ne t'occupes pas du chargement de la page.

  11. #11
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    les frames c'est deprecated ...
    En effet j'ai pu le remarquer mais je suis trop avancé dans le code pour me remettre en div, ou iframe! De plus je code exclusivement en PHP Mysql et un peu JS d'abitude donc je préfères les "require" et "include" je ne sais meme pas comment on gere cela les include pour DHTML. Donc les frames c'était le bon compromis y a rien à comprendre (enfin pour le moment )

  12. #12
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    j'ai pas dit windows... j'ai dit IE ...

    donc sous IE et uniquement IE tu peux faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    navigator['monpanier']=new Array()
    le tableau ainsi créé sera accessible pendant toute la session du navigateur

  13. #13
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    Je sais, c'est vrai je n'ai pas complètement exprimé mon idée. je pense juste qu'il manque des informations données par javaboy, peut-être dues au manque d'informations fournies par son formateur.
    En gros comment est géré le stock de la boutique. Si c'est juste un panier à faire et non une boutique (gestion de stock) ne t'occupes pas du chargement de la page.
    Pardon si je me suis mal exprimé au départ...
    Pour faire simple il n'y à pas de BDD juste du code que je tape a la main qui fait un "SITE E-COMMERCE" enfin comme si on était revenu en l'an de grace 1980.

    Le formateur il veut :
    du DHTML indui en partie via des display:none ....
    Faire un "panier" en JS
    Un contrôle de formulaire
    Il veu que ce soit agréable
    Et dynamique (genre tu clic et hop un div s'affiche pour des informations...)
    Rien de ce qui pourrai ressembler à the site E-commerce, on ne cherche pas à faire un discount protéger ou autre juste quelque chose de relativement simple qui permet de nous faire découvrir les bases de tous.

    J'espère avoir été compris

Discussions similaires

  1. Réponses: 4
    Dernier message: 04/10/2005, 10h47
  2. [Servlet/JSP] - Methodologie et avis pour un panier
    Par ShinJava dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 08/09/2005, 08h35
  3. panier virtuel
    Par jive dans le forum ASP
    Réponses: 5
    Dernier message: 23/08/2005, 18h42
  4. créer un Panier d'achat, quelle techno ?
    Par virgul dans le forum E-Commerce
    Réponses: 7
    Dernier message: 14/06/2005, 15h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo