Erro ao fazer o Update da foto no Banco de Dados mysql com PHP
Boa Tarde, estou com um problema para salvar a imagem no banco de dados. Acontece que a imagem que eu faço update vai para a pasta onde deveria, porem na banco de dados nao salva nem o nome dela, nem o caminho, segue os codigos abaixo
metodo para checar se a foto existe
e metodo para salvar a foto
segue o html do input file
e no banco de dados o campo ImagemProduto esta varchar
Segue tbm o repositorio do projeto no github pra quem quiser dar uma olhada melhor https://github.com/JaoVizu/carolinajoias
public function update()
{
$sql = new Sql();
$results = $sql->select("CALL sp_products_update (:CodProduto, :NomeProduto, :ValorProduto, :MargemLucro, :ValorVendaProduto, :QntProduto, :ImagemProduto, :QntParcelas, :ValorParcela, :Descricao, :Categoria)", array(
":CodProduto"=>$this->getCodProduto(),
":NomeProduto"=>$this->getNomeProduto(),
":ValorProduto"=>$this->getValorProduto(),
":MargemLucro"=>$this->getMargemLucro(),
":ValorVendaProduto"=>$this->getValorVendaProduto(),
":QntProduto"=>$this->getQntProduto(),
":ImagemProduto"=>$this->getImagemProduto(),
":QntParcelas"=>$this->getQntParcelas(),
":ValorParcela"=>$this->getValorParcela(),
":Descricao"=>$this->getDescricao(),
":Categoria"=>$this->getCategoria()
));
$this->setData($results[0]);
}metodo para checar se a foto existe
//checar a foto
public function checkPhotos()
{
if (file_exists(
$_SERVER["DOCUMENT_ROOT"] . DIRECTORY_SEPARATOR .
"res" . DIRECTORY_SEPARATOR .
"site" . DIRECTORY_SEPARATOR .
"img" .DIRECTORY_SEPARATOR .
"products" . DIRECTORY_SEPARATOR .
$this->getCodProduto() . ".jpg"))
{
$url = "/res/site/img/products/" . $this->getCodProduto() . ".jpg";
} else{
//RETORNAR FOTO PADRAO
$url = "/res/site/img/padrao.jpg";
}
return $this->setImagemProduto($url);
}e metodo para salvar a foto
//METODO PARA SALVAR A FOTO
public function setPhoto($file)
{
//detectar o tipo de extensao do arquivo
$extension = explode('.', $file["name"]);
$extension = end($extension);
switch($extension){
case "jpg":
case "jpeg":
$image = imagecreatefromjpeg($file["tmp_name"]);
break;
case "gif":
$image = imagecreatefromgif($file["tmp_name"]);
break;
case "png":
$image = imagecreatefrompng($file["tmp_name"]);
break;
}
$dist = $_SERVER["DOCUMENT_ROOT"] . DIRECTORY_SEPARATOR .
"res" . DIRECTORY_SEPARATOR .
"site" . DIRECTORY_SEPARATOR .
"img" .DIRECTORY_SEPARATOR .
"products" . DIRECTORY_SEPARATOR .
$this->getCodProduto() . ".jpg";
imagejpeg($image, $dist);
imagedestroy($image);
$this->checkPhotos();
}segue o html do input file
<label for="file">Foto</label>
<input type="file" class="form-control" id="file" name="ImagemProduto">e no banco de dados o campo ImagemProduto esta varchar
Segue tbm o repositorio do projeto no github pra quem quiser dar uma olhada melhor https://github.com/JaoVizu/carolinajoias
Joao Vizu
Curtidas 0