tenho um ficheiro que envia um form para a base de dados e codifica a imagem com $hex_string = base64_encode($bin_string);
depois tenho um php para eliminar a entrada da base de dados caso queira, mas acontece que ele elimina do banco mas deixa a imagem no servidor e quero que ele ao eliminar do banco remova tambem a imagem para não ocupar espaço no servidor. Como posso alterar o código pra fazer isso?
o código é este:
<?php
// liga-se à base de dados
include('ligar-bd.php');
// confirma se a variável "id" está selecionada
if (isset($_GET['id']) && is_numeric($_GET['id'])){
// pega na variável "id" da URL
$id = $_GET['id'];
$imagem = $_GET['imagem'];
// apaga a entrada da base de dados
if ($stmt = $mysqli->prepare("DELETE FROM teste WHERE id = ? LIMIT 1")){
$stmt->bind_param("i",$id);
$stmt->execute();
// DEVERIA PEGAR NO NOME GUARDADO EM base64 NO BANCO NO CAMPO "imagem", CONVERTER NO NOME REAL DA IMAGEM E INSERIR NO UNLINK ESSE NOME
unlink($imagem);
Pergunta
joanita
tenho um ficheiro que envia um form para a base de dados e codifica a imagem com $hex_string = base64_encode($bin_string);
Editado por joanitadepois tenho um php para eliminar a entrada da base de dados caso queira, mas acontece que ele elimina do banco mas deixa a imagem no servidor e quero que ele ao eliminar do banco remova tambem a imagem para não ocupar espaço no servidor. Como posso alterar o código pra fazer isso?
o código é este:
<?php
// liga-se à base de dados
include('ligar-bd.php');
// confirma se a variável "id" está selecionada
if (isset($_GET['id']) && is_numeric($_GET['id'])){
// pega na variável "id" da URL
$id = $_GET['id'];
$imagem = $_GET['imagem'];
// apaga a entrada da base de dados
if ($stmt = $mysqli->prepare("DELETE FROM teste WHERE id = ? LIMIT 1")){
$stmt->bind_param("i",$id);
$stmt->execute();
// DEVERIA PEGAR NO NOME GUARDADO EM base64 NO BANCO NO CAMPO "imagem", CONVERTER NO NOME REAL DA IMAGEM E INSERIR NO UNLINK ESSE NOME
unlink($imagem);
$stmt->close();
}else{
echo "ERRO: Impossível eliminar.";
}
$mysqli->close();
// redireciona após ter eliminado com sucesso
header("Location: ver_todos.php");
}else{
header("Location: ver_todos.php");
}
?>
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.