Código:
// editar-video.php
<?php
try {
$pdo = new PDO('mysql:host=localhost;dbname=aluraplay', 'santiago', 's1Lv@83He');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo "Error: " . $e->getMessage();
}
$id = filter_input(INPUT_GET, 'id', FILTER_VALIDATE_INT);
if (!$id) {
header('Location: /index.php?sucesso=0');
exit();
}
$url = filter_input(INPUT_POST, 'url', FILTER_VALIDATE_URL);
if (!$url) {
header('Location: /index.php?sucesso=0');
exit();
}
$titulo = filter_input(INPUT_POST, 'titulo');
if (!$titulo) {
header('Location: /index.php?sucesso=0');
exit();
}
$sql = "UPDATE videos SET url = :url, title = :title WHERE id = :id;";
$statement = $pdo->prepare($sql);
$statement->bindValue(':url', $url);
$statement->bindValue(':title', $titulo);
$statement->bindValue(':id', $id, PDO::PARAM_INT);
if (!$statement->execute()) {
header('Location: /index.php?sucesso=0');
} else {
header('Location: /index.php?sucesso=1');
}
// formulario.php
<?php
try {
$pdo = new PDO('mysql:host=localhost;dbname=aluraplay', 'santiago', 's1Lv@83He');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo "Error: " . $e->getMessage();
}
$id = filter_input(INPUT_GET, 'id', FILTER_VALIDATE_INT);
$video = [
'url' => '',
'title' => '',
];
if (!$id) {
$statement = $pdo->query('SELECT * FROM videos WHERE id = ?;');
$statement->bindValue(1, $id, PDO::PARAM_INT);
$statement->execute();
$statement->fetch(\PDO::FETCH_ASSOC);
}
?>
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="../css/reset.css">
<link rel="stylesheet" href="../css/estilos.css">
<link rel="stylesheet" href="../css/estilos-form.css">
<link rel="stylesheet" href="../css/flexbox.css">
<title>AluraPlay</title>
<link rel="shortcut icon" href="./img/favicon.ico" type="image/x-icon">
</head>
<body>
<!-- Cabecalho -->
<header>
<nav class="cabecalho">
<a class="logo" href="/"></a>
<div class="cabecalho__icones">
<a href="./enviar-video.html" class="cabecalho__videos"></a>
<a href="../pages/login.html" class="cabecalho__sair">Sair</a>
</div>
</nav>
</header>
<main class="container">
<form class="container__formulario" action="<?= $id === false ? '/novo-video.php' : '/editar-video.php?id=' . $id ?>" method="POST">
<h2 class="formulario__titulo">Envie um vídeo!</h2>
<div class="formulario__campo">
<label class="campo__etiqueta" for="url">Link embed</label>
<input name="url" value="<?= $video['url'] ?>" class="campo__escrita" required placeholder="Por exemplo: https://www.youtube.com/embed/FAY1K2aUg5g" id='url' />
</div>
<div class="formulario__campo">
<label class="campo__etiqueta" for="titulo">Titulo do vídeo</label>
<input name="titulo" value="<?= $video['title'] ?>" class="campo__escrita" required placeholder="Neste campo, dê o nome do vídeo" id='titulo' />
</div>
<input class="formulario__botao" type="submit" value="Enviar" />
</form>
</main>
</body>
</html>