Uploader PRO Owner ==> Anderson Maranhão Ventura Dadário Email ==> andersonmvd@hotmail.com Profile ==> http://www.orkut.com/Profile.aspx?uid=6950651699637847193 -- _________________________________________________________________-- --| Uploader PRO |- --|_________________________________________________________________|- --> Este script tem por finalidade checar a validade das extensões <-- --> de modo avançado e ainda realizar upload inteligente para imgs <-- Instruções: - Cole seu código HTML na funcão carregaForm() [Cuidado com as ASPAS] - O nome do submit deve se chamar 'enviar' - O nome do campo file que carrega o arquivo deve se chamar 'arquivo' - Altere as configurações abaixo - Altere as extensões válidas nos arrays() em qualquer ordem Curiosidades: Quando o usuário faz upload ... Automaticamente é enviado 4 variáveis anexado ao nome do campo file No nosso caso, o nome do campo é 'arquivo' $arquivo_name $arquivo_type $arquivo_size $arquivo_mime * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ // Coloque no echo() desta função todo código HTML de sua página function carregaForm(){ echo " Uploader PRO - Anderson ~ andersonmvd@hotmail.com
"; } # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # // ... Sobre o arquivo que será checado $diretorio = "uploads/"; /* USE BARRA NO FINAL "/" */ $TamanhoMaxi = 500; // Tamanho limite do arquivo que será uploadado em KB $TamanhoMax = 1024*$TamanhoMaxi; // Não altere $TamanhoMaxMB = 1024*$TamanhoMax; // Não altere $TamanhoMaxMBP = 2048*$TamanhoMax; // Não altere $SoImagens = 0; // Se os uploads serão apenas para imagem digite '1' se não digite '0' $larguraMax = 100; // Válido apenas se o arquivo for imagem definido na variável $SoImagens $alturaMax = 100; // Válido apenas se o arquivo for imagem definido na variável $SoImagens // ... Extensões válidas ~ Coloque quantas quiser $ExtensoesValidaS = array('zip','mp3','htm','wma','html','php','aspx','txt','gif','jpg','jpge','png'); $ExtensoesValidaSparaImagens = array('gif','jpg','jpge','png'); // ... Erros em HTML $semVariavel = "
Campo não foi preenchido
"; $semPonto = "
Arquivo sem extensão
"; $semValidade = "A extensão:"; $semValidade_ = "não é permitida"; $erroLargura = "
Largura da imagem ultrapassou ".$larguraMax." pixels
"; $erroAltura = "
Altura da imagem ultrapassou ".$alturaMax." pixels
"; $erroTamanho = "
Tamanho do arquivo ultrapassou ".$TamanhoMaxi." KB
"; $erroDir = "
Erro interno!

A string que contém o diretório é inválida, não possui barra: /
"; $erroCopia = "
Erro na cópia do arquivo!

Permissão do diretório ".$diretorio." não é 777.
Ou Permissão deste arquivo não é 755
"; $erroCriar = "
Erro na criação do diretório!

Este arquivo não possui permissão 755 para criar o diretório: ".$diretorio."
"; $erroArquivo = "
Dados inválidos, envie um ARQUIVO
"; # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # @header ("Pragma: no-cache"); @ini_set("file_uploads","On"); @ini_set("upload_max_filesize", "".$TamanhoMaxMB."M"); @ini_set("post_max_size","".$TamanhoMaxMBP."M"); if(substr($diretorio,-1) != "/"){ echo $erroDir;exit; } if(isset($_POST['enviar']) and empty($arquivo_name)){ echo $semVariavel;carregaForm();exit; } elseif(isset($_POST['enviar']) and !empty($arquivo) and is_file($arquivo)){ $erro = ""; // Não alterar if(empty($arquivo_name)){ echo $semVariavel;carregaForm();exit; } else{ if (strpos($arquivo_name, ".") === false) { echo $semPonto;carregaForm();exit; } else{ $ext = explode(".",$arquivo_name);$ext = array_reverse($ext);$ext = strtolower($ext[0]);}} if($SoImagens == 1){ for($i = 0;$i < count($ExtensoesValidaSparaImagens); $i++){ $ok = 0;if($ext == $ExtensoesValidaSparaImagens[$i]) { $ok = 1; break; } }} else{ for($i = 0;$i < count($ExtensoesValidaS); $i++){ $ok = 0;if($ext == $ExtensoesValidaS[$i]) { $ok = 1; break; } }} if($ok == 0) { $erro.= "".$semValidade." ".$ext." ".$semValidade_.""; } else { # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # // ... Zona Segura Começa for($i = 0;$i < count($ExtensoesValidaSparaImagens); $i++){ $okx = 0;if($ext == $ExtensoesValidaSparaImagens[$i]){ $okx = 1; break; } } if($okx == 1){ $imgsize = @GetImageSize($arquivo); $img_w = $imgsize[0]; $img_h = $imgsize[1]; if($img_w > $larguraMax){ echo $erroLargura;carregaForm();exit; } if($img_h > $alturaMax){ echo $erroAltura;carregaForm();exit; }} if($arquivo_size > $TamanhoMax){ echo $erroTamanho;carregaForm();exit; } $caminho = $diretorio.$arquivo_name; $xKAHggsag = explode('/',$diretorio);$xKAHggsag = $xKAHggsag[0]; if(!file_exists($xKAHggsag)){ @mkdir($xKAHggsag,0777) or die($erroCriar); } @copy($arquivo,$caminho) or die($erroCopia); echo "
Sucesso - Extensão ".$ext." permitida - Seu arquivo ".$arquivo_name." foi salvo
"; // ... Termina Zona Segura # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # } // Fim do else if($erro != ""){ echo "
".$erro."
"; } } elseif(isset($_POST['enviar']) and !is_file($arquivo) and !empty($arquivo)){ echo $erroArquivo;carregaForm();exit; } carregaForm(); /* {: Feito por Andersoni69 :} */ ?>