Bonjour,

J'aimerai diminuer la quantité en stock de chaque produit commandé. J'ai essayé quelque chose mais ça ne fonctionne pas. Et vu mon niveau et le temps que j'y ai déjà passé... je préfère me tourner vers vous.

Table: ligne_commande
id.......................int(11)
num_commande....int(10)
produit................int(10)
prix....................float(5,2)
quantite..............int(11)
taille..................varchar(6)
ss_ss_total_ttc.....float(7,2)

LES VALEURS DE TAILLE : "unique", "36 (XS", "38 (S)", "40 (M)", "42(L)", "44 (XL"

Table: produit
id......................int(20)
...
taille_unique........int(11)
36_XS................int(11)
38_S..................int(11)
40_M..................int(11)
42_L...................int(11)
44_XL.................int(11)

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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?php
if ($response_code == 00){
$paramcom_num = $order_id;
mysql_select_db($database_xx, $xx);
$query_num = sprintf("SELECT * FROM ligne_commande INNER JOIN produit ON produit.id = ligne_commande.produit WHERE ligne_commande.num_commande = %s", GetSQLValueString($paramcom_num, "int"));
$num = mysql_query($query_num, $xxx) or die(mysql_error());
$row_num = mysql_fetch_assoc($num);
$totalRows_num = mysql_num_rows($num);
 
if ($row_num['taille'] == "unique"){
$stock_tu = $row_num['taille_unique'] - $row_num['quantite'];
$prdt_tu = $row_num['produit.id'];
$updatestock_tu = sprintf("UPDATE produit SET taille_unique=%s WHERE id=%s",
                       GetSQLValueString($stock_tu, "int"),
                       GetSQLValueString($prdt_tu, "int"));
  mysql_select_db($database_xxx, $xxx);
  $Result2 = mysql_query($updatestock_tu, $xxx) or die(mysql_error());
}
if ($row_num['taille'] == "36 (XS"){
$stock_36 = $row_num['36_XS'] - $row_num['quantite'];
$prdt_36 = $row_num['produit.id'];
$updatesstock_36 = sprintf("UPDATE produit SET 36_XS=%s WHERE id=%s",
                       GetSQLValueString($stock_36, "int"),
                       GetSQLValueString($prdt_36, "int"));
  mysql_select_db($database_xxx, $xxx);
  $Result3 = mysql_query($updatestock_36, $xxx) or die(mysql_error());
}
if ($row_num['taille'] == "38 (S)"){
$stock_38 = $row_num['38_S'] - $row_num['quantite'];
$prdt_38 = $row_num['produit.id'];
$updatestock_38 = sprintf("UPDATE produit SET 38_S=%s WHERE id=%s",
                       GetSQLValueString($stock_38, "int"),
                       GetSQLValueString($prdt_38, "int"));
  mysql_select_db($database_xxx, $xxx);
  $Result4 = mysql_query($updatestock_38, $xxx) or die(mysql_error());
}
if ($row_num['taille'] == "40 (M)"){
$stock_40 = $row_num['40_M'] - $row_num['quantite'];
$prdt_40 = $row_num['produit.id'];
$updatestock_40 = sprintf("UPDATE produit SET 40_M=%s WHERE id=%s",
                       GetSQLValueString($stock_40, "int"),
                       GetSQLValueString($prdt_40, "int"));
  mysql_select_db($database_xxx, $xxx);
  $Result5 = mysql_query($updatestock_40, $xxx) or die(mysql_error());
}
if ($row_num['taille'] == "42 (L)"){
$stock_42 = $row_num['42_L'] - $row_num['quantite'];
$prdt_42 = $row_num['produit.id'];
$updatestock_42 = sprintf("UPDATE produit SET 42_L=%s WHERE id=%s",
                       GetSQLValueString($stock_42, "int"),
                       GetSQLValueString($prdt_42, "int"));
  mysql_select_db($database_xxx, $xxx);
  $Result6 = mysql_query($updatestock_42, $xxx) or die(mysql_error());
}
if ($row_num['taille'] == "44 (XL"){
$stock_44 = $row_num['44_XL'] - $row_num['quantite'];
$prdt_44 = $row_num['produit.id'];
$updatestock_44 = sprintf("UPDATE produit SET 44_XL=%s WHERE id=%s",
                       GetSQLValueString($stock_44, "int"),
                       GetSQLValueString($prdt_44, "int"));
  mysql_select_db($database_xxx, $xxx);
  $Result7 = mysql_query($updatestock_44, $xxx) or die(mysql_error());
} 
} ?>
Il n'y a pas encore de boucle. Mais je pensais que ça fonctionnerait pour le 1er produit de la table ligne_commande. Mais ça ne marche pas du tout.
J'ai essayé de travailler dessus toute une journée... je suis un peu désespérée.