diff --git a/GamePedia/php/script_TD1.php b/GamePedia/php/script_TD1.php
index ce837f8d415c73cab1d33fde7390a73286f0410a..1615d71e9678ca42e3c264f75c568504766f3102 100644
--- a/GamePedia/php/script_TD1.php
+++ b/GamePedia/php/script_TD1.php
@@ -1,7 +1,6 @@
 <?php
 
-require_once __DIR__ . '../vendor/autoload.php';
-session_start();
+require_once dirname (__DIR__) . '../vendor/autoload.php';
 
 use \Slim\Slim as Slim;
 use Illuminate\Database\Capsule\Manager as DB;
diff --git a/GamePedia/src/controleurs/ControleurScript.php b/GamePedia/src/controleurs/ControleurScript.php
index 2a108492c70717d03dff9910622cb1f506366011..b1568639b5f7eef5e9c480054fa133959a9c9492 100644
--- a/GamePedia/src/controleurs/ControleurScript.php
+++ b/GamePedia/src/controleurs/ControleurScript.php
@@ -82,9 +82,40 @@ class ControleurScript
         echo ("<p>---------------------------------------------<br>" .
             "<p>(name, deck) des personnages du jeu 12342<br>" .
             "<p>---------------------------------------------<br>");
-
         foreach ($q1 as $item) {
-            echo "<p>nom :$q1->name , deck : $q1->deck</p>";
+            echo "<p>nom :$item->name , deck : $item->deck</p>";
+        }
+
+        $q2 = Game::where('name','like',"Mario%")->get();
+        echo ("<p>---------------------------------------------<br>" .
+            "<p>les personnages des jeux dont le nom (du jeu) débute par 'Mario<br>" .
+            "<p>---------------------------------------------<br>");
+        foreach ($q2 as $game) {
+            echo "<p>Characters from :$game->name</p>";
+            $list = $game->characters()->get();
+            foreach ($list as $char)
+            echo "<p>nom : $char->name</p>";
+        }
+
+        $q3 = Company::where("name", "like", "%sony%")->get();
+        echo ("<p>---------------------------------------------<br>" .
+            "<p>les jeux développés par une compagnie dont le nom contient 'Sony<br>" .
+            "<p>---------------------------------------------<br>");
+        foreach ($q3 as $company) {
+            echo "<p>Games from :$company->name</p>";
+            $list = $company->games()->get();
+            foreach ($list as $game)
+                echo "<p>nom : $game->name</p>";
+        }
+
+        $q2 = Game::where('name','like',"%Mario%")->get();
+        echo ("<p>---------------------------------------------<br>" .
+            "<p>le rating initial (indiquer le rating board) des jeux  dont le nom contient Mario<br>" .
+            "<p>---------------------------------------------<br>");
+        foreach ($q2 as $game) {
+            $list = $game->ratings()->get();
+            foreach ($list as $rate)
+                echo "<p>id rating_board : $rate->rating_board_id, name : {$rate->rating_boards()->first()->name}</p>";
         }
     }
 
diff --git a/GamePedia/src/modeles/Company.php b/GamePedia/src/modeles/Company.php
index b5324928311bd353c716e0d652f4dbc1ca4f5031..c2bdaac7913fb21d25454b4cc33d5581fa31c6ac 100644
--- a/GamePedia/src/modeles/Company.php
+++ b/GamePedia/src/modeles/Company.php
@@ -7,6 +7,6 @@ class Company extends \Illuminate\Database\Eloquent\Model
   public $timestamps = false;
 
     function games(){
-        return $this->BelongsToMany('gp\modeles\Game', 'game2company','company_id');
+        return $this->BelongsToMany('gp\modeles\Game', 'game_developers','comp_id');
     }
 }
diff --git a/GamePedia/src/modeles/Game.php b/GamePedia/src/modeles/Game.php
index 2d8743e77a9e776d1af2cfe5dec2c437cd1314ff..1743136d9724f0260b0d39786592813cbf4b9763 100644
--- a/GamePedia/src/modeles/Game.php
+++ b/GamePedia/src/modeles/Game.php
@@ -10,17 +10,17 @@ class Game extends \Illuminate\Database\Eloquent\Model
     public function characters(){
         return $this->belongsToMany('gp\modeles\Character', 'game2character','game_id');
     }
-    public function platform(){
+    public function platforms(){
         return $this->belongsToMany('gp\modeles\Platform', 'game2platform','game_id');
     }
-    public function theme(){
+    public function themes(){
         return $this->belongsToMany('gp\modeles\Theme', 'game2theme','game_id');
     }
-    public function genre(){
+    public function genres(){
         return $this->belongsToMany('gp\modeles\Genre', 'game2genre','game_id');
     }
-    public function rating(){
-        return $this->belongsToMany('gp\modeles\Rating', 'game2rating','game_id');
+    public function ratings(){
+        return $this->belongsToMany('gp\modeles\Game_rating', 'game2rating','game_id');
     }
     public function publishers(){
         return $this->belongsToMany('gp\modeles\Company', 'game_publishers','game_id');
diff --git a/GamePedia/src/modeles/Game_rating.php b/GamePedia/src/modeles/Game_rating.php
index d11d362b79eeb38029b6f9dd693bb5b75ff61598..acdc7ecf1916f0bc97ffb7e8af9ef36d5484b95b 100644
--- a/GamePedia/src/modeles/Game_rating.php
+++ b/GamePedia/src/modeles/Game_rating.php
@@ -3,14 +3,53 @@ namespace gp\modeles;
 class Game_rating extends \Illuminate\Database\Eloquent\Model
 {
   protected $table = 'game_rating';
-  protected $primaryKey ='id';
+  protected $primaryKey =['id', 'rating_id'];
   public $timestamps = false;
-
+  public $incrementing = false;
     function games(){
         return $this->BelongsToMany('gp\modeles\Game', 'game2rating','rating_id');
     }
 
     function rating_board(){
-        return $this->BelongsTo('gp\modeles\Rating_board', 'id');
+        return $this->BelongsTo('gp\modeles\Rating_board', 'rating_board_id');
+    }
+
+    /**
+     * Set the keys for a save update query.
+     *
+     * @param  \Illuminate\Database\Eloquent\Builder  $query
+     * @return \Illuminate\Database\Eloquent\Builder
+     */
+    protected function setKeysForSaveQuery(Builder $query)
+    {
+        $keys = $this->getKeyName();
+        if(!is_array($keys)){
+            return parent::setKeysForSaveQuery($query);
+        }
+
+        foreach($keys as $keyName){
+            $query->where($keyName, '=', $this->getKeyForSaveQuery($keyName));
+        }
+
+        return $query;
+    }
+
+    /**
+     * Get the primary key value for a save query.
+     *
+     * @param mixed $keyName
+     * @return mixed
+     */
+    protected function getKeyForSaveQuery($keyName = null)
+    {
+        if(is_null($keyName)){
+            $keyName = $this->getKeyName();
+        }
+
+        if (isset($this->original[$keyName])) {
+            return $this->original[$keyName];
+        }
+
+        return $this->getAttribute($keyName);
     }
 }