corso https://vola.udemy.com/course/php-mvc-from-scratch/learn/lecture/40931984#overview
filippo.bertilotti
2024-05-24 606d104f4764e66a50285405edad0503f7157035
src/Framework/Model.php
@@ -20,7 +20,37 @@
                return false;
            }
            return true;
            $sql = "UPDATE {$this->getTable()}";
            unset($data["id"]);
            $assignments = array_keys($data);
            array_walk($assignments, function (&$value) {
                $value = "$value = ?";
            });
            $sql .= " SET " . implode(", ", $assignments);
            $sql .= " WHERE id = ?";
            $conn = $this->database->getConnection();
            $stmt = $conn->prepare($sql);
            $i = 1;
            foreach ($data as $value) {
                $type = match(gettype($value)) {
                    "boolean" => PDO::PARAM_BOOL,
                    "integer"=> PDO::PARAM_INT,
                    "NULL"=> PDO::PARAM_NULL,
                    default => PDO::PARAM_STR
                };
                $stmt->bindValue($i++, $value, $type);
            }
            $stmt->bindValue($i, $id, PDO::PARAM_INT);
            return $stmt->execute();
        }
@@ -86,7 +116,7 @@
                };
                
                $stmt->bindValue($i++, $value, PDO::PARAM_STR);
                $stmt->bindValue($i++, $value, $type);
            }