Я пытаюсь загрузить изображение на свой BD, но когда я пытаюсь это сделать, появляется эта ошибка:
Неперехваченная ошибка: невозможно получить доступ к пустому свойству в /Blog.php:61 Трассировка стека: # 0 / postar. php (11): Posts-> cadPost () # 1 {main} добавлено в /Blog.php в строке 61.
Я действительно не знаю, почему $ this -> $ imagem = $ _FILES ['изображение'] ['имя'] - пустое свойство. Также строка 61 блога. php это $ this -> $ imagem = $ _FILES ['image'] ['name']. Но что ж, вероятно, это ошибка новичка.
Коды ниже:
postar. php
Blog. php
<?php
require_once "./Classes/Config.php";
class Posts{
// Campos do BD
public $id;
public $titulo;
public $descricao;
public $data;
public $conteudo;
public $imagem;
public $imagem_temp;
public function cadPost() {
try{
$bd = new Conexao();
$con = $bd->conectar();
$this->titulo = $_POST["titulo"];
$this->data = date('Y/m/d');
$this->descricao = $_POST["descricao"];
$this->conteudo = $_POST["total"];
$this->$imagem = $_FILES['image']['name']; //this is the line 61
$this->$imagem_temp = $_FILES['image']['tmp_name'];
if($this->imagem != NULL) {
move_uploaded_file($this->$imagem_temp, "images/$imagem");
}
$sql = $con->prepare("INSERT INTO POSTS(ID, TITULO, DATA_POST, DESCRICAO, CONTEUDO, IMAGEM) VALUES(NULL, ?, ?, ?, ?, ?)");
$sql->execute(array(
$this->titulo,
$this->data,
$this->descricao,
$this->conteudo,
$imagem
));
if ($sql->rowCount() > 0) {
header("location: ./postar.php?erro=0");
}else{
header("location:./postar.php?erro=1");
}
}catch(PDOExeception $msg){
echo "Ocorreu um erro na tentativa de publicar seu POST: ".$msg->getMessage();
}
}
}