Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Linton Junior

Upload de imagem

Recommended Posts

Seguindo os problemas que estou tendo com um sistema que me passaram no trabalho, eu fiz uma função para fazer o upload de imagem com bd e tudo e ele não tem me retornado erro algum porem a imagem não aparece na pasta e nem no front end, já todos os outros dados são cadastrados normalmente no banco.

 

segue a estrutura.

 

Estrutura do banco

1	id	int(11)AUTO_INCREMENT Primária
2	dia	date
3	status	int(1)
4	image_p	varchar(55)	latin1_swedish_ci
5	assunto	varchar(255)	latin1_swedish_ci
6	data	varchar(200)	latin1_swedish_ci
7	hora	varchar(50)	latin1_swedish_ci
8	local	varchar(200)	latin1_swedish_ci
9	texto	mediumtext	latin1_swedish_ci
10	imagem	varchar(200)	latin1_swedish_ci
11	data_cad datetimes
12	data_edt datetime

Aqui é o function.php

function eventos(){
	if (isset($_POST['action'])) { 
		$data = htmlspecialchars($_POST['dia']);
		$data_inverter = explode("/",$data);
		$data = $data_inverter[2].'-'. $data_inverter[1].'-'. $data_inverter[0];
		if($_POST['action']=='Incluir'){
			$image_p = trim($_FILES['evento_img']['name']);
			mysql_query($trace="INSERT INTO eventos SET dia='$data', assunto='{$_POST['assunto']}', data='{$_POST['data']}', hora='{$_POST['hora']}', image_p='$image_p', local='{$_POST['local']}', texto='{$_POST['texto']}', status='{$_POST['status']}', data_cad=now()");
			$id=mysql_insert_id();
			if(!is_dir("../images/eventos/")){
				mkdir("../images/eventos/", 0755, true);
			}
			if(!copy($_FILES["evento_img"]["tmp_name"],"../images/eventos/".$image_p)) {
			}
			echo "<script>location='eventos.php'</script>";
		}
		if($_POST['action']=='Editar'){
			$id = (int)$_POST['id'];
			if($_FILES['evento_img']["name"] != NULL) {	
				$image_p = trim($_FILES['evento_img']['name']);
			} else {
				$image_p = htmlentities($_POST['img_evento_atual'],ENT_QUOTES);
			}
			mysql_query("UPDATE eventos SET dia='$data', assunto='{$_POST['assunto']}', data='{$_POST['data']}', hora='{$_POST['hora']}', image_p='$image_p',  local='{$_POST['local']}', texto='{$_POST['texto']}', status='{$_POST['status']}', data_edt=now() WHERE id='{$_POST['id']}'");
			if($_FILES['evento_img']["name"] != NULL) {	
				@unlink('../images/eventos/'.$_POST['img_evento_atual']);
				if(!copy($_FILES["evento_img"]["tmp_name"],"../images/eventos/".$image_p)) {
				}
			}
			echo "<script>location='eventos.php'</script>";
		}
	}
	if (isset($_POST['deletar'])) { 
		if($_POST['deletar']=='Apagar'){
			@unlink('../images/eventos/' . $_POST['evento_img']);
			mysql_query("DELETE FROM eventos WHERE id='{$_POST['id']}'");
			echo "<script>location='eventos.php'</script>";
		}
	}
}

 

Como disse, ele cadastra tudo normalmente, altero todos os dados, porem não consegui até agora fazer a imagem carregar, sequer aparece na pasta "../images/eventos/" como coloquei.



Já resolvi, bati a cabeça procurando o problema e revisei diversas vezes o function, não encontrei erro, daí vi que não coloquei multipart/form-data no form, desculpa pelo erro bobo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.