Ao fazer um INSERT no banco de dados o valor da primeira coluna "titulo" é substituido pelo valor de descrição e os outros na sequencia também são substituidos pela coluna posterior. O que pode estar acontecendo?
new-post.php
<?php
require_once '../autoload.php';
use App\src\Posts;
if ($_SERVER['REQUEST_METHOD'] === 'POST'){
$titulo = $_POST['titulo'];
$descricao = $_POST['descricao'];
$conteudo = $_POST['conteudo'];
$imagemDestaque = $_POST['imagemDestaque'];
$status = $_POST['status'];
$categoria = $_POST['categoria'];
$publicar = new Posts($titulo, $descricao, $conteudo, $imagemDestaque, $status, $categoria);
$publicar->insertPost();
}
$teste = "titulo = " . $titulo . ", descrição: " . $descricao . ", conteudo: " . $conteudo . ", imagemDestaque: " .
$imagemDestaque . ", status: " . $status . ", categoria: " . $categoria;
print_r($teste);
?>
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<title>New Post</title>
<link rel="stylesheet" href="style/reset.css">
<link rel="stylesheet" href="style/formstyle.css">
</head>
<body>
<div class="container">
<form method="post" action="new-post.php">
<fieldset>
<legend>Inserir Post</legend>
<label for="titulo">Titulo:</label>
<input type="text" name="titulo" id="titulo">
<label for="descricao">Descrição:</label>
<input type="text" name="descricao" id="descricao">
<label for="conteudo">Conteudo:</label>
<textarea name="conteudo" id="conteudo"></textarea>
<label for="categoria">Categoria:</label>
<input type="text" name="categoria" id="categoria">
<label for="imagemDestaque">Imagem destaque:</label>
<input type="text" name="imagemDestaque" id="imagemDestaque">
<label for="status">Status:</label><br>
<input type="radio" value="r" name = "status" selected>Rascunho.
<br>
<input type="radio" value="a" name = "status">Publico.
<br>
<button type="submit" value="Enviar">Enviar</button>
</fieldset>
</form>
</div>
</body>
</html>
Posts.php
<?php
namespace App\src;
use PDO;
class Posts
{
private $id;
private $titulo;
private $descricao;
private $conteudo;
private $imagemDestaque;
private $status;
private $categoria;
private $data;
public function __construct( $id = false, $titulo = false, $descricao = false, $conteudo = false, $imagemDestaque = false,
$status = false, $categoria = false, $data = false)
{
$this->id = $id;
$this->titulo = $titulo;
$this->descricao = $descricao;
$this->conteudo = $conteudo;
$this->imagemDestaque = $imagemDestaque;
$this->status = $status;
$this->categoria = $categoria;
$this->data = $data;
}
public function insertPost(){
$query = "INSERT INTO tb_posts (titulo, descricao, conteudo, imagemdestaque, status, categoria)
VALUES (:titulo, :descricao, :conteudo, :imagemDestaque, :status, :categoria)";
$connect = Connection::takeConnection();
$result = $connect->prepare($query);
$result->bindValue(':titulo', $this->titulo);
$result->bindValue(':descricao', $this->descricao);
$result->bindValue(':conteudo', $this->conteudo);
$result->bindValue(':imagemDestaque', $this->imagemDestaque);
$result->bindValue(':status', $this->status);
$result->bindValue(':categoria', $this->categoria);
$result->execute();
}
}