diff --git a/Controllers/RecipeController.php b/Controllers/RecipeController.php index 788b025..96a0049 100644 --- a/Controllers/RecipeController.php +++ b/Controllers/RecipeController.php @@ -41,7 +41,7 @@ final class RecipeController } } - View::show("recipe/edit", array("POST_URI" => "/recipe/update", "RECIPE" => $O_recipe)); + View::show("recipe/edit", array("POST_URI" => "/recipe/update/".$O_recipe->I_ID, "RECIPE" => $O_recipe)); } public function newAction(Array $A_urlParams = null, Array $A_postParams = null) @@ -79,9 +79,13 @@ final class RecipeController public function updateAction(Array $A_urlParams = null, Array $A_postParams = null) { + if(count($A_urlParams)!=1){ + throw new HTTPSpecialCaseException(404); + } + Session::login_or_die(); - $O_recipe = RecipeModel::getByID(Utils::getOrDie($A_postParams, "recipeID")); + $O_recipe = RecipeModel::getByID(Utils::intOrDie($A_urlParams[0])); if ($O_recipe->I_AUTHOR_ID !== $_SESSION["ID"]) { if(!Session::is_admin()){ @@ -126,7 +130,7 @@ final class RecipeController if (count($A_urlParams) !== 1 ) throw new HTTPSpecialCaseException(404); - $O_recipe = RecipeModel::getRecipeByID($A_urlParams[0]); + $O_recipe = RecipeModel::getByID($A_urlParams[0]); header("Content-Type: image"); if (isset($O_recipe)) { diff --git a/Models/DifficultyModel.php b/Models/DifficultyModel.php index 1813cba..d2efb3f 100644 --- a/Models/DifficultyModel.php +++ b/Models/DifficultyModel.php @@ -55,7 +55,7 @@ final class DifficultyModel if ($row === false) return null; $O_diff = new DifficultyModel($row["NAME"]); - $O_diff->I_ID = $I_id; + $O_diff->I_ID = $row["ID"]; return $O_diff; } public static function deleteByID($I_id) diff --git a/Models/RecipeModel.php b/Models/RecipeModel.php index bad69af..3909728 100644 --- a/Models/RecipeModel.php +++ b/Models/RecipeModel.php @@ -50,7 +50,7 @@ final class RecipeModel public function update() { $O_model = Model::get(); - $stmt = $O_model->prepare("UPDATE RECIPE SET NAME=:name, TIME=:time, DESCR=:descr, RECIPE:recipe, DIFFICULTY_ID=:difficulty_id, AUTHOR_ID=:author_id WHERE ID=:id"); + $stmt = $O_model->prepare("UPDATE RECIPE SET NAME=:name, TIME=:time, DESCR=:descr, RECIPE=:recipe, DIFFICULTY_ID=:difficulty_id, AUTHOR_ID=:author_id WHERE ID=:id"); $stmt->bindParam("id", $this->I_ID); $stmt->bindParam("name", $this->S_NAME); $stmt->bindParam("time", $this->I_TIME); @@ -73,7 +73,7 @@ final class RecipeModel return $O_recipe; } - public static function getRecipeByID($I_id) + public static function getByID($I_id) { $O_model = Model::get(); $stmt = $O_model->prepare("SELECT * FROM RECIPE WHERE ID=:id"); @@ -157,7 +157,7 @@ final class RecipeModel public static function getFullRecipeById($I_id) { - $O_recipe = self::getRecipeByID($I_id); + $O_recipe = self::getByID($I_id); $O_recipe->getFullRecipe(); return $O_recipe; } diff --git a/Views/recipe/edit.php b/Views/recipe/edit.php index f9a3833..3903c8c 100644 --- a/Views/recipe/edit.php +++ b/Views/recipe/edit.php @@ -39,10 +39,11 @@ if ($O_recipe === null) {