Jump to content


glauco29

Member Since 18/09/2009
Offline Last Active 04/11/2010, 23:32
-----

Topics I've Started

Problema Com Upload De Arquivos Zip E Rar

15/10/2010, 18:57

Boa noite pessoal, tenho o código abaixo que faz upload de arquivo zip e rar, o problema é que quando tento subir um arquivo zip ou rar, ele diz que a extensão é inválida, eu dei um echo no "$_FILES['arquivo_compactado']['type']" e ele exibe tal extensão: "application/force-download", alguém sabe o que pode ser isso e como posso resolver?


if(isset($_POST['nome']))
{
        $id_cliente = $_POST['id_cliente'];
        $nome = $_POST['nome'];
        $telefone = $_POST['telefone'];
        $dominio = $_POST['dominio'];
        $endereco_ftp = $_POST['endereco_ftp'];
        $usuario_ftp = $_POST['usuario_ftp'];
        $senha_ftp = $_POST['senha_ftp'];
        $endereco_painel = $_POST['endereco_painel'];
        $usuario_painel = $_POST['usuario_painel'];
        $senha_painel = $_POST['senha_painel'];
        $endereco_bd = $_POST['endereco_bd'];
        $usuario_bd = $_POST['usuario_bd'];
        $senha_bd = $_POST['senha_bd'];
        
        //deixa a primeira letra em maíscula
        $nome = ucfirst($nome);
        
        if(is_file($_FILES['arquivo_compactado']['tmp_name']))
        {               
                $caminho = "arquivos_zip_rar/";
                
                $arquivo = $_FILES['arquivo_compactado']['name'];
                
                //se não for do tipo .zip ou .rar então exibe a mensagem
                if(!preg_match("/^application\/(zip|x-rar)$/",$_FILES['arquivo_compactado']['type']))
                {
                        echo "<script language=\"javascript\">\n\n
  
//Ele exibe essa mensagem, mas não era pra exibir pq eu tento subir arquivo ZIP ou RAR.
                        alert (\"Formato invalido.\");\n\n
  
                        function redireciona() {window.location=\"editar_clientes_adm.php?id_cliente=$id_cliente\";}redireciona();

                        </script>";
                }
                else
                {
                        if($_FILES['arquivo_compactado']['type'] == "application/zip")
                        {
                                $arquivo = str_replace($arquivo,"Site_".$id_cliente.".zip",$arquivo);
                        }
                        else
                        {
                                $arquivo = str_replace($arquivo,"Site_".$id_cliente.".rar",$arquivo);
                        }
                        
                        //se der erro ao mover o arquivo, então exibe a mensagem
                        if(!move_uploaded_file($_FILES['arquivo_compactado']['tmp_name'],$caminho.$arquivo))
                        {
                                echo "<script language=\"javascript\">\n\n
                  
                                alert (\"Erro ao enviar o arquivo.\");\n\n
                  
                                function redireciona() {window.location=\"editar_clientes_adm.php?id_cliente=$id_cliente\";}redireciona();
                
                                </script>";
                        }
                        else
                        {
                                $data = date("d/m/Y");
                                $hora = date("H:i:s");
                                
                                include("funcoes_data.php");
                                $data = dtBanco($data);
                                
                                $insere = mysql_query("INSERT INTO arquivos_zip_rar (id_cliente,arquivo,data_upload,hora_upload,atualizado_por) VALUES ($id_cliente,'$arquivo','$data','$hora','$login')");
                                
                                $update = mysql_query("UPDATE clientes SET nome='$nome',telefone='$telefone',dominio='$dominio',endereco_ftp='$endereco_ftp',usuario_ftp='$usuario_ftp',senha_ftp='$senha_ftp',endereco_painel='$endereco_painel',usuario_painel='$usuario_painel',senha_painel='$senha_painel',endereco_bd='$endereco_bd',usuario_bd='$usuario_bd',senha_bd='$senha_bd' WHERE id_cliente = $id_cliente");
                                        
                                        if(($insere == false) && ($update == false))
                                        {       
                                                echo "<script language=\"javascript\">\n\n
                  
                                                alert (\"Erro ao editar os dados do cliente.\");\n\n
                                                 
                                                function redireciona() {window.location=\"editar_clientes_adm.php?id_cliente=$id_cliente\";}redireciona();
                                                
                                                </script>";
                                                                
                                        }
                                        else
                                        {                       
                                                echo "<script language=\"javascript\">\n\n
                                                          
                                                alert (\"Cliente editado com sucesso.\");\n\n
                                                          
                                                function redireciona() {window.location=\"visualizar_clientes_adm.php\";}redireciona();
                                                        
                                                </script>";
                                        }
                                                
                        }
                                                
                }
                        
        }
        else
        {
                
                $update = mysql_query("UPDATE clientes SET nome='$nome',telefone='$telefone',dominio='$dominio',endereco_ftp='$endereco_ftp',usuario_ftp='$usuario_ftp',senha_ftp='$senha_ftp',endereco_painel='$endereco_painel',usuario_painel='$usuario_painel',senha_painel='$senha_painel',endereco_bd='$endereco_bd',usuario_bd='$usuario_bd',senha_bd='$senha_bd' WHERE id_cliente = $id_cliente");
                
                if($update == true)
                {
                        echo "<script language=\"javascript\">\n\n
                        
                        alert (\"Cliente editado com sucesso.\");\n\n
                          
                        function redireciona() {window.location=\"visualizar_clientes_adm.php\";}redireciona();
                        
                        </script>";
                }
                else
                {
                        echo "<script language=\"javascript\">\n\n
                        
                        alert (\"Desculpe, tente mais tarde.\");\n\n
                          
                        function redireciona() {window.location=\"editar_clientes_adm.php?id_cliente=$id_cliente\";}redireciona();
                        
                        </script>";
                }
        }
                                
}



Obrigado.


Jesus te ama.

Problema Com Upload De Arquivos Zip E Rar

26/08/2010, 16:08

Boa tarde pessoal, estou com um problema que nunca vi antes... Em meu site, tem uma parte que cadastro os clientes, em outra parte eu clico em editar em um cliente e vou para uma tela com os dados do cliente preenchidos onde posso fazer upload de arquivos ZIP ou RAR, o problema é: em casa no meu pc eu consigo subir o arquivo normalmente, porém em outro lugar eu não consigo (ele exibe a mensagem do "if": "Formato inválido." do script que verifica se é extensão ZIP ou RAR), tentei na faculdade, na casa do meu colega, na lan house e nada, ele só sobe em casa no meu pc, mas eu não coloquei nenhum bloqueio por ip e nada. Segue abaixo o código da página que faz upload, se alguém puder me ajudar agradeço.


if(isset($_POST['nome']))
{
        $id_cliente = $_POST['id_cliente'];
        $nome = $_POST['nome'];
        $telefone = $_POST['telefone'];
        $dominio = $_POST['dominio'];
        $endereco_ftp = $_POST['endereco_ftp'];
        $usuario_ftp = $_POST['usuario_ftp'];
        $senha_ftp = $_POST['senha_ftp'];
        $endereco_painel = $_POST['endereco_painel'];
        $usuario_painel = $_POST['usuario_painel'];
        $senha_painel = $_POST['senha_painel'];
        $endereco_bd = $_POST['endereco_bd'];
        $usuario_bd = $_POST['usuario_bd'];
        $senha_bd = $_POST['senha_bd'];
        
        //deixa a primeira letra em maíscula
        $nome = ucfirst($nome);
        
        if(is_file($_FILES['arquivo_compactado']['tmp_name']))
        {               
                $caminho = "arquivos_zip_rar/";
                
                $arquivo = $_FILES['arquivo_compactado']['name'];
                
                //se não for do tipo .zip ou .rar então exibe a mensagem
                if(!preg_match("/^application\/(zip|x-rar)$/",$_FILES['arquivo_compactado']['type']))
                {
                        echo "<script language=\"javascript\">\n\n
  
//Ele exibe essa mensagem, mas não era pra exibir pq eu tento subir arquivo ZIP ou RAR.
                        alert (\"Formato invalido.\");\n\n
  
                        function redireciona() {window.location=\"editar_clientes_adm.php?id_cliente=$id_cliente\";}redireciona();

                        </script>";
                }
                else
                {
                        if($_FILES['arquivo_compactado']['type'] == "application/zip")
                        {
                                $arquivo = str_replace($arquivo,"Site_".$id_cliente.".zip",$arquivo);
                        }
                        else
                        {
                                $arquivo = str_replace($arquivo,"Site_".$id_cliente.".rar",$arquivo);
                        }
                        
                        //se der erro ao mover o arquivo, então exibe a mensagem
                        if(!move_uploaded_file($_FILES['arquivo_compactado']['tmp_name'],$caminho.$arquivo))
                        {
                                echo "<script language=\"javascript\">\n\n
                  
                                alert (\"Erro ao enviar o arquivo.\");\n\n
                  
                                function redireciona() {window.location=\"editar_clientes_adm.php?id_cliente=$id_cliente\";}redireciona();
                
                                </script>";
                        }
                        else
                        {
                                $data = date("d/m/Y");
                                $hora = date("H:i:s");
                                
                                include("funcoes_data.php");
                                $data = dtBanco($data);
                                
                                $insere = mysql_query("INSERT INTO arquivos_zip_rar (id_cliente,arquivo,data_upload,hora_upload,atualizado_por) VALUES ($id_cliente,'$arquivo','$data','$hora','$login')");
                                
                                $update = mysql_query("UPDATE clientes SET nome='$nome',telefone='$telefone',dominio='$dominio',endereco_ftp='$endereco_ftp',usuario_ftp='$usuario_ftp',senha_ftp='$senha_ftp',endereco_painel='$endereco_painel',usuario_painel='$usuario_painel',senha_painel='$senha_painel',endereco_bd='$endereco_bd',usuario_bd='$usuario_bd',senha_bd='$senha_bd' WHERE id_cliente = $id_cliente");
                                        
                                        if(($insere == false) && ($update == false))
                                        {       
                                                echo "<script language=\"javascript\">\n\n
                  
                                                alert (\"Erro ao editar os dados do cliente.\");\n\n
                                                 
                                                function redireciona() {window.location=\"editar_clientes_adm.php?id_cliente=$id_cliente\";}redireciona();
                                                
                                                </script>";
                                                                
                                        }
                                        else
                                        {                       
                                                echo "<script language=\"javascript\">\n\n
                                                          
                                                alert (\"Cliente editado com sucesso.\");\n\n
                                                          
                                                function redireciona() {window.location=\"visualizar_clientes_adm.php\";}redireciona();
                                                        
                                                </script>";
                                        }
                                                
                        }
                                                
                }
                        
        }
        else
        {
                
                $update = mysql_query("UPDATE clientes SET nome='$nome',telefone='$telefone',dominio='$dominio',endereco_ftp='$endereco_ftp',usuario_ftp='$usuario_ftp',senha_ftp='$senha_ftp',endereco_painel='$endereco_painel',usuario_painel='$usuario_painel',senha_painel='$senha_painel',endereco_bd='$endereco_bd',usuario_bd='$usuario_bd',senha_bd='$senha_bd' WHERE id_cliente = $id_cliente");
                
                if($update == true)
                {
                        echo "<script language=\"javascript\">\n\n
                        
                        alert (\"Cliente editado com sucesso.\");\n\n
                          
                        function redireciona() {window.location=\"visualizar_clientes_adm.php\";}redireciona();
                        
                        </script>";
                }
                else
                {
                        echo "<script language=\"javascript\">\n\n
                        
                        alert (\"Desculpe, tente mais tarde.\");\n\n
                          
                        function redireciona() {window.location=\"editar_clientes_adm.php?id_cliente=$id_cliente\";}redireciona();
                        
                        </script>";
                }
        }
                                
}




Obrigado, Glauco.


Jesus te ama.

IPB Skin By Virteq