Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Upload


Alex Pinheiro

Pergunta

Pessoal, bom dia

Tenho este código aqui:

<?php

require "comum.php";


session_start();

//if (!date);
$titulo = $_POST['titulo']; 
$conteudo = $_POST['conteudo']; 
$data = getdate(); 

$erro = FALSE; 

$sql = mysql_query("SELECT * FROM aut_noticias WHERE titulo='$titulo'"); 

if (mysql_num_rows($sql) > 0)
    {
    
    echo "<div align='center' class='snavon'>Este Tópico já foi respondido.</div>"; $erro = TRUE;
    
    }
    
    if ($titulo == "") 
    
    {
    
    echo "<div align='center' class='snavon'>Título vazio!<br></div>"; $erro = TRUE;
    
    }
    
    if ($conteudo == "") 
    
    {
    
    echo "<div align='center' class='snavon'>Conteúdo vazia!<br></div>"; $erro = TRUE;
    
    }
    
    
    //if (!erro)

    
    {
    
    
    $autor_id=$_SESSION["id_usuario"];
    
    $data = time($data);
    
    
?>

<?php


$erro = $config = array();

// Prepara a variável do arquivo
$arquivo = isset($_FILES["foto"]) ? $_FILES["foto"] : FALSE;

// Tamanho máximo do arquivo (em bytes)
$config["tamanho"] = 9906883;
// Largura máxima (pixels)
$config["largura"] = 1280;
// Altura máxima (pixels)
$config["altura"]  = 1024;

// Formulário postado... executa as ações
if($arquivo)
{  
    // Verifica se o mime-type do arquivo é de imagem
    if(!eregi("^image\/(pjpeg|jpeg|png|gif|bmp)$", $arquivo["type"]))
    {
        $erro[] = "Arquivo em formato inválido! A imagem deve ser jpg, jpeg, 
            bmp, gif ou png. Envie outro arquivo";
    }
    else
    {
        // Verifica tamanho do arquivo
        if($arquivo["size"] > $config["tamanho"])
        {
            $erro[] = "Arquivo em tamanho muito grande! 
        A imagem deve ser de no máximo " . $config["tamanho"] . " bytes. 
        Envie outro arquivo";
        }
        
        // Para verificar as dimensões da imagem
        $tamanhos = getimagesize($arquivo["tmp_name"]);
        
        // Verifica largura
        if($tamanhos[0] > $config["largura"])
        {
            $erro[] = "Largura da imagem não deve 
                ultrapassar " . $config["largura"] . " pixels";
        }

        // Verifica altura
        if($tamanhos[1] > $config["altura"])
        {
            $erro[] = "Altura da imagem não deve 
                ultrapassar " . $config["altura"] . " pixels";
        }
    }
    
    // Imprime as mensagens de erro
    if(sizeof($erro))
    {
        foreach($erro as $err)
        {
            echo " - " . $err . "<BR>";
        }

        echo "<align='center'><a href=\"nova.php\">Fazer Upload de Outra Imagem</a>";
    }

    // Verificação de dados OK, nenhum erro ocorrido, executa então o upload...
    else
    {
        // Pega extensão do arquivo
        preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $arquivo["name"], $ext);

        // Gera um nome único para a imagem
        $imagem_nome = md5(uniqid(time())) . "." . $ext[1];

        // Caminho de onde a imagem ficará
        $imagem_dir = "./fred/upload/imagens/" . $imagem_nome;
        
        //PARA O SITE USAR ../faq/imagens/

        // Faz o upload da imagem
        move_uploaded_file($arquivo["tmp_name"], $imagem_dir);

        echo "<align='center'> Sua imagem foi enviada com sucesso!";
    }
}

?>

<style type="text/css">
<!--
body {
    background-color: #D4D0C8;
}
a:link {
    color: #FF0000;
}
a:visited {
    color: #000000;
}
a:hover {
    color: #333333;
}
a:active {
    color: #FFFFFF;
}
body,td,th {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
}
-->
</style>

<?php
// up load de arquivos


