Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ae galera hoje estava estudando para fazer um sistema de teste de uploads de imagens que alem de salvar na pasta especificada, ele salva o caminho dela no banco de dados. Segue ele:
O formulario para enviar as imagens
enviar_imagens.php
<form action="processar_imagem.php" method="POST" enctype="multipart/form-data">
<b>Envio das fotos</b><br />
Foto #: <input type="file" name="arquivo" /><br/>
<br />
<input type="submit" value="Upload"/>
</form>
arquivo que processa a imagem
processar_imagem.php
<?php
/*
--
Banco de Dados: upload
Estrutura da tabela fotos
CREATE TABLE IF NOT EXISTS `fotos` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`url` varchar(200) NOT NULL,
`data` datetime NOT NULL,
PRIMARY KEY (`id`)
)
*/
$host="localhost";//define o servidor do mysql
$user="root";//define o usuario do mysql
$pass=""; // define a senha do mysql
$db="upload"; //define o banco de dados
$conn=mysql_connect($host,$user,$pass) or die(mysql_error());//faz a conexao ao mysql
mysql_select_db($db,$conn); //selecione o banco de dados
$data=date("Y-m-d H:i:s");//formato de data que ira ser armazenado no banco de dados
$pasta="arquivos";//pasta onde serao salvo os arquivos enviados
if(file_exists($pasta)){ //condição onde verifica se existe a pasta 'arquivos'
chmod ($pasta,0777); //se existir aplicar o chmod 777
}else{
mkdir ($pasta,0777);// se nao criar e aplicar o chmod 777
}
if(!empty($_FILES['arquivo']['name'])){ // verifica se o arquivo foi submetido pelo formulario
$nome_arquivo=$_FILES['arquivo']['name'];//define o nome do arquivo
$tamanho_arquivo=$_FILES['arquivo']['size'];//define o tipo de arquivo
$tipo_arquivo=$_FILES['arquivo']['type'];//define o tamanho do arquivo
$tmp_arquivo=$_FILES['arquivo']['tmp_name']; //define o arquivo temporario
if($tamanho_arquivo > 2048000) {//condição onde verifica o tamanho do arquivo
//que se for maior do que 2mega ele para de executar e mostrar a msg
print "Seu arquivo não poderá ser maior que 1mb";
exit;
}
$nome="upload_-_".$nome_arquivo; //define um novo nome para o arquivo
$url=$pasta."/".$nome; //caminho do arquivo salvo
$extensao = strtolower(array_pop(explode(".",$nome_arquivo)));//verifica a extensao do arquivo
$tipos_aceitos = array('jpg', 'gif', 'bmp', 'png','jpeg');//define o arquivos aceitos
if(array_search($extensao, $tipos_aceitos) === false){ //condição onde verifica se
// a extensao é aceita ,se não ele interrompe o restante do script
echo "arquivo não suportado";
exit;if(!file_exists($url)){ //verifica se o arquivo nao se encontra na pasta
move_uploaded_file($tmp_arquivo,$url);//envia o arquivo para a pasta
$sql="INSERT INTO fotos (data,url) VALUES ('$data','$url')";//insere a data e o caminho no
//banco de dados
$query=mysql_query($sql);//consulta se foi inserido no banco
if($query){
echo "URL da foto salvo no banco de dados em ";
echo "<b>".$data."</b><br/>";
}echo "<b>Arquivo salvo na pasta</b> arquivos<br/>
<b>Nome do arquivo:</b>$nome<br/>
<b>Tipo de arquivo:</b>$tipo_arquivo<br/>
<b>Tamanho do arquivo:</b>".round($tamanho_arquivo/1024)." Kbytes<br/>
<img src=$url width='200'><br/>
<a href='enviar_imagens.php'>Enviar outro</a><br>";
}echo "Arquivo ja existe";
}
}
}
else{
echo "envie algum arquivo";
}
mysql_close($conn);
?>
Aproveitem!:D
Carregando comentários...