Olá gente, eu sou novo aqui e gostei muito do fórum, é realmente bem legal, e o mais legal de tudo é que as pessoas se ajudam. Valororizo muito isso.
E como eu estou com uma pequena dúvida aqui eu gostaria da ajuda de vocês.
Eu baixei um script para upload de arquivo e funciona muito bem, mas só que só funciona com foto, já modifiquei a linha do MIME TYPE para que a pessoa só possa fazer upload de arquivo que esteja zipado, o código está feito para verificar se tal extensão de arquivo a fazer upload é .zip caso contrário sai uma mensagem avisando ao usuário. Até aí tudo bem.
O problema é quando o usuário clica no botão procurar e na caixa de seleção embaixo só aparecem: Todos os arquivos, Arquivos do tipo gif, bmp, jpg e arquivos do tipo HTML.
O que realmente eu gostaria é de deixar somente o tipo de arquivo zip, ou seja, o usuário só veria arquivos zip's para poder fazer upload.
Alguém tem alguma idéia de como fazer para aparecer somente o zip na caixa de seleção?
Agradeço qualquer tipo de ajuda.
Estou utilizando esse código no 1º arquivo que se chama index.php e utiliza:
E o 2º arquivo que se chama upload.php tem esse código:
<?
// Repassa a variável do upload
$arquivo=isset($_FILES['arquivo']) ? $_FILES['arquivo']: FALSE;
$maximo = 200000; //Tamanho máximo de arquivo que será liberado para upload em bytes
//Tipos de arquivos que serão aceitos.
//Atenção - Para o upload aceitar mais de um tipo de arquivo use os comparadores lógicos do PHP
//Abaixo estão alguns exemplos de MIME/TYPE
//Lista completa de MIME/TYPES - [url=http://www.recomende.com/arquivo/ferramentas/mime_types.php]http://www.recomende.com/arquivo/ferramentas/mime_types.php[/url]
$tipo = "image/pjpeg"; // arquivo jpg
//$tipo = "image/gif"; // image/gif = arquivo gif
//$tipo = "application/vnd.ms-excel"; // arquivo formato csv
//Tratamento do nome do arquivo
$nome=$arquivo['name'];
$nome=str_replace(" ","_",$nome); //substituir espaços em branco por underscore
$nome=strtolower($nome); //colocar o nome do arquivo em minúsculas
$diretorio = "./arquivos/";//Diretorio que o arquivo será salvo
$local=$diretorio.$nome;//Diretorio que o arquivo será salvo + nome
if (file_exists($local)) { //verificação se o arquivo já existe no diretório especificado
header("location:index.php?txtMSG=Erro. O arquivo já exite na pasta especificada");
}
elseif($arquivo['size'] > $maximo){//verificação do tamanho do arquivo
header("location:index.php?txtMSG=O arquivo é maior do que o limite de 200Kbs estipulados.");
}
elseif($arquivo['type'] !== $tipo){//verificação do tipo do arquivo
header("location:index.php?txtMSG=O arquivo enviado não é do formato permitido.");
}
else{//Depois de todos os testes mova o arquivo para o diretório desejado.
if(move_uploaded_file($arquivo['tmp_name'], $local)){//Move o arquivo
header("location:index.php?txtMSG=Arquivo enviado com sucesso");
}
else{
header("location:index.php?txtMSG=Erro ao enviar o arquivo");
}
}
?>
Pergunta
Charlo
Olá gente, eu sou novo aqui e gostei muito do fórum, é realmente bem legal, e o mais legal de tudo é que as pessoas se ajudam. Valororizo muito isso.
E como eu estou com uma pequena dúvida aqui eu gostaria da ajuda de vocês.
Eu baixei um script para upload de arquivo e funciona muito bem, mas só que só funciona com foto, já modifiquei a linha do MIME TYPE para que a pessoa só possa fazer upload de arquivo que esteja zipado, o código está feito para verificar se tal extensão de arquivo a fazer upload é .zip caso contrário sai uma mensagem avisando ao usuário. Até aí tudo bem.
O problema é quando o usuário clica no botão procurar e na caixa de seleção embaixo só aparecem: Todos os arquivos, Arquivos do tipo gif, bmp, jpg e arquivos do tipo HTML.
O que realmente eu gostaria é de deixar somente o tipo de arquivo zip, ou seja, o usuário só veria arquivos zip's para poder fazer upload.
Alguém tem alguma idéia de como fazer para aparecer somente o zip na caixa de seleção?
Agradeço qualquer tipo de ajuda.
Estou utilizando esse código no 1º arquivo que se chama index.php e utiliza:
<? ?> <html> <head> <meta http-equiv="Content-Type" content="text/html" /> <title>Upload de legenda</title> <? $MSG=$_GET["txtMSG"]; ?> <script language="javascript" type="text/javascript"> function upload(nform){ if(nform.arquivo.value==""){ alert("Escolha um arquivo"); return false; } } </script> </head> <body> <table width="100%" align="center" cellpadding="0" cellspacing="0"> <tr> <td align="center" valign="top"> <font color="#333333" face="tahoma" size="+3">Upload Fácil</font> </td> </tr> <form action="upload.php" method="post" enctype="application/zip" onSubmit="return upload(this);"> <tr> <td align="center" valign="top" style="padding-top:15px;"> Procurar Arquivo <input type="file" name="arquivo"><br><br> <input type="submit" value="Enviar"> </td> </tr> </form> </table> <? if($MSG!=""){?> <script language="javascript" type="text/javascript"> alert("<?=$MSG?>"); location.href="index.php"; </script> <? }?> </body> </html>E o 2º arquivo que se chama upload.php tem esse código:<? // Repassa a variável do upload $arquivo=isset($_FILES['arquivo']) ? $_FILES['arquivo']: FALSE; $maximo = 200000; //Tamanho máximo de arquivo que será liberado para upload em bytes //Tipos de arquivos que serão aceitos. //Atenção - Para o upload aceitar mais de um tipo de arquivo use os comparadores lógicos do PHP //Abaixo estão alguns exemplos de MIME/TYPE //Lista completa de MIME/TYPES - [url=http://www.recomende.com/arquivo/ferramentas/mime_types.php]http://www.recomende.com/arquivo/ferramentas/mime_types.php[/url] $tipo = "image/pjpeg"; // arquivo jpg //$tipo = "image/gif"; // image/gif = arquivo gif //$tipo = "application/vnd.ms-excel"; // arquivo formato csv //Tratamento do nome do arquivo $nome=$arquivo['name']; $nome=str_replace(" ","_",$nome); //substituir espaços em branco por underscore $nome=strtolower($nome); //colocar o nome do arquivo em minúsculas $diretorio = "./arquivos/";//Diretorio que o arquivo será salvo $local=$diretorio.$nome;//Diretorio que o arquivo será salvo + nome if (file_exists($local)) { //verificação se o arquivo já existe no diretório especificado header("location:index.php?txtMSG=Erro. O arquivo já exite na pasta especificada"); } elseif($arquivo['size'] > $maximo){//verificação do tamanho do arquivo header("location:index.php?txtMSG=O arquivo é maior do que o limite de 200Kbs estipulados."); } elseif($arquivo['type'] !== $tipo){//verificação do tipo do arquivo header("location:index.php?txtMSG=O arquivo enviado não é do formato permitido."); } else{//Depois de todos os testes mova o arquivo para o diretório desejado. if(move_uploaded_file($arquivo['tmp_name'], $local)){//Move o arquivo header("location:index.php?txtMSG=Arquivo enviado com sucesso"); } else{ header("location:index.php?txtMSG=Erro ao enviar o arquivo"); } } ?>Obrigado gente.
Charlo
Editado por ESerraLink para o comentário
Compartilhar em outros sites
4 respostass 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.