Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou criando um sistema de galeria de fotos utilizando upload de arquivos ZIP e estou precisando de ajuda em algumas coisas.
BANCO DE DADOS
CREATE TABLE IF NOT EXISTS `eventos` (
`id` int(255) NOT NULL auto_increment,
`titulo` text NOT NULL,
`local` text NOT NULL,
`cidade` text NOT NULL,
`data` text NOT NULL,
`bandas` text NOT NULL,
`foto` text NOT NULL,
`diretorio` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=269 ;
INSTRUÇÕES 1
1- Criar uma pasta com a data invertida e um número aleatório dentro da pasta ORIGINAIS e também dentro da pasta EVENTOS (incluindo a pasta thumbs dentro do EVENTOS);
2- Cadastrar no banco de dados MySQL as informações do evento;
INSTRUÇÕES 2
1- Upload do arquivo ZIP (form_upload.php envia para processar.php)
2- Extrair em um diretório temporário (/TEMP)
3- Copiar os arquivos (fotos) originais para a pasta ORIGINAIS
4- Processar todas as fotos da pasta TEMP utilizando a classe de manipulação de imagens (ele pode mover arquivos, criar thumbs, redimensionar, colocar marca) ** Ao manipular as fotos e mover para a pasta do evento, verificar se o arquivo já existe e modificar o nome para n sobrescrever **;
5- Limpar a pasta temporária (/TEMP)
INSTRUÇÕES 3
ESTRUTURA DOS ARQUIVOS:
-- /NOME_DO_LOCAL (local do evento)
--- /DATA_NUMERO (Aqui será o nome da pasta com a data na forma invertida "ANO+MES+DIA_NUMERO", com um numero gerado aleatóriamente para a pasta do evento)
-- /NOME_DO_LOCAL (local do evento)
--- /DATA_NUMERO (Aqui será o nome da pasta com a data na forma invertida "ANO+MES+DIA_NUMERO", com um numero gerado aleatóriamente para a pasta do evento)
---- /THUMBS (miniaturas das fotos contidas na pasta no nível superior a ela, ou seja, na pasta "DATA_NUMERO")
Abaixo segue o código dos arquivos que já comecei a montar:
PROCESSAR.PHP
<?php
// PASSO 1 - Receber o arquivo enviado pelo form_upload.php
// PASSO 2 - ExtraiR os arquivos na pasta TEMP
function extrair($arquivo, $destino) {
$zip = new ZipArchive;
$res = $zip->open($arquivo);
if ($res === TRUE) {
$zip->extractTo($destino);
$zip->close();
return TRUE;
} else {
return FALSE;
}
} // fim da função
extrair('fotos.zip','./temp');
// PASSO 3 - Copiar os arquivos originais da pasta TEMP para a pasta ORIGINAIS, dentro da pasta criada para aquele devido evento
// PASS0 4 - Processar todas as fotos da pasta TEMP utilizando a classe de manipulação de imagens
?>
* Estou precisando de um script de upload bem seguro que permita apenas arquivo ZIP e limite o tamanho do arquivo a 8MB para concluir o PASSO 1;
* Como faço para 'varrer' a pasta TEMP e sair copiando os arquivos para outra pasta? Sei que devo usar um comando de repetição tipo o WHILE, mas pra isso eu tenho que fazer um comparativo. Problema que não sei qual seria ele.
* O mesmo processo de varrer a pasta TEMP, só que iria utilizar os comandos da classe de manipulação de imagens.
Gostaria da contribuição de vocês na criação desse sistema, tanto nos códigos (corrigir erros, indicar formas melhores, montar o script), como nas sugestões e idéias. http://forum.imasters.com.br/public/style_emoticons/default/joia.gif
Abraços! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Carregando comentários...