panier boutique ?
Forum Programmation : panier boutique ?
Salut.
Voila je suis un train de creer une ptite boutique de vente de tshirt.
Je voudrais stocker les valeurs commandés par l'utilisateur dans un panier.
j'ai essaye le stockage de donnee dans un cookie , et aussi dans une base SQL.
Mais aucun des deux ne me convient. Il ya t'il une solution simple et efficace en php pour stocker des valeurs pendant 24 heures. (j'ai entendu parlé de session PHP ?, est ce la solution ?)
MERCI.
le mieux, c'est quand même les cookies et la base ; pourquoi cela ne te convient il pas ?
Utilises osCommerce sinon ;-)
Si la base de données c'est tres pour ce cas!
Mais tu doit mal l'utiliser ou la géré!
Montre voir les tables que tu as créer!
Faudrai passer par une petite analyse rapide ( et oui, le merise c'est chiant, mais c'est utile souvent! )
| Citation : et oui, le merise c'est chiant, mais c'est utile souvent! |
Noon, pas ça !!!
je déconnes il a raison l'analyse c'est important.
Je ne l'ai jamais fait sous php, mais en asp, il exite un objet à inclure (qui facilite grandemant la chose), y a pas ça en php ?
Ma table sql est tres simple (et fonctionne):
$table = zao
et dedans il y a 3 champs : produit , taille , quantité.
mais comment faire une session et creer une table pour chaque utilisateur ? et comment detruire la table a la fin de la commande ?
sa me parait beaucoup pour rien , mais peu-etre que c'est la methode à entreprendre.
MERCI.
il faudrait faire une table commande, avec les articles et l'id du mec qui commande.
Le mieux, ca serai que tu met precisement ce que tu veu ( ce que tu veu garder, .... ) et on te pondera les tables a creer!
Mais faut etre précis sur ce que tu veux!
En fait ma table ne comporte que 4 elements.
je vends donc des Tshirts:
--------------ma table------------
champ 1) le produit
champ 2) la taille (du tshirt)
champ 3) la quantité voulue
champ 4) un lien (annuler) par produit
-----------------------------------
En fait j'ai deja crée ma table , mais je ne sais pas comment creer une table pour chaque utilisateur et la detruire apres ?
il ne faut pas voir ce problème comme ça ; tu as une table qui contient (entre autres)
utilisateur/produit/date
et tu dis d'ignorer toute ligne dont la date est inférieur à la date du jour -X heures (en gros).
Créer une table par utilisateur est beaucoup trop lourd, ingérable et illogique sur le plan relationnel...
Comment faire ?
Deja pour creer une session utilisateur et inscrire un utilisateur dedans ?
Faut pas que tu fasse comme ca!
Je t'ai fait une petite analyse panier pour toi ;-)
ca ferai un truc dans le genre plutot :
Donc il te faudrai 3 tables PRODUIT, UTILISATEUR, et COMMANDE
Et dans la table COMMANDE, à chaque ligne, tu as une commande passe, avec le produit voulu, la quantite, et la date!
Tu peux meme mettre un champs DateLivraison ( ou dans le genre ), et tu garde un historique des commande comme ca!
Bon ca, ca serai pas mal, mais si tu utilise MySQL, je sais pas si ca va etre possible de créer ca, car MySQL gére mal les clé étrangéres, et personnellement, j'ai jamais réussi à mettre 2 clé étrangères sur la meme tables!
Quelqu'un connait bien les clé étrangères avec MySQL ????
Merci pour ta reponse.
J'ai reussi à créer un panier grâce à une base mysql.
Sa fonctionne, mon utilisateur peut s'inscrire puis stocker des produits dans son panier sql à partir d'une boutique.
Maintenant se pose un nouveau probleme.
Comment envoyer par mail le contenu de mon panier mysql ?
Toutes les variables de mon panier sont dans une table mysql (normalemnt j'envois des variables
contenues dans ma page , mais ici les variables ne sont pas dans ma page mais dans ma table sql ????
comment envoyer les variables stockées dans ma table sql ?
MERCI c'est très important pour moi...
tu les sélectionnes en php ; ainsi, tu récupères tes variables ; par contre, je sais plus bien mais il se peut que cela te demande de t'assurer que les variables sont récupérés dans la base avant l'affichage
Tu peux le faire avec les sessions , mais ils ne dureront pas 24heures !
Exemple :
Code :
|
@+
;-)
$session
j'ai deja essayé,
Sa ne fonctionne pas car sa enregistre seulement la valeur qui passe dans la page, mais moi je cherche a envoyer toutes les variables contenues dans une table SQL.
par exemple, une connexion a la base de donnéé sql puis envois des variables d'une table via la commande :
mail ();[/color]
Bah tu fait une connexion a la base, tu fait un S*ELECT * FR*OM machin_table ..
Et les resultats, dans un mail! et avec mail(), zou, ca part par mail!
Comment ca ?
voici mon code :
<?
include("_connection.php" );
$table="produit";
// sélectionne toutes les fiches de la table $table
$query = "SELEC * FROM $table";
$result = mysql_query($query);
// tant qu'il y a des fiches
while ($val = mysql_fetch_array($result)) { ?>
<table width="75%" border="1">
<td><? echo $val["produit"]; ?></td><td><? echo $val["taille"]; ?></td><td><? echo $val["quantite"]; ?> </td>
<? }
?>mail ( $val["taille"] );
[/color]
sa ne marche pas
Comment faire merci ?
Regarde ici
comment on emploi la fonction mail !
@+ ;-)
merci pour ta reponse.
mais je sais comment on emploi la fonction mail, ce que je ne sais pas c'est comment envoyer les variables contenue dans une table sql....via cette fonction
mail ();
merci
bai par exemple , :
Code :
|
<?
/* tu te connectes , tu affiche les résultats avec mysql_fetch_array ! et par exemple pour : */
$taille = $table['taille'];
mail("nom@domaine.com","Taille",$taille);
?>;
je ne recois qu'une taille et non pas toutes les tailles contenues dans $table['taille'];
comment faire pour recevoir toute les lignes de la table ?
merci
Code :
|
Donc ca boucle sur le resultat, avec le while, et pour chaque ligne de resultat, tu creer un message, avec le produit, taille et quantite ( tu peu rajouter l'acheteur ), et tu envoi par mail, pour chaque commande, un mail!
c'est parfais sa fonctionne, merci.
Mais effectivement je reçois un mail par ligne.
donc si j'ai 10 produits dans mon panier , je recois 10 mails.
comment faire pour recevoir les 10 produits dans
1 seul mail ?
est ce possible ?
merci ...
Code :
|
Il faut inscrementer une variable ( $message ) avec chaque ligne de produit, et à la fin ( donc sorti de la boucle ), on envoi un mail avec cette variable!
salut j'ai pas tout lu les reponse à ce topics mais j'ai fait un script de panier numérique utilisant les sessions
tu pouras le trouver ici
ca peut surement t'aider
| Citation :
|
Bai, dans la while, tu fais par exemple un tableau qui enregistre la valeur :
Code :
|
Voilà, comme ça par exemple ! :-D
@+ ;-)
Merci pour ta reponse.
Mais je n'arrive pas a recuperer les variables, voici mon code (j'y ai rajouté ton code):<?
//on affiche les produits
$table="boutique";
// sélectionne toutes les fiches de la table $table
$query = "SELECT * FROM $table";
$result = mysql_query($query);
$panier = array(); //avant la while
$i = 0;
// tant qu'il y a des fiches
while ($val = mysql_fetch_array($result)) { $panier[i] = $valeur; //valeur est-ce que tu veux
$i++; ?>
<table width="75%" border="1">
<td><? echo $val["produit"]; ?></td><td><? echo $val["taille"]; ?></td><td><? echo $val["quantite"]; ?> </td>
<? }
$message="";
foreach($panier as $mes)
{
$message+= $mes."<br>";
}
?>
</table>
<?
if (isset($_GET["commander"])) {mail("webmaster@polygone-3d.com","commande", "salut: $message" );}
?>[/code]
POURAIS TU M'AIGUILLER ?
MERCI BEAUCOUP[/color]
Qu'est-ce que tu veux envoyer comme colonne par mail pour chaque champ ?
@+ ;-)
je veux envoyer les colones :
- PRODUIT
-TAILLE
-QUANTITE
......................................................................................
je voudrais recevoir tous les produits du champ -PRODUIT, idem pour les colones - TAILLE et
-QUANTITE [/color]
Code :
|
merci encore pour ta reponse.
J'ai remplacé mon code par ton code.
Mais dans mon mail, je recois juste ca : <br>
pourquoi ? je comprend pas.
(c'est bien $message que je dois récuperer ?)
ou est l'erreur, en as tu une idée ?
merci...
Essaie ça :
Code :
|
Mais ça va peut être être très con , mais est-ce que dans ce code , tu t'es connecté à mysql ou est-ce que la bdd contient quelques choses ?
@+
BRAVO !!!
sa fonctionne à merveille.
Apparement sa marche depuis que tu as changé cette ligne de commande:
{
$message = $message.$mes."<br>";
}
EN TOUT CAS SA TOURNE , c'est vraiment simpa de ta part de t'être attardé sur mon probleme, t'es vraiment un tueur RIRI.
MERCI ENCORE....
LE ZAO
Lol :-D :-D ,
De rien !
@++ ;-) :-D
J'ai essayé le code envoyé par riri.
J'ai bien le resultat de la requete sql qui s'affiche ca marche nickel mais le probleme c'est que je recois pas d'émail. Je n'ai meme pas de bouton commander ou envoyer ... est-ce normal que dois-je faire. Merci
jen ai un meilleur mais va zy fé moi dé prix et des tee shirt gratuit aprè on verra
mais jespere cé pa des tee shirt malabar ou mouseline
Il y a 1598 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.
