Skip to content
Extraits de code Groupes Projets
Valider d0cac2e8 rédigé par Eliah REBSTOCK's avatar Eliah REBSTOCK
Parcourir les fichiers

suite Classe Partie

parent edc13e08
Aucune branche associée trouvée
Aucune étiquette associée trouvée
2 requêtes de fusion!21Merge de Dev dans Master,!2Dev phoenix
......@@ -8,5 +8,14 @@
*/
class PartieController extends Controller
{
public function displayForm(){
$this->view->liste = Jeu::getList();
$this->view->listej = Profil::getList();
$this->view->display();
}
public function displayValid(){
$this->view->display();
}
}
\ No newline at end of file
......@@ -88,7 +88,20 @@ class Router { // classe PHP permettant l'analyse de l'URL des requêtes
$result["controller"] = "Register";
$result["action"] = "verify"; // "verify" pour appeler la méthode de vérification
}
/*** Ajout de partie ***/
else if($parts[0] == "add_partie" && count($parts) == 1){ // formulaire d'ajout de partie
$result["controller"] = "Partie";
$result["action"] = "displayForm"; // "displayForm" pour afficher le formulaire
}
else if($parts[0] == "add_partie" && count($parts) == 2 && $parts[1] == "valid"){ // Page d'ajout réussie
$result["controller"] = "Partie";
$result["action"] = "displayValid"; // "displayForm" pour afficher le formulaire
}
else if($parts[0] == "add_partie" && count($parts) == 2 && $parts[1] == "verify"){ // Page d'ajout réussie
$result["controller"] = "Partie";
$result["action"] = "verify"; // "displayForm" pour afficher le formulaire
}
// à chaque fois qu'on crée une nouvelle page, il faut rajouter un cas à cet endroit !
......
......@@ -27,17 +27,17 @@ class Partie extends Model
return $stmt->fetchAll();
}
public static function checkExists($slug_partie) { // méthode permettant de vérifier si un jeu existe dans la BDD
public static function checkExists($slug_partie) { // méthode permettant de vérifier si une partie existe dans la BDD
$db = Database::getInstance(); // on récupère la connexion à la BDD
$sql = "SELECT * FROM R_partie WHERE slug = :slug";
$req = $db->prepare($sql); // on prépare la requête
$req->execute(array(":slug" => $slug_partie)); // on remplace les variables dans la requête
if ($result = $req->fetch()) { // on récupère l'enregistrement, s'il existe
return 1;
return true;
}
return 0; // on aurait pu mettre deux return (un dans le if et un ici), mais bon...
return false; // on aurait pu mettre deux return (un dans le if et un ici), mais bon...
}
private static function calcul_classement($R){
......@@ -60,7 +60,7 @@ class Partie extends Model
$sql3 = "SELECT score FROM R_joueur_jeu WHERE joueur = :id_joueur AND jeu = :id_jeu;";
$sql4 = "INSERT INTO R_joueur_partie (partie, joueur, classement, score)
VALUES ((:id_jeu, :date), :id_joueur, :classement, :score);";
$sql5 = "UPDATE INTO R_joueur_jeu (score) VALUES (:new_score);";
$sql5 = "UPDATE R_joueur_jeu SET score = :new_score WHERE joueur = :id_joueur AND jeu = :id_jeu;";
$stmt0 = $db->prepare($sql0);
$stmt1 = $db->prepare($sql1);
$stmt2 = $db->prepare($sql2);
......@@ -71,6 +71,9 @@ class Partie extends Model
if($stmt0->execute(array(":nom_jeu" => $nom_jeu))) {
if($row = $stmt0->fetch()) {
$id_jeu = $row[0];
if(!Jeu::checkExists($id_jeu))
throw new UnexpectedValueException;
if($stmt1->execute(array(":id_jeu" => $id_jeu, ":date" => $date)))
{
$m = count($joueurs);
......@@ -87,7 +90,8 @@ class Partie extends Model
if($stmt4->execute(array(":id_jeu" => $id_jeu, ":date" => $date,
":id_joueur" => $id_joueur,
":classement" => $classement, ":score" => $old_score))){
if($stmt5->execute(array(":new_score"=> $old_score + $diff_scores[$j])))
if($stmt5->execute(array(":new_score"=> $old_score + $diff_scores[$j],
":id_jeu" => $id_jeu,":id_joueur" => $id_joueur )))
{
//C'est dans la boite
}
......
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Formulaire d'ajout de partie</title>
</head>
<body>
<header>
<h1>Formulaire d'ajout de partie</h1>
</header>
<form method="post" action="add_partie/verify">
<label for="jeu">Jeu : </label>
<select name="jeu" id="jeu">
<?php foreach($this->liste as $jeu){ ?>
<option><?php echo $jeu->nom; ?></option>
<?php } ?>
</select>
<label for="joueurs">Joueurs :</label>
<select name="joueurs" id="joueurs" multiple="multiple" size="5">
<?php foreach($this->listej as $joueur){ ?>
<option><?php echo $joueur->nom; ?></option>
<?php } ?>
</select>
<br/>
<label for="scores">Scores :</label><input type="text" name="scores" id="scores" /><br/>
<input type="submit" value="Ajouter" />
</form>
<footer>
<p>Le pied de page</p>
</footer>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
</body>
</html>
\ No newline at end of file
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter