Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1871 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Panier selon bouton

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Panier selon bouton

n°911420
jiojio
Posté le 30-11-2004 à 18:12:47  profilanswer
 

Bonsoir,
Je dois créer un mini site pour commander des cds! On n'a une liste de cds et un bouton pour envoyer au panier comme cela :
 
 AUTEUR     TITRE    PRIX
 Mozart | Symphonie | 15   (bouton) AJOUTER AU PANIER
 Ataris | The world | 12   (bouton) AJOUTER AU PANIER
 Goldman| On ira    | 7    (bouton) AJOUTER AU PANIER
 
Je dois mettre dans un cookie le cd choisi mais je ne vois pas comment mettre cela par un boutton (car on ne saisie rien dans une variable...  :sweat: ) Je pensais mettre chaque cd dans une variable comme cela $auteur1=Mozart $titre1=Symphonie $prix1=15 etc etc pour tous les cds...mais ça va être assez lourd comme code non ?
 
Merci d'avance

mood
Publicité
Posté le 30-11-2004 à 18:12:47  profilanswer
 

n°911428
fb@alphalo​g
Posté le 30-11-2004 à 18:34:52  profilanswer
 

tu as deux solutions :  

  • soit lier tes boutons a des liens du genre addProduit?ref=$ref
  • soit faire un formulaire par ligne et le bouton de bout de ligne est le "submit"


Message édité par fb@alphalog le 30-11-2004 à 18:35:06
n°911433
jiojio
Posté le 30-11-2004 à 18:44:50  profilanswer
 

Tu as des exemples pour le addPRoduit?ref=$ref ?
 
Si tu fais un formulaire, c'est à l'utilisateur de saisir le cd qu'il veut ? parce que là tout est déjà saisie. Il a juste à cliquer sur le boutton ajouter au panier...
 
Pour toi quelle est la méthode la plus efficasse ? (et plus simple car je suis débutant  :cry: )
 
merci

n°911442
fb@alphalo​g
Posté le 30-11-2004 à 19:03:32  profilanswer
 

voila ce que je te conseille
chaque ligne ressemblera a :  

Code :
  1. <form action="ajoutDansLeCaddie.php" methode="POST">
  2. <li> titre , artiste , valeur
  3. <input type="hidden" name="ref" value="<? echo $ref; ?>">
  4. <submit value="ajouter au panier"></li>
  5. </form>


 
et la page ajouteDansLeCaddie.php ajoute la reference ( recuperé par  la variable $_POST['ref'] )  dans le cookie , ou dans la session , au choix

n°911453
jiojio
Posté le 30-11-2004 à 19:16:10  profilanswer
 

ok ok je commence à comprendre comment tu vois la chose  ;)  
 
donc si j'ai bien compris (je m'avance peu être trop vite quand je dis ça... :lol: ), ça ressemblera à ça :
 

Code :
  1. <form action="ajoutDansLeCaddie.php" methode="POST">
  2. <li> Mozart , Symphonie , 15
  3. <input type="hidden" name="ref1" value="<? echo $ref1; ?>"> 
  4. <submit value="ajouter au panier"></li>
  5. </form>
  6. <form action="ajoutDansLeCaddie.php" methode="POST">
  7. <li> Ataris , The World , 12
  8. <input type="hidden" name="ref2" value="<? echo $ref2; ?>"> 
  9. <submit value="ajouter au panier"></li>
  10. </form>
  11. <form action="ajoutDansLeCaddie.php" methode="POST">
  12. <li> Goldman , On ira , 7
  13. <input type="hidden" name="ref3" value="<? echo $ref3; ?>"> 
  14. <submit value="ajouter au panier"></li>
  15. </form>


 
c'est ça?  
Par contre un truc que je pige pas c'est comment tu pourras réccupérer les valeurs une par une. Enfin tu vois quand l'utilisateur aura cliquer sur ajouter au panier, une autre page s'ouvre avec marquée " Le cd The World de The Ataris a bien été ajouté au panier"
 
Du genre le cd $cd2 de $auteur2 a bien été ajouté ! :heink:  
 
désolé désolé  :whistle:

n°912290
jiojio
Posté le 01-12-2004 à 17:43:25  profilanswer
 

bon...c'est pas ça  :heink: si ? lol

n°912339
naceroth
Posté le 01-12-2004 à 18:57:17  profilanswer
 

Ben, si tes trois champs cachés portaient tous le même nom, ça simplifierait déjà le traîtement ;)