if( isset( $_POST['button'] ) ) {

    $pathToSave = './fred/upload/imagens/';

   
    $i = 0;
    $msg = array( );
    $arquivos = array( array( ) );
    foreach(  $_FILES as $key=>$info ) {
        foreach( $info as $key=>$dados ) {
            for( $i = 0; $i < sizeof( $dados ); $i++ ) {
               
                $arquivos[$i][$key] = $info[$key][$i];
            }
        }
    }

    $i = 1;

    //  o upload 
    foreach( $arquivos as $file ) {

        // Verificar se o campo do arquivo foi preenchido
        if( $file['name'] != '' ) {
            $arquivoTmp = $file['tmp_name'];
            $arquivo1 = $pathToSave.$file['name'];

            if( !move_uploaded_file( $arquivoTmp, $arquivo1 ) ) {
                $msg[$i] = 'Erro no upload do arquivo '.$i;
            } else {
                $msg[$i] = sprintf('Upload do arquivo %s foi um sucesso!',$i);
            }
        } else {
            $msg[$i] = sprintf('O arquivo %d não foi preenchido',$i);
        }

        $i++;
    }


    // Imprimimos as mensagens geradas pelo sistema
    foreach( $msg as $e ) {
        printf('%s<br>', $e);
    }

}

$nome=$file['name'];

?>


<?php    
    
    //die("ID:".$nome);
    
    
    $query = mysql_query("INSERT INTO aut_noticias (titulo,conteudo,data,autor_id,imagem,file) VALUES ('$titulo','$conteudo','$data','$autor_id','$imagem_nome','$nome')");
    
    if ($query) 
    
    {
    
    
?>



<script>
alert('Cadastro efetuado com sucesso!');
location.href='index.php';
</script>

<?php    
    //header("Location: upload.php");
    
    } 
    
    else 
    
    {
    
    echo "<div align='center' class='snavon'>Um erro aconteceu!</div>";
    
    }
    
}
    
    
    ?>
    
    
    
<html>
<p align="center"><a href="java script:history.back();">Voltar</a></p>
</html>

Ele roda normalmente, recebe todas as variáveis mas não consegue mover o arquivo para o diretório indicado.

Erro:

Warning: move_uploaded_file(./fred/upload/imagens/e514c63daf0aea0810be67d46d13457a.jpg) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\wamp\www\fred\upload\cadastrar_pergunta.php on line 140

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\wamp\tmp\php82E.tmp' to './fred/upload/imagens/e514c63daf0aea0810be67d46d13457a.jpg' in C:\wamp\www\fred\upload\cadastrar_pergunta.php on line 140

Sua imagem foi enviada com sucesso!

Warning: move_uploaded_file(./fred/upload/imagens/orcamento.pdf) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\wamp\www\fred\upload\cadastrar_pergunta.php on line 203

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\wamp\tmp\php82F.tmp' to './fred/upload/imagens/orcamento.pdf' in C:\wamp\www\fred\upload\cadastrar_pergunta.php on line 203

Erro no upload do arquivo 1

Alguém pode me dar uma luz?

Já usei este script em outras ocasições e rodou normalmente.

Muito Obrigado.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Pelo erro o arquivo onde isso está rodando se chama "cadastrar_pergunta.php", e está dentro da pasta "upload", dentro da pasta upload tem o seguinte caminho físico: "fred/upload/imagens/" ? Ou seja, existe o seguinte caminho: "C:\wamp\www\fred\upload\fred\upload\imagens"?

Link para o comentário
Compartilhar em outros sites

  • 0
Pelo erro o arquivo onde isso está rodando se chama "cadastrar_pergunta.php", e está dentro da pasta "upload", dentro da pasta upload tem o seguinte caminho físico: "fred/upload/imagens/" ? Ou seja, existe o seguinte caminho: "C:\wamp\www\fred\upload\fred\upload\imagens"?

Cara, que mancada...

hahahahah...

é a correria...

Fiz o teste aki e o arquivo foi movido com sucesso. Muito obrigado mesmo.

Um abraço

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...