begin process at 2012 05 31 05:28:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

POO

 > 

Classes & Objets

 > 

Page précédente et enregistrement de commande dans base de données


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Page précédente et enregistrement de commande dans base de données

lundi 15 novembre 2010 à 22:30:05 | Page précédente et enregistrement de commande dans base de données

paulito47

Bonjour à tous,

Je suis en train de développer un site ecommerce. Je souhaite enregistrer une commande dans ma base de données.
Voici les tables auquel je m'intéresse ici:
reservation : id_commande, user_commande, date_commande, prix_commande, quantite_commande, statut_commande

ligne_commande : id_commande, id_ligne, id_product, quantite, prix

Lorsque je souhaite enregistrer la commande, tout s'effectue correctement.
Or, lorsque que je reviens sur la page précédente j'ai la possibilité de resoumettre la commmande si je clique sur le lien.
Comment empêcher de revalider la commande?

voici l'action dans ma classe controller concernant l'enregistrement de la commande:

case ACTION_GOTO_VALIDER_PANIER:
if ($user->is_connect()){ $shoppingCart->enregistrer_commande(); header($location.PAGE_INFOS_LIVRAISON);
}
else{
header($location.PAGE_CONNEXION);
exit;
}

Voici la fonction dans la classe ShoppingCart permettant d'enregistrer la commande.

public function enregistrer_commande(){
$user = User::getInstance();
$id_user = $user->user_by_ref($_SESSION[ID_USER]);
$sql = "INSERT INTO reservation VALUES ('', %d, NOW(), %d, %d, '','')";
$result = mysql_query(sprintf($sql, $_SESSION[ID_USER], $this->getPriceTotal(), $this->quantity));
$id_commande = mysql_insert_id();
$sql = "INSERT INTO ligne_commande VALUES ('%d', %d, %d, %d, %d)";
$ligne = 1;
foreach ($this->content as $row){
$result = mysql_query(sprintf($sql, $id_commande, $ligne++, $row->getProduct()->id, $row->getQuantity(), $row->getProduct()->prix_produit));
}
}


Voilà si quelqu'un avait une idée..
Je vous remercie d'avance.
lundi 15 novembre 2010 à 23:32:05 | Re : Page précédente et enregistrement de commande dans base de données

cod57

Bonsoir

Une piste

Tu as des javascripts pour faire disparaître le bouton valider et bloquer la touche F5 et entrée mais bon ...

Il faudrait passer une variable $_SESSION['client']['validation'] à false

connais tu ce tutorial ?
www.phpwebcommerce.com/php-mysql-shopping-cart-tutorial.php

a++


Cette discussion est classée dans : enregistrer, page, commande, user, id


Répondre à ce message

Sujets en rapport avec ce message

Envoyer des donnes à une autre page [ par errahmouninawal ] Bonjour tout le mondeJ'ai un probléme d'envoyer les données d'un page à une autre Voilà mon code : <form id="form1" name="form1" method="post" action= Concept de structure... [ par tabasco_nemesis ] Bonjour à tous. Je suis en train de réaliser un "framework" perso : pour comprendre, et pour savoir quoi faire et où et comment lorsque je suis amené Requête sql [ par bayrem90 ] Bonjour, Mon problème que je veu dupliqué l'id de mon tableau sur un champ du même table Biensure a partir du mon page du formulaire d'insertion des Petit coup de main affichage de page [ par sith31 ] Bonjour, voila je débute sur PHP, j'ai créer une BDD avec 3 "page" avec des ID et tout. En fait mon soucis, et je me casse la tête depuis 2 jours dess problème dans une requette [ par devmouad ] qauand j'exécute le bout de code suivantif(!isset($_POST['d1']) && !isset($_POST['d2']))$s=" SELECT * FROM detail_cmd,commande where detail_cmd.id_det enregistrer une page php générer sans l'afficher [ par tchoule84 ] bonjour,Voila je développe actuellement un petit programme pour un cybercafé café qui leur permettai de sortir des stats a la fin de chaque mois. Rien erreur 403- envoi d'un formulaire via $_post [ par Midn ] Bonjour à tous, tout d'abord merci de prendre le temps de lire mon appel au secours, et peut être d'y répondre. Alors pour les infos: Hébergeur: live Impossible de mettre une variable dans les cookies [ par sayadeur ] bonjour, je crée un identifiant unique pour mes visiteur que je met dans leur cookie, le problème c'est que aucun cookie n'est enregistré et je ne vo Requête introuvable ... [ par cdie ] Chers amis développeurs, bonjour, Je vous écris car je travaille actuellement sur un site pour un projet et j'avoue que je ne trouve pas une requête. Jointure entre deux tables [ par Krasha ] Salut, Sur ma base de données j'ai deux tables distinctes qui devraient avoir une "liaison" entre elles. (les deux tables ci-dessous ne sont que des


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,374 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales