+ Responder ao Tópico



  1. #1

    Talking Problemas com uso de função upload no php.

    E ai galera, beleza? Cá estou eu de novo pra encher o saco de vocês. XD

    Tipo, alguém aqui já conseguiu fazer upload de arquivos utilizando o php? Estive visitando vários sites do Google, mas alguns scripts que testei tive problemas porquê nada era exibido na tela, ou sempre recebia mensagens de erro dizendo que não era possível fazer o upload do arquivo. ^^''

    Alguém sabe como fazer e poderia me dar uma ajuda?

    Valeu galera. o/

  2. #2

    Padrão

    Procure por estas linhas no arquivo php.ini:

    ;;;;;;;;;;;;;;;;
    ; File Uploads ;
    ;;;;;;;;;;;;;;;;

    ; Whether to allow HTTP file uploads.
    file_uploads = On

    ; Temporary directory for HTTP uploaded files (will use system default if not
    ; specified).
    upload_tmp_dir =

    ; Maximum allowed size for uploaded files.
    upload_max_filesize = 2M

    Até

    mtec

  3. #3

    Padrão

    Opa velho, obrigado pela ajuda. ^^
    Eu estive vendo o arquivo e está tudo bem com ele. Achei uma função na internet que finalmente funcionou e estou postando.

    Formulário de upload:
    Código :
    <form enctype="multipart/form-data" action="up.php" method="post">
    <input type="hidden" name="MAX_FILE_SIZE" value="300000" />
    Send this file: <input name="userfile" type="file" />
    <input type="submit" value="Send File" />
    </form>

    Programa de upload em php:
    Código :
    <?php
    // Nas versões do PHP anteriores a 4.1.0, deve ser usado $HTTP_POST_FILES
    // ao invés de $_FILES.
     
    $uploaddir = '/var/www/uploads/';
    $uploadfile = $uploaddir . $_FILES['userfile']['name'];
    print "<pre>";
    if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])) {
        print "O arquivo é valido e foi carregado com sucesso. Aqui esta alguma informação:\n";
        print_r($_FILES);
    } else {
        print "Possivel ataque de upload! Aqui esta alguma informação:\n";
        print_r($_FILES);
    }
    print "</pre>";
    ?>

    Valeu pessoal e obrigado mtec pela ajuda. ^^

  4. #4

    Padrão

    Bit fica meu agradecimento a vc pois eu estava precisando dessa função tb e já tava quase dano um troço pq num achava uma q prestava

  5. #5

    Padrão

    Nada velho. ^^
    Acabei esquecendo também de descrever algumas coisas do código:

    Na seção:
    Código :
    <input type="hidden" name="MAX_FILE_SIZE" value="300000" />

    O value representa o limite do tamanho do arquivo para upload. Neste caso, coloquei 300 kbytes (aproximado). O valor é medido em bytes.

    Código :
    $uploaddir = '/var/www/uploads/';

    Aqui, nesta seção, você coloca onde onde seu arquivo será upado.

  6. #6
    rafael0sd
    Visitante

    Padrão Dúvida sobre o destino do arquivo em "up.php"

    Oi pessoal, gostaria de saber como escrevo o diretorio em:
    $uploaddir = '/var/www/upload/';
    parece ser uma dúvida bem idiota, mas o caso é que entendo muito pouco sobre html (e o q seria "var"?).. o site que administro produzi no publisher (esse mesmo do ofice 2003) e meu desejo é inserir um sistema como esse no meu site. Fiz várias tentativas, com pequenas mudanças, e desconfio que seja algum bloqueio do host, no momento o site está hospedado no 110MB.com - Most Endorsed FREE Website Hosting Provider (opção de conta gratuita).
    Caso seja, alguem saberia como resolver isso?
    Peço desculpas por upar um tópico aparentemente encerrado, mas achei a dúvida um tanto pequena para ser razão de um novo tópico.
    Desde já, agradeço aos que responderem.

  7. #7

    Padrão

    Kra eu nao intendi bem sua pergunta, mas... o "var" é um diretorio do linux.

    $uploaddir é uma variável que recebe o caminho de onde ficarão armazenados os arquivos, então neste caso, lá no servidor existe uma pasta chamada var, dentro dela uma chamada www e ouyra chamada upload, que é onde ficarão os arquivos.

    Agora eu não sei se esse site q vc fez pelo publisher vai dar suporte ao PHP pra funcionar isso nao, até mesmo pelo fato deu não conhecer o publisher.

  8. #8
    rafael0sd
    Visitante

    Padrão Obrigado tuxson

    A página em php eu fiz no bloco de notas... explicando melhor minha dúvida: eu devo colocar o endereço completo do site, ou o código busca-o sozinho (apesar de eu nunca ter ouvido falar em código que faça algo assim...)? tipo:
    $uploaddir 'www.warcraft3brasil.110mb.com/teste/'
    ou
    $uploaddir '/teste/'
    Na verdade, eu testei das duas formas, e nas duas ocorreram erros (diferentes).
    Por isso achei que poderia ser uma limitação do host ou algo assim...

  9. #9
    rafael0sd
    Visitante

    Padrão Consegui! =)

    Comparei o código postado pelo Bit, com um que encontrei nessa página:
    WebFórum > Formulario Com Upload
    bastou colocar: ".." em:
    $uploaddir '../teste/'