Bonjour,
Je débute avec PDO...
J'ai dissocié mes requêtes préparées PDO dans un fichier à part et je cherche à les appeler dans une fonction (il s'agit d'une fonction qui calcule un frais de port à partir du poids.)
Je fais un global des variables et la premiere PoidsMaxReq fonctionne parfaitement, par contre la deuxième (qui a un bindParam) ne fonctionne pas.
Fichier de fonctions :
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 function BasketShipTotal($poidsTotal) { global $TrouveTrancheLivrReq; global $PoidsMaxReq; $PoidsMaxReq-> execute(); $PoidsMaxTab = $PoidsMaxReq->fetch(); $PoidsMax = $PoidsMaxTab['poids_port']; $nbcolis = ceil($poidsTotal/$PoidsMax); $poidsrestant = $poidsTotal; for($icolis=0;$icolis<$nbcolis;$icolis++) { if($poidsrestant < $PoidsMax){ $poidsrequete = $poidsrestant; }else{ $poidsrestant = $poidsrestant-$PoidsMax; $poidsrequete = $PoidsMax; } $TrouveTrancheLivrReq -> execute(); $TrouveTrancheLivrTab = $TrouveTrancheLivrReq->fetch(); $pxtotal = $pxtotal + $TrouveTrancheLivrTab["px_port"]; } return $pxtotal; }
Fichier de requêtes :
Avez vous une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $sqlPoidsMax = "SELECT * FROM `$table_port` ORDER BY `poids_port` DESC"; $PoidsMaxReq = $bdd->prepare($sqlPoidsMax); $sqlTrouveTrancheLivr = "SELECT * FROM `$table_port` WHERE `poids_port` >=:poids ORDER BY `poids_port` ASC"; $TrouveTrancheLivrReq = $bdd->prepare($sqlTrouveTrancheLivr); $TrouveTrancheLivrReq -> bindParam(':poids', $poidsrequete);
Merci.
Partager