Skip to content
Snippets Groups Projects
Commit 8efdef38 authored by SASSU Thomas's avatar SASSU Thomas
Browse files

requete TD3b 1

parent 42034e66
Branches
No related tags found
No related merge requests found
<?php
require_once dirname (__DIR__) . '/vendor/autoload.php';
session_start();
use \Slim\Slim as Slim;
use Illuminate\Database\Capsule\Manager as DB;
use \gp\controleurs\ControleurPrincipal as ControleurPrincipal;
use \gp\controleurs\ControleurScript as ControleurScript;
$db = new DB();
$db->addConnection(parse_ini_file('../conf/conf.ini'));
$db->setAsGlobal();
$db->bootEloquent();
echo ("<!DOCTYPE html>
<html>
<body>
<div>
<h1> Script TD2 </h1>
<h2> Consignes : </h2>
<p> Pour chaque requête, mettre le paramètre dans l'url ?requete='Numero de la requete'</p>
</div>");
if(isset($_GET['requete']) && $_GET['requete']>0 && $_GET['requete']<=5) {
echo "<div><center>";
$nb = $_GET['requete'];
$c = new ControleurScript();
$c->setLog(true);
$function = 'td3_q'. $nb .'b';
$res = $c->$function();
foreach ($res as $item){
echo "<p>$item->name</p>";
}
echo "</center></div>";
echo "<div>";
echo $c->getLog();
echo "</div>";
}
echo ("</body> </html>");
\ No newline at end of file
......@@ -2,8 +2,7 @@
namespace gp\controleurs;
use Illuminate\Database\Capsule\Manager as DB;
use gp\modeles\Game_rating;
use gp\modeles\Genre;
use gp\modeles\Platform;
......@@ -221,4 +220,56 @@ class ControleurScript
private function nameDeckByGame($id){
return Game::where('id','=',$id)->first()->characters();
}
/*-------------------------------------------------------------------
* TD3 PART II
* ------------------------------------------------------------------
*/
public function setLog($bool){
if($bool) DB::connection()->enableQueryLog();
else DB::connection()->disableQueryLog();
}
public function getLog(){
$res = '<center><h2>Log</h2></center>';
$log = DB::connection()->getQueryLog();
foreach ($log as $line){
$res = $res . "<div> <p>----------------------------------------------------------------------------------------------------------</p>";
$res = $res . "<p> - Requete sql : " . $line['query'] . " : </p>";
$res = $res . "<div><p>&nbsp&nbsp | - Parametres : </p>";
foreach ($line['bindings'] as $bind){
$res = $res . "<p>&nbsp&nbsp&nbsp&nbsp - $bind</p>";
}
$res = $res . "</div> <p>&nbsp&nbsp | - Temps d'execution : " . $line['time'] . "</p>";
$res = $res . "<p>----------------------------------------------------------------------------------------------------------</p></div>";
}
return $res;
}
public function td3_q1b(){
return Game::where('name','like','%Mario%')->get();
}
public function td3_q2b(){
return Game::where('id', '=', 12342)->first()->characters()->get();
}
public function td3_q3b(){
$res = null;
$characters = $this->td3_q1b()->characters()->get();
foreach ($characters as $character){
$first = $character->games()->min('original_release_date')->first;
if($first != null && str_contains(strtolower($first->name),'mario'))
$res[] = $character;
}
return $res;
}
public function td3_q4b(){
$characters = $this->td3_q1b()->characters()->get();
return $characters;
}
public function td3_q5b(){
return Company::where('name','like', '%Sony%')->get()->games();
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment