1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

upload de imagem

Criei um formulario onde preciso subir a imagem para uma pasta do servidor e gravar no banco de dados mysql, porem estou com muita dificuldade de encontrar onde esta o erro no meu código, alguém com experiencia poderia me ajudar?

codigo do formulário:


<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <style>
    body{
        font-family: arial;
    }
    section{
        background-color: rgb(123,104,238,.4);
        width: 70%;
        margin: auto;
    }
    input, label, textarea{
        display: block;
        width: 100%;
        height: 30px;
    }
    label{
        line-height: 30px;
        margin-top: 10px;
    }
    textarea{
        height: 150px;
    }
    form{

        width: 95%;
        margin: auto;
        box-sizing: border-box;
        padding: 20px;
    }
    #botao{
        margin-bottom: 10px;
        width: 50%;
        background-color: rgba(0,0,0,.8);
        color: white;
        height: 40px;
        cursor: pointer;
        border: none;
        font-size: 15pt;
    }
    h1{
        text-align: center;
    }
    #foto{
        margin-top: 20px;
        margin-bottom: 20px;
    }

    </style>
</head>
<body>
    <section>
    <a href="produtos.php">Ver todos os hotéis</a>
    <form method="POST" action="administrativo/processa/adm_proc_cad_hospedagem.php" enctype="multipart/form-data">
        <h4>Cadastro de Hospedagem</h4>
        <label for="nome">Empresa</label>
        <input type="text" name="empresa" id="nome" placeholder="Nome fantasia da empresa">
        <label for="nome">E-mail</label>
        <input type="email" name="email" id="email" placeholder="seu e-mail">    
        <label for="nome">Telefone Fixo</label>
        <input type="text" name="fone" id="fone" placeholder="Telefone Fixo da empresa">
        <label for="nome">WhatsZapp</label>
        <input type="text" name="whatszapp" id="whatszapp" placeholder="WhatsZapp">
        <label for="nome">Site</label>
        <input type="text" name="site" id="site" placeholder="Site da empresa">
        <label for="nome">Facebook</label>
        <input type="text" name="facebook" id="facebook" placeholder="Facebook da empresa">
        <label for="nome">Endereço</label>
        <input type="text" name="rua" id="rua" placeholder="Nome da Rua/Avenida/travessa etc">
        <label for="nome">Número</label>
        <input type="text" name="numero" id="numero" placeholder="Número">
        <label for="nome">Complemento</label>
        <input type="text" name="complemento" id="complemento" placeholder="Bloco/ Apto/ sala">
        <label for="nome">Bairro</label>
        <input type="text" name="bairro" id="bairro" placeholder="Bairro">
        <label for="nome">Cidade</label>
        <input type="text" name="cidade" id="cidade" placeholder="Cidade">
        <label for="nome">Estado</label>
        <input type="text" name="estado" id="estado" placeholder="Estado">
        <label for="nome">CEP</label>
        <input type="text" name="cep" id="cep" placeholder="CEP - Códito Postal">
        <label for="des">Descrição</label>
        <textarea name="descricao" id="descricao"></textarea>
        <label for="des">Logo empresa(200x200px)</label>
        <input type="file" name="logo[]" multiple id="logo">
        <button type="submit" class="btn btn-success">Cadastrar</button>
    </form>
    </section>
</body>
</html>

CODIGO DO PROCESSO DE INCLUSAO

<!DOCTYPE html>
<html lang="pt-br">
    <head>
        <meta charset="utf-8">
    </head>
    </body>
        <?php
            include_once("../../conexao/conexao.php");
            $empresa = filter_input(INPUT_POST, 'empresa', FILTER_SANITIZE_STRING);
            $email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_EMAIL);
            $fone = filter_input(INPUT_POST, 'fone', FILTER_SANITIZE_STRING);
            $whatszapp = filter_input(INPUT_POST, 'whatszapp', FILTER_SANITIZE_STRING);
            $site = filter_input(INPUT_POST, 'site', FILTER_SANITIZE_STRING);
            $facebook = filter_input(INPUT_POST, 'facebook', FILTER_SANITIZE_STRING);
            $rua = filter_input(INPUT_POST, 'rua', FILTER_SANITIZE_STRING);
            $numero = filter_input(INPUT_POST, 'numero', FILTER_SANITIZE_STRING);    
            $complemento = filter_input(INPUT_POST, 'complemento', FILTER_SANITIZE_STRING);
            $bairro = filter_input(INPUT_POST, 'bairro', FILTER_SANITIZE_STRING);    
            $cidade = filter_input(INPUT_POST, 'cidade', FILTER_SANITIZE_STRING);    
            $estado = filter_input(INPUT_POST, 'estado', FILTER_SANITIZE_STRING);
            $cep = filter_input(INPUT_POST, 'cep', FILTER_SANITIZE_STRING);
            $descricao = filter_input(INPUT_POST, 'descricao', FILTER_SANITIZE_STRING);    
            $logo     = $_FILES['logo']['name'];

            //Pasta onde o arquivo vai ser salvo
            $_UP['pasta'] = 'imagens/empresas/logo/';

            //Tamanho máximo do arquivo em Bytes
            $_UP['tamanho'] = 1024*1024*100; //5mb

            //Array com a extensões permitidas
            $_UP['extensoes'] = array('png', 'jpg', 'jpeg', 'gif');

            //Renomeiar
            $_UP['renomeia'] = false;

            //Array com os tipos de erros de upload do PHP
            $_UP['erros'][0] = 'Não houve erro';
            $_UP['erros'][1] = 'O arquivo no upload é maior que o limite do PHP';
            $_UP['erros'][2] = 'O arquivo ultrapassa o limite de tamanho especificado no HTML';
            $_UP['erros'][3] = 'O upload do arquivo foi feito parcialmente';
            $_UP['erros'][4] = 'Não foi feito o upload do arquivo';

            //Verifica se houve algum erro com o upload. Sem sim, exibe a mensagem do erro
            if($_FILES['logo']['error'] != 0){
                die("Não foi possivel fazer o upload, erro: <br />". $_UP['erros'][$_FILES['logo']['error']]);
                exit; //Para a execução do script
            }

            //Faz a verificação da extensao do arquivo
            $extensao = strtolower(end(explode('.', $_FILES['logo']['name'])));
            if(array_search($extensao, $_UP['extensoes'])=== false){        
                echo "
                    <META HTTP-EQUIV=REFRESH CONTENT = '0;URL=http://turismoindustrial.loja.org.br/adm/administrativo.php?link=22'>
                    <script type=\"text/javascript\">
                        alert(\"A imagem não foi cadastrada extesão inválida.\");
                    </script>
                ";
            }

            //Faz a verificação do tamanho do arquivo
            else if ($_UP['tamanho'] < $_FILES['logo']['size']){
                echo "
                    <META HTTP-EQUIV=REFRESH CONTENT = '0;URL=http://turismoindustrial.loja.org.br/adm/administrativo.php?link=22'>
                    <script type=\"text/javascript\">
                        alert(\"Arquivo muito grande.\");
                    </script>
                ";
            }

            //O arquivo passou em todas as verificações, hora de tentar move-lo para a pasta foto
            else{
                //Primeiro verifica se deve trocar o nome do arquivo
                if($UP['renomeia'] == true){
                    //Cria um nome baseado no UNIX TIMESTAMP atual e com extensão .jpg
                    $nome_final = time().'.jpg';
                }else{
                    //mantem o nome original do arquivo
                    $nome_final = $_FILES['logo']['name'];
                }
                //Verificar se é possivel mover o arquivo para a pasta escolhida
                if(move_uploaded_file($_FILES['logo']['tmp_name'], $_UP['pasta']. $nome_final)){
                    //Upload efetuado com sucesso, exibe a mensagem
                    $result_hospedagem = "INSERT INTO hospedagem (empresa, email, fone, whatszapp, site, facebook, rua, numero, complemento, bairro, cidade, estado, cep, descricao, logo, created) VALUES ('$empresa', '$email', '$fone', '$whatszapp', '$site', '$facebook', '$rua', '$numero', '$complemento', '$bairro', '$cidade', '$estado', '$cep', '$descricao', '$nome_final', NOW())";
                    $resultado_hospedagem = mysqli_query($conn, $result_hospedagem);    
                    echo "
                        <META HTTP-EQUIV=REFRESH CONTENT = '0;URL=http://turismoindustrial.loja.org.br/adm/administrativo.php?link=22'>
                        <script type=\"text/javascript\">
                            alert(\"Empresa cadastrada com Sucesso.\");
                        </script>
                    ";    
                }else{
                    //Upload não efetuado com sucesso, exibe a mensagem
                    echo "
                        <META HTTP-EQUIV=REFRESH CONTENT = '0;URL=http://turismoindustrial.loja.org.br/adm/administrativo.php?link=22'>
                        <script type=\"text/javascript\">
                            alert(\"Empresa não foi cadastrada com Sucesso.\");
                        </script>
                    ";
                }
            }


        ?>

    </body>
</html>
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags imagens ou faça a sua própria pergunta.