n°912361
jiojio
Posté le 01-12-2004 à 19:15:48  profilanswer
 

ok ok c'est vrai  ;)  je n'ai jamais utilisé type="hidden" donc je suis un peu perdu..:-)
 
donc je récapitule  
 

Code :
  1. <form action="ajoutDansLeCaddie.php" methode="POST"> 
  2. <li> Mozart , Symphonie , 15 
  3. <input type="hidden" name="ref" value="<? echo $ref1; ?>"> 
  4. <submit value="ajouter au panier"></li> 
  5. </form> 
  6. <form action="ajoutDansLeCaddie.php" methode="POST"> 
  7. <li> Ataris , The World , 12 
  8. <input type="hidden" name="ref" value="<? echo $ref2; ?>"> 
  9. <submit value="ajouter au panier"></li> 
  10. </form> 
  11. <form action="ajoutDansLeCaddie.php" methode="POST"> 
  12. <li> Goldman , On ira , 7 
  13. <input type="hidden" name="ref" value="<? echo $ref3; ?>"> 
  14. <submit value="ajouter au panier"></li> 
  15. </form>


 
mais c'est repond pas à ma question sur la reprise des valeurs une par une..
 
encore merci

n°912371
naceroth
Posté le 01-12-2004 à 19:29:11  profilanswer
 

je la comprends pas bien, ta question :D
 
Ta liste de CD n'est pas dans une db ?

n°912399
jiojio
Posté le 01-12-2004 à 19:52:22  profilanswer
 

Non c'est des noms dans un tableau et je dois récupérer cela en cliquant sur AJOUTER PANIER selon le cd par un cookie...il n'y a pas de bd...

mood
Publicité
Posté le 01-12-2004 à 19:52:22  profilanswer
 

n°912419
naceroth
Posté le 01-12-2004 à 20:09:06  profilanswer
 

Ah :)
 
Passe toutes les données que tu dois récupérer par des champs hidden, on avait supposé que tu avais une base pour retrouver tes données avec uniquement la ref :)

n°912441
jiojio
Posté le 01-12-2004 à 20:29:17  profilanswer
 

Le probleme est que je ne vois pas à quoi sert HIDDEN (caché...) ! il faut donc créer une variable pour chaque auteur, chaque titre, chaque prix ?
 
vous pouvez juste me montrer un exemple svp  :cry:

n°912449
naceroth
Posté le 01-12-2004 à 20:40:33  profilanswer
 

Code :
  1. <form action="ajoute.php" method="post">
  2. <li>Mozart, Symphonie, 15
  3. <input type="hidden" name="auteur" value="Mozart" />
  4. <input type="hidden" name="titre" value="Symphonie" />
  5. <input type="hidden" name="prix" value="15" />
  6. <input type="submit" value="Ajouter" />
  7. </li>
  8. </form>


 
Par exemple.

n°912472
jiojio
Posté le 01-12-2004 à 20:54:22  profilanswer
 

ahhhhhhhhhhhhhhhhhhhhhh d'accord !!!!!!!!!!! je voissssss quoiiiiiiii !! je vais tenter ça tout de suite !!! Merci en tout cas  :)

n°912492
jiojio
Posté le 01-12-2004 à 21:29:56  profilanswer
 

yessssssssssss !! ça marcheeeeeeeeeee merciiiiiiiiii biennnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn  :p

n°913245
jiojio
Posté le 02-12-2004 à 20:44:49  profilanswer
 

grrrrr j'ai encoreeeee un petit probleme !!!!
Je ne comprends pas pourquoi il me dit que j'ai déjà un cd dans la liste ! (en faite on peut avoir UN SEUL cd par catégorie ! Donc....si le cookie existe je dis que bah on peut en n'avoir qu'un...  :p  mais quand je click sur ajouter panier il me dit qu'on peut en acheter qu'un et il me créé le cookie...alors qu'il devrait me dir que le cd a été ajouté et ensuite si je reclick sur ajouter panier...impossible d'avoir 2 cd...mais là... :sweat:  
 

Code :
  1. <?
  2.    ###Si le cookie n'existe pas, on enregistre la commande###
  3.    if((empty($_COOKIE["cookie_auteur"]) or empty($_COOKIE["cookie_titre"]) or empty($_COOKIE["cookie_prix"])))/* on teste si tous les champs sont remplis */
  4.      {
  5.     echo 'Boutique Moderne <br>';
  6.     echo 'Le cd ', $titre,' de ', $auteur, 'a été ajouté<br>';
  7.     echo '<a href="classique.php">[suite]</a>';
  8.      }
  9.     else
  10.       ###Si il existe, on dit à l'utlisateur qu'il a déjà un cd classique au panier###
  11.      {
  12.     echo 'Boutique Moderne <br>';
  13.     echo 'Vous pouvez acheter seulement un cd<br>';
  14.     echo '<a href="classique.php">[suite]</a>';
  15.     }
  16.     ?>

n°913410
naceroth
Posté le 02-12-2004 à 23:59:15  profilanswer
 

Juste comme ça, pourquoi tu utilises des cookies pour ce genre de question ?
 
Sinon (à nouveau) je comprends pas ton problème, là, tu vérifies l'existence du cookies, pas son contenu  :heink:

n°914159
jiojio
Posté le 03-12-2004 à 17:36:43  profilanswer
 

Parce que on étudie les cookies en ce moment en cours..donc je dois utiliser des cookies pour faire ça :/ mais le blem c'est qu'ils ne font pas de cours sur les cookies !! Il te filent le sujet et DEMMERDER vous  :pt1cable:  !!! Donc tout doit être gérer par des cookies  :cry:  
 
Bon la le pb c'est que quand le cookie n'est pas créer, c'est impec ! Il me dit bien que le cd a été ajouté dans le panier ! Par contre quand je veux en reprendre un (et on a le droite qu'à UN seul cd) je dois dire que Non il y en a déjà un...Il me fait ça, mais le pb c'est que il m'écrase l'ancien cookie et mais un nouveau (le 2eme cd que je choisis...) donc je pige pas ça, mon code semble être bon...

n°914170
naceroth
Posté le 03-12-2004 à 17:42:32  profilanswer
 

Forcément qu'il écrase l'ancien cookie, je sais pas où tu cases la création, mais elle est pas dans le test que tu indiques plus haut :)

n°914199
jiojio
Posté le 03-12-2004 à 18:12:07  profilanswer
 

Bah il se met dans le dossier cookie avec l'ensemble des autres cookies...
 
setcookie('cookie_auteur',$auteur,time() +10800,'/');
 
Mon path est '/'...
 
mais ça fontionne pour ma page d'index ! Si le cookie de l'utilisateur existe on l'envoit sur la page pour acheter des cds sinon sur la page inscription !
 
Je ne vois pas pourquoi il m'écrase les cookies pour les cds   :cry:

n°914893
jiojio
Posté le 04-12-2004 à 20:24:37  profilanswer
 

alors naceroth tu vois pas comment je pourrais faire pour cela :s

n°914920
naceroth
Posté le 04-12-2004 à 21:33:27  profilanswer
 

Si probablement, je t'ai dit plus haut que tu créais probablement pas le cookies au bon endroit :)
 
Là, comme tu donnes pas la phase de création du cookie, c'est difficile d'être plus précis :)

n°915019
jiojio
Posté le 05-12-2004 à 10:55:10  profilanswer
 

bah la création de cookie se fait à partir de cette déclaration...
 
setcookie('cookie_auteur',$auteur,time() +10800,'/');  
 
et le path est '/' donc mes cookies se logent tous dans  
C:\Documents and Settings\moi\Cookies
 
 
Ce n'est pas settcookie la phrase pour créer le cookie ?

n°915153
jiojio
Posté le 05-12-2004 à 16:13:41  profilanswer
 

Pourquoi j'ai une erreur de ce type ???
 
Parse error: parse error, unexpected '{' in c:\logiciel\easyphp1-7\www\copie de mp3\test\untitled-2.php on line 10
 
 

Code :
  1. if((empty($_COOKIE['cookie_prix_classique']) or (empty($_COOKIE['cookie_prix_classique']) or (empty($_COOKIE['cookie_poprock']) or empty($_COOKIE['cookie_prix_variete']))
  2. { ##### LIGNE 10 ###
  3. $prixjazz = 0
  4. $prixclassique = 0
  5. $prixpoprock = 0
  6. $prixvariete = 0
  7. }
  8. ?>


Message édité par jiojio le 05-12-2004 à 16:14:09
n°915185
naceroth
Posté le 05-12-2004 à 17:35:07  profilanswer
 

Jiojio a écrit :

bah la création de cookie se fait à partir de cette déclaration...
 
setcookie('cookie_auteur',$auteur,time() +10800,'/');  
 
et le path est '/' donc mes cookies se logent tous dans  
C:\Documents and Settings\moi\Cookies
 
 
Ce n'est pas settcookie la phrase pour créer le cookie ?


 
C'est pas possible, dit moi que tu le fait exprès ? je me moque complètement de savoir où ils sont stockés sur ton HD, avec quelle instruction tu les crées, je veux savoir où dans ton code se crée le cookie, donc je voudrais voir un code avec un setcookie dedans :)
 
PS : la parse error est du au fait qu'il manque au moins une ) dans le if

n°915197
jiojio
Posté le 05-12-2004 à 17:47:59  profilanswer
 

naceroth a écrit :

C'est pas possible, dit moi que tu le fait exprès ? je me moque complètement de savoir où ils sont stockés sur ton HD, avec quelle instruction tu les crées, je veux savoir où dans ton code se crée le cookie, donc je voudrais voir un code avec un setcookie dedans :)
 
PS : la parse error est du au fait qu'il manque au moins une ) dans le if


 
 
euh....ça doit être ça que tu veux je crois  :wahoo: ...na?? lol  
 

Code :
  1. <?
  2. settype($auteur,'string');
  3. settype($titre,'string');
  4. settype($prix,'string');
  5. $auteur="Michel Sardou";
  6. $titre="Cool la vie";
  7. $prix="7 €";
  8. setcookie('cookie_auteur_variete',$auteur,time() +10800,'/');/* expire dans 3 heures */
  9. setcookie('cookie_titre_variete',$titre,time() +10800,'/');/* expire dans 3 heures */
  10. setcookie('cookie_prix_variete',$prix,time() +10800,'/');/* expire dans 3 heures */
  11. ?>


 
Je mets ce code en haut de la page avant la balise HTML

n°915198
naceroth
Posté le 05-12-2004 à 17:51:47  profilanswer
 

Donc avant de tester s'il n'existe pas déjà un cookie ?

n°915200
jiojio
Posté le 05-12-2004 à 17:53:21  profilanswer
 

euh oui... :??:
 
mais la déclaration de cookie se fait avt HMTL on peut faire des conditions là dedant aussi ?????


Message édité par jiojio le 05-12-2004 à 17:54:27
n°915203
naceroth
Posté le 05-12-2004 à 18:00:46  profilanswer
 

Evidement, la seule contrainte est liée au fait qu'un cookie doit précéder tout affichage sur le client, ensuite que tu le fasses avant le <html> ou après en utilisant un buffer, c'est kif kif :)

n°915204
jiojio
Posté le 05-12-2004 à 18:01:56  profilanswer
 

oula un "buffer" c'est quoi...

n°915226
jiojio
Posté le 05-12-2004 à 18:49:50  profilanswer
 

ah non voilà ! ça marche parfaitement maintenant  :ange:  !!!
 
PAR CONTRE...lol j'ai un pb pour supprimer mes cookies  
 

Code :
  1. setcookie('cookie_auteur_classique');
  2. setcookie('cookie_titre_classique');
  3. setcookie('cookie_prix_classique');
  4. setcookie('cookie_auteur_jazz');
  5. setcookie('cookie_titre_jazz');
  6. setcookie('cookie_prix_jazz');


 
J'ai fait ça pour tous les cookies que je voulais supprimer mais il m'efface des cookies qu'il ne faut pas par moment..ou alors il n'efface rien du tout  :sweat:

n°915228
naceroth
Posté le 05-12-2004 à 18:52:11  profilanswer
 

les buffers de sortie permettent de contrôler quand les données sont envoyées au navigateur, on s'en sert notamment lorsqu'on doit envoyer des entêtes (avec header ou autres) après avoir envoyé des données.
 
Bref, t'en préoccupe pas encore si tu ne les as pas vu lors de tes cours :)

n°915233
jiojio
Posté le 05-12-2004 à 18:57:31  profilanswer
 

à vrai dire..je n'ai pas de cour sur le php...on nuos file le sujet et AUTONOMIE... ils te donnent une aide à 2 balles qui sert à rien du tout  :kaola: !!!

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Panier selon bouton

 

Sujets relatifs
Composant bouton avec image png ?Bouton qui cache une form et en ouvre une autre.
Bouton "parcourir" pour aller chercher un fichier[php/html] bouton submit avec image
formulaires : recuperer la valeur d'un bouton radiobouton pour ouvrir un .exe
[Outlook/VB] Ajout d'un bouton[SQL/Access] cacher un bouton
Enlever le bouton impression sur image RESOLUbouton submit et javascript
Plus de sujets relatifs à : Panier selon bouton


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR