Bonjour à tous,
Je me remets à PDO un petit peu en ce moment (après un long passage sous Doctrine), et je suis face à un problème pour lequel je ne trouve ni d'explications ni de solution.
Je dispose d'une table "averages", avec 4 colonnes : DATETIME datetime, SMALLINT amplitude, INT gem_to_gold, INT gold_to_gem.
Cette table représente un point d'une moyenne mobile, d'une certaine amplitude. Mon problème vient lorsque je souhaite insérer 2 points à la fois. J'ai une classe PointManager dont le code est le suivant :
Rien de très compliqué donc. Pourtant, lorsque j'exécute ce script, PDO ne m'ajoute en base de données que le premier des deux points (au sens lecture de haut en bas). Le second est tout simplement ignoré. Une idée d'où vient le problème ?
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 <?php include_once('DB.class.php'); class MovingAverageManager { public function addToDatabase($points) { $db = new DB(); $connexion = $db->getConnexion(); $request = $connexion->prepare('INSERT INTO averages VALUES(:datetime, :amplitude, :gem_to_gold, :gold_to_gem)'); foreach ($points as $point) { $request->bindParam(':datetime', $point->getDatetime()); $request->bindParam(':amplitude', $point->getAmplitude()); $request->bindParam(':gem_to_gold', $point->getGemToGold()); $request->bindParam(':gold_to_gem', $point->getGoldToGem()); $request->execute(); } } }
Merci d'avance pour votre aide
Partager