Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Big-D

Resize Image no Windows Vista [Resolvido]

Mensagens Recomendadas

Big-D

Bom dia,

Eu via PHP consegui que quando se insere uma imagem ele redimensione a imagem e que a guarde a imagem original numa pasta e a redimensionada noutra mas isto num XP.

Passo o exacto documento (paginas web, base de dados, tudo igual) e ele não redimensiona a imagem simplesmente guarda a imagem numa das pastas criadas para ele as guardar e ainda por cima não a mostra no browser.

A minha questão é: Será um bug que o vista tem?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Big-D

É este o codigo que tou a usar (tanto no XP como no Vista e só funciona no XP):

function.php

<?php function createThumbnail($filename) {  
  
    require 'config.php';  
  
    if(preg_match('/[.](jpg)$/', $filename)) {  
        $im = imagecreatefromjpeg($path_to_image_directory . $filename);  
    } else if (preg_match('/[.](gif)$/', $filename)) {  
        $im = imagecreatefromgif($path_to_image_directory . $filename);  
    } else if (preg_match('/[.](png)$/', $filename)) {  
        $im = imagecreatefrompng($path_to_image_directory . $filename);  
    }  
  
    $ox = imagesx($im);  
    $oy = imagesy($im);  
  
    $nx = $final_width_of_image;  
    $ny = $final_height_of_image;  
  
    $nm = imagecreatetruecolor($nx, $ny);  
  
    imagecopyresized($nm, $im, 0,0,0,0,$nx,$ny,$ox,$oy);  
    
    if(!file_exists($path_to_thumbs_directory)) {  
      if(!mkdir($path_to_thumbs_directory)) {  
           die("There was a problem. Please try again!");  
      }  
       }  
  
    imagejpeg($nm, $path_to_thumbs_directory . $filename);  
}  ?>

config.php

<?php $final_width_of_image = 150;  
$final_height_of_image = 150;
$path_to_image_directory = 'images/fullsized/';  
$path_to_thumbs_directory = 'images/thumbs/';?>

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
helt

vê as permissões de ambas as pastas que tens no vista. se tiver read only se calhar é esse o problema


––––•(-• [ ђєlt ] •-)•––––

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Big-D

Eu já tirei o read only nas pastas onde são gravadas as imagens e continua a não dar.

Ele apenas guarda a imagem original e não faz o redimensionamento e nao fazendo isso não guarda a imagem redimensionada na pasta thumbs.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
helt

É muito esquisito esse teu problema... talvez algo com a pasta temporária, é que no processo de criar as imagens é usada essa pasta... dá uma olhada no php.ini, vê se a pasta temporária está apontada correctamente e se tem os privilégios suficientes..


––––•(-• [ ђєlt ] •-)•––––

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
helt

mete no topo da página ->

error_reporting(E_ALL);

ini_set("display_errors", 1);

pode ser que apareça qq coisa


––––•(-• [ ђєlt ] •-)•––––

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Big-D

Após meter esse código que me deste helt dá os seguintes erros:

Notice: Undefined index: imagem in C:\wamp\www\Produtos\registoprodutos.php on line 16

Notice: Undefined index: nome in C:\wamp\www\Produtos\registoprodutos.php on line 20

Notice: Undefined index: descricao in C:\wamp\www\Produtos\registoprodutos.php on line 21

Notice: Undefined index: referencia in C:\wamp\www\Produtos\registoprodutos.php on line 22

Notice: Undefined index: preco in C:\wamp\www\Produtos\registoprodutos.php on line 23

Notice: Undefined index: promocao in C:\wamp\www\Produtos\registoprodutos.php on line 24

Notice: Undefined index: imagem in C:\wamp\www\Produtos\registoprodutos.php on line 25

Notice: Undefined index: categoria in C:\wamp\www\Produtos\registoprodutos.php on line 26

ainda pensei que podesse ser algo no php.ini mais propriamente uma coisa lá relativa a GD2 tirei o ";" mas mesmo assim nada.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
helt

Cada undefined index é uma variável não defendia que tens no teu script. Para resolver isso podes fazer tipo: if(isset($variável)){bla bla variável} e já fica resolvido.

Mas de qq forma não me parece que seja isso que está a afectar a criação das imagens...

Olha, vai de novo ao php,ini e vê se as seguintes variáveis estão optimizadas para o teu script:

file_uploads => tem de estar em 1

upload_tmp_dir => se tiver NULL então se calhar é esse o problema, aponta para uma pasta que exista e com permissões suficientes

upload_max_filesize => vê se o tamanho é o suficiente para as imagens trabalhas


––––•(-• [ ђєlt ] •-)•––––

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Big-D

Epah, eu estava a ver no php.ini e essas três opções tão operacionais, foi então que comecei a reler isto tudo e reparei que embora eu tivesse mudado a opção read only nas pastas images (onde tão a fullsized e thumbs e nestas também), não me tinha passado pela cabeça ir a pasta tmp, fui lá mudei as permissões e já dá.

Obrigado, pela vossa ajuda, problema resolvido.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.