upload de imagens so funciona no localhost

27/09/2013

0

PHP

Olá amigos, estou com um pequeno (espero eu) problema.
Fiz uma aplicação em PHP para fazer upload de várias imagens ao mesmo tempo, testei ela localmente e funciona perfeitamente, inclusive com a opção de apagar a imagem da pasta do servidor tb.
Porém, quando envio os arquivos para o servidor ele não funciona como deveria. O problema é que não aparece nenhum mensagem de erro, ele faz o upload das imagens, só q ele grava a mesma imagem várias vezes apenas com nomes diferentes. Então na tela aparece o total de imagens que foram "upadas" só que todas com a mesma aparência, como se tivesse sido "upada" a mesma imagem.
Já dei as permissões necessárias para as pastas (mas creio que esse não seria o problema, pois senão ele não estaria nem gravando as imagens na pasta).
Segue abaixo meus códigos, se alguém puder me ajudar a encontrar onde estou errando, agradeço.
O HTML:
<form action="" method="post" enctype="multipart/form-data">
                        <span class="">Nome da Obra</span><br />
                        <select name="obras" class="cx170">
                            <option value="-1">Selecione uma Obra</option>
                            <?php
                            if (!empty($lista_obras)) {
                                foreach ($lista_obras as $lo) {
                                    if ($lo->getCodigo() == $codigo) {
                                        $selecionado = "selected";
                                    } else {
                                        $selecionado = "";
                                    }
                                    echo "<option value=\"" . $lo->getCodigo() . $selecionado . "\">" . $lo->getNome() . "</option>";
                                }
                            }
                            ?>
                        </select><br /><br />

                        <span class="">Fotos</span><br />
                        <input type="file" name="imagens[]" multiple="true" class="cx370" /><br /><br />

                        <input type="submit" name="gravar" value="Gravar" class="botao"/>
                        <input type="submit" name="limpar" value="Limpar" class="botao"/>
                    </form>
 


O PHP:
if (isset($_GET["id"])) {
    $codigo = $_GET["id"];
    
    $i = $foto_dao->listarFoto($codigo);
    if (!empty($i)) {
        foreach ($i as $im) {
            $img = $im->getFoto();
            if (unlink($img)) {
                $deletar = $foto_dao->deletar($codigo);
                $msg->addMensagemOk("Dados Deletados com Sucesso");
            } else {
                $erro->addMensagemErro("Erro ao Deletar Dados");
            }
        }
    }
}

if (isset($_POST["gravar"]) || isset($_POST["atualizar"])) {
    $codigo = $_POST["obras"];
    $tipos = array('.jpg', '.jpeg', '.gif', '.png', '.JPG');
    if ($codigo == '-1') {
        $erro->addMensagemErro("Selecione a Obra");
    } else {
        $dir = "imagens_obras/";
        $campos = count($_FILES['imagens']['tmp_name']);
        for ($i = 0; $i < count($_FILES['imagens']['name']); $i++) {
            $tipo = strrchr($_FILES["imagens"]['name'][$i], ".");
            if (in_array($tipo, $tipos)) {

                $imagem = md5($_FILES["Filedata"]["imagens"] . date("dmYhis"));
                $imagem_final = $dir . $imagem . $tipo;
                if (move_uploaded_file($_FILES['imagens']['tmp_name'][$i], $imagem_final)) {
                    $fotos = new Obras_foto();
                    $fotos->setObra_codigo($codigo);
                    $fotos->setFoto($imagem_final);
                    if ($foto_dao->gravar($fotos)) {
                        $msg->addMensagemOk("Foto <strong>" . $_FILES['imagens']['name'][$i] . " Gravada com Sucesso</strong>");
                    }
                } else {
                    $erro->addMensagemErro("Erro ao Gravar Imagens. Consulte o Administrador do Site");
                }
            } else {
                $erro->addMensagemErro("Tipo de Arquivo Inválido. <strong><br />Tipos permitidos: jpg, png, jpeg, JPG, gif</strong><br />");
            }
        }
    }
}
Edson Pereira

Edson Pereira

Responder

Posts

28/09/2013

Marcio Araujo

se ta rodando normal em localhost e quando é em um servidor da problema, o problema deve ta nele...será que ele da suporte a fazer varios uploads?
posso está errado.
Responder

30/09/2013

Edson Pereira

Olá Márcio, obrigado por responder meu post. Já verifiquei com o suporte do servidor e eles falaram que não tem nenhuma restrição. Tem mais alguma ideia?

Obrigado.
Responder

30/09/2013

Marcio Araujo

Edson, no momento, sem ideia do que possa ser...qualquer novidade retorno.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar