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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
   | //TRANSACTION
		$createcmd = "BEGIN TRANSACTION CREATION_COMMANDE"; //On démarre une transaction et on lui donne un nom
		$createcmd .= "begin";
		$createcmd .= "SP_CREER_COMMANDE '$idclient', '$datecmd', '$tot', '$liv' ";
		//$rs=odbc_do($connection,$createcmd);
 
		if ($createcmd)
		{
			// recupération de l'id de la commande par rapport
			// au numéro client et à la dernière de ses commandes
			$riq = "SP_RECUPCMD_COMMANDE '$idclient' ";
			$rik=odbc_do($connection,$riq);
			odbc_fetch_into($rik,$fiis);
			$NumCd=$fiis[0];
 
			foreach ($panier as $valeur=>$cde)
			{
				$sql15 = "SP_INFOJEU_JEUX_VIDEO '$valeur' ";
				$req15=odbc_do($connection,$sql15);
				// recupération du stck d'un produit
				$stck=odbc_result($req15,'jv_qte');
				$nbVente=odbc_result($req15,'jv_nbvente');
				$newNbVente= $nbVente + $cde;
				$newstock = $stck - $cde;
 
				//mise à jour du stock
				$udstock= "SP_MAJSTOCK_JEUX_VIDEO '$newstock', '$newNbVente', '$valeur' ";
				$rudstock=odbc_do($connection,$udstock);
 
				if($rudstock)
				{
						$createcmd.="SP_CREERARTICLECMD_LIGNECOMMANDE '$NumCd', '$valeur', '$cde' ";
						$rsILS=odbc_do($connection,$createcmd);
 
						if ($rsILS)
						{
							$createcmd .= " COMMIT TRANSACTION CREATION_COMMANDE "; //On commit la transaction
							echo "<SCRIPT LANGUAGE='JavaScript'>alert('Votre commande à bien été prise en compte.');</SCRIPT>  ";
							echo "	<h3 align=center>Votre commande à bien été prise en compte.<br/> <a href=ResumerCommande.php  class=type1> Voir le résumer de la commande</a></h3>";
							echo '<script language="javascript">document.location.href = "ResumerCommande.php"</script>';
							$_SESSION['RefCmd']= $NumCd;
							unset($_SESSION['panier']);
						}// si il y a eu des erreurs
						else 
						{
							echo 'Une erreure est survenue';
							$createcmd .= " ROLLBACK TRANSACTION CREATION_COMMANDE "; //On annule tous les changements de cette transaction
						}
//FIN TRANSACTION						
				}
				else
				{
					echo 'Une erreure est survenue';
				}
			}
		} | 
Partager