1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

erro em upload de fotos

Discussão em 'Web Development' iniciada por Crypter, 31 de Julho de 2008. (Respostas: 13; Visualizações: 1278)

  1. Crypter

    Crypter Power Member

    Viva amigos, fiz uma galeria de imagens! ta tudo direitinho e a funcionar (apagar, modificar...) so que nao faz upload das imagens!! LLOLL
    Faço o upload, so que em vez de aparecer a imagem, aparece uma cruz! o programa nao ta a fazer o upload para o server das imagens! ja tentei mil e uma coisa e nao tou a perceber pk nao funciona!! :'(
     
  2. RicAlmeida

    RicAlmeida Power Member

    e como e que estas a fazer isso
     
  3. Crypter

    Crypter Power Member

    Tens razão..
    cá esta a funçao upload

    PHP:
    function uploadImage($inputName$uploadDir)
    {
        
    $image     $_FILES[$inputName];
        
    $imagePath '';
        
    $thumbnailPath '';
        
        
    // if a file is given
        
    if (trim($image['tmp_name']) != '') {
            
    $ext substr(strrchr($image['name'], "."), 1); 

            
    // generate a random new file name to avoid name conflict
            // then save the image under the new file name
            
    $imagePath md5(rand() * time()) . ".$ext";
            
    $result    move_uploaded_file($image['tmp_name'], $uploadDir $imagePath);
            
       
            if (
    $result
            {
                
    // create thumbnail
                
    $thumbnailPath =  md5(rand() * time()) . ".$ext";
                
    $result createThumbnail($uploadDir $imagePath$uploadDir 'thumbnail/' $thumbnailPathTHUMBNAIL_WIDTH);
                
                
    // create thumbnail failed, delete the image
                
    if (!$result
                {
                    
    unlink($uploadDir $imagePath);
                    
    $imagePath $thumbnailPath '';
                } else {
                    
    $thumbnailPath $result;
                }    
            } 
            else 
            {
                
    // the image cannot be uploaded
                
    $imagePath $thumbnailPath '';
            }
            
        }

         return array(
    'image' => $imagePath'thumbnail' => $thumbnailPath);
    }
     
  4. MPalhas

    MPalhas Power Member

    puseste o enctype="multipart/form-data" nos atributos da form?
    é obrigatório quando se tem que fazer upload de alguma coisa

    de resto, se o problema for nesse código, a melhor maneira é fazeres echo a cada variavel, e em vários pontos do código, para saberes em que parte é que deixa de funcionar
     
  5. Crypter

    Crypter Power Member

    eh pa.. ja tou a bater com a cabeça nas paredes com isto!!:'(

    da sempre este warning..

    a linha 111 do functions é esta..

    alguem me consegue ajudar?
     
    Última edição: 4 de Agosto de 2008
  6. Crypter

    Crypter Power Member

    ninguem me consegue dizer o pk de nao fazer o upload?? :(!! tou a usar o gallery.. k encontrei num tutorial! supostamente devia funcionar! nao entendo pk nao funciona... :(
     
  7. Armadillo

    Armadillo Folding Member

    esta directoria ("/teste2/galeria/images/album/") existe? tens permissões de escrita?
     
  8. xsteal

    xsteal Power Member

    no catalogo que tou a fazer fiz assim:

    PHP:
    <form action="index.php?admin=grandes_upload&accao=upload" method="post" enctype="multipart/form-data">
    <label for="file">Imagens grandes:</label>
    <input type="file" name="file" id="file" /> 
    <br />
    <input type="submit" name="submit" value="Envia" />
    </form>
    <br />
    <?php
    if($_GET['accao'] == "upload"){
    if (((
    $_FILES["file"]["type"] == "image/gif")
    || (
    $_FILES["file"]["type"] == "image/jpeg")
    || (
    $_FILES["file"]["type"] == "image/png")
    || (
    $_FILES["file"]["type"] == "image/pjpeg"))
    && (
    $_FILES["file"]["size"] < 20000))
      {
      if (
    $_FILES["file"]["error"] > 0)
        {
        echo 
    "ERRO: " $_FILES["file"]["error"] . "<br />";
        }
      else
        {
        echo 
    "Upload: " $_FILES["file"]["name"] . "<br />";
        echo 
    "Tipo: " $_FILES["file"]["type"] . "<br />";
        echo 
    "Tamanho: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
       

        if (
    file_exists("../images/layouts/grandes/" $_FILES["file"]["name"]))
          {
          echo 
    $_FILES["file"]["name"] . " já existe. ";
          }
        else
          {
          
    move_uploaded_file($_FILES["file"]["tmp_name"],
          
    "../images/layouts/grandes/" $_FILES["file"]["name"]);
          echo 
    "Guardado em: " "../images/layouts/grandes/" $_FILES["file"]["name"];
          }
        }
      }
    else
      {
      echo 
    "Ficheiro inválido";
      }
      }
    ?>
    e funciona na boa, pus chmod na pasta grandes de 777 e ta a funcionar na boa
     
  9. Crypter

    Crypter Power Member

    boas.. sim tenho permissoes.não é por isso.
    xsteal logo vou ver se consigo alterar pela tua maneira e já digo alguma coisa..
     
  10. alakazan

    alakazan Power Member

    Podes por o link do tutorial para dar uma espreitadela sff.
     
    Última edição: 6 de Agosto de 2008
  11. alakazan

    alakazan Power Member

    pá já vi o qual é o tutorial e já corrigi dois erros no código. Agora tenho o meu a funcionar sem qualquer erro.
    Se precisares de ajuda é só dizer.
     
  12. Crypter

    Crypter Power Member

    manda pra pm pff o que corrigiste! é k isto é pra um projecto, e o time limit é Setembro!! e esta parte do album, já me anda a azucrinar o cerebro ha 2 meses!!
     
  13. alakazan

    alakazan Power Member

    Altera isto no config.php, é apenas uma optimizaçãozinha.

    PHP:
    define('ALBUM_IMG_DIR'$_SERVER['DOCUMENT_ROOT'].'/gallery/phpmysqltut/images/album/');

    // all images inside an album are stored here
    define('GALLERY_IMG_DIR'$_SERVER['DOCUMENT_ROOT'].'/gallery/phpmysqltut/images/gallery/'); 
    repara que /gallery/phpmysqltut/images/album/ está dentro da minha pasta www do wamp, deves alterar a tua convenientemente.



    No ficheiro add-image.php poem em comentário o seguinte código

    PHP:
       if (!get_magic_quotes_gpc()) {
            
    $albumName  addslashes($albumName);
            
    $albumDesc  addslashes($albumDesc);
            
    $imgPath    addslashes($imgPath);
       } 
    Quando se está a fazer o upload de uma imagem estas variaveis não interferem no processo e o erro era esse mesmo, aquelas variaives não estavam defenidas.
     
  14. Crypter

    Crypter Power Member

    :D! porreiro pa :D!! hoje ja nao da, que ja tou na cama.. mas amanha ja vejo se com isso ja funciona!
     

Partilhar esta Página