Bonjour,

J'ai un soucis avec ma requête, qui me renvoie 2x les 3 résultats de la base de données.

Je suppose que c'est parce que j'ai une boucle dans une boucle...

Mais quel est l'alternative ?

Merci

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
 
$pseudo = 'natsu';
$statut = 'en_cours';
$type = 'amazon';
 
$stmt = $bdd->prepare('SELECT * FROM shop WHERE pseudo = :pseudo AND statut = :statut');
$stmt->bindValue(':pseudo', $pseudo, PDO::PARAM_STR);
$stmt->bindValue(':statut', $statut, PDO::PARAM_STR);
$stmt->execute();
 
$datas = $stmt->fetchAll(PDO::FETCH_ASSOC);
 
if(count($datas) > 0)
{
foreach ($datas as $data) 
  {
 
  if($data['type'] == 'amazon')
  { 
	  $stmt = $bdd->prepare('SELECT * FROM shop WHERE pseudo = :pseudo AND statut = :statut AND type = :type');
          $stmt->bindValue(':pseudo', $pseudo, PDO::PARAM_STR);
          $stmt->bindValue(':statut', $statut, PDO::PARAM_STR);
	  $stmt->bindValue(':type', $type, PDO::PARAM_STR);	
	  $stmt->execute();
 
	  foreach ($datas as $data) 
      {
	  $total = $data['montant'] * $data['quantite'];
 
                echo 'montant : '; echo $data['montant'];
                echo 'quantite : '; echo $data['quantite'];
                echo 'total'; echo $total;  echo'Points</br>';
	 }
  }
 }
}