I'm trying to generate thumbnail but the following error is appearing:
Warning: imagejpeg ( link ): failed to open stream: HTTP wrapper does not support writeable connections in /var/www/html/directory/classes/metodosClass.php
What is causing me strangeness, is that on another server works properly, gd2 has been enabled, the images exist and the directories are correct. See below:
....
$semAcentos = preg_replace(array("/(á|à|ã|â|ä)/","/(Á|À|Ã|Â|Ä)/","/(é|è|ê|ë)/","/(É|È|Ê|Ë)/","/(í|ì|î|ï)/","/(Í|Ì|Î|Ï)/","/(ó|ò|õ|ô|ö)/","/(Ó|Ò|Õ|Ô|Ö)/","/(ú|ù|û|ü)/","/(Ú|Ù|Û|Ü)/","/(ñ)/","/(Ñ)/"),explode(" ","a A e E i I o O u U n N"),$peClientes->NomeEmpresa);
$semEspacos = preg_replace('/[ -]+/' , '-' , $semAcentos);
$diretorioClientes = mb_strtolower($semEspacos);
$diretorio = "".$this->caminhoAbsoluto($http = 'off')."/produtos/".$diretorioClientes."/thumb/".$jmFotos->ImagemProdutos;
// Aqui verifico se a imagem já existe
if(file_exists($diretorio)){
$foto = $diretorio;
}else{
$foto = $this->gerarThumb($idCliente,$diretorioFotos,$jmFotos->ImagemProdutos);
}
GenerateThum () method
/**
* Método gera thumbnails das imagens
* Encontra-se na página de produtos.php
* @access public
* @param string $foto
* @return string $diretorioThumb,$foto
*/
public function gerarThumb($idClientes,$diretorioFotos,$foto){
$diretorioNormal = "".$this->caminhoAbsoluto($http = 'off')."/posts/".$diretorioFotos."/";
$diretorioThumb = "".$this->caminhoAbsoluto($http = 'off')."/posts/".$diretorioFotos."/thumb/";
$fotoDir = $diretorioNormal.$foto;
list($largura,$altura) = getimagesize($fotoDir);
list($arquivo,$extensao) = explode(".",$foto);
if($extensao == "jpg" || $extensao == "jpeg" || $extensao == "JPG"){
if($largura > $altura){
$novaLargura = 296;
$novaAltura = 219;
$miniatura = imagecreatetruecolor($novaLargura, $novaAltura);
$imagem = imagecreatefromjpeg($fotoDir);
imagecopyresampled($miniatura, $imagem, 0, 0, 0, 0, $novaLargura, $novaAltura, $largura, $altura);
imagejpeg($miniatura,$diretorioThumb.$foto,90);
}
if($altura > $largura){
$novaLargura = 170;
$novaAltura = 240;
$miniatura = imagecreatetruecolor($novaLargura, $novaAltura);
$imagem = imagecreatefromjpeg($fotoDir);
imagecopyresampled($miniatura, $imagem, 0, 0, 0, 0, $novaLargura, $novaAltura, $largura, $altura);
imagejpeg($miniatura,$diretorioThumb.$foto,90);
}
if($altura == $largura){
$novaLargura = 240;
$novaAltura = 240;
$miniatura = imagecreatetruecolor($novaLargura, $novaAltura);
$imagem = imagecreatefromjpeg($fotoDir);
imagecopyresampled($miniatura, $imagem, 0, 0, 0, 0, $novaLargura, $novaAltura, $largura, $altura);
imagejpeg($miniatura,$diretorioThumb.$foto,90);
}
}
if($extensao == "png"){
if($largura > $altura){
$novaLargura = 296;
$novaAltura = 219;
$miniaturaPNG = imagecreatetruecolor($novaLargura, $novaAltura);
$imagemPNG = imagecreatefrompng($fotoDir);
imagecopyresampled($miniaturaPNG, $imagemPNG, 0, 0, 0, 0, $novaLargura, $novaAltura, $largura, $altura);
imagepng($miniaturaPNG,$diretorioThumb.$foto,null,90);
}
if($altura > $largura){
$novaLargura = 170;
$novaAltura = 240;
$miniaturaPNG = imagecreatetruecolor($novaLargura, $novaAltura);
$imagemPNG = imagecreatefrompng($fotoDir);
imagecopyresampled($miniaturaPNG, $imagemPNG, 0, 0, 0, 0, $novaLargura, $novaAltura, $largura, $altura);
imagepng($miniaturaPNG,$diretorioThumb.$foto,null,90);
}
if($altura == $largura){
$novaLargura = 240;
$novaAltura = 240;
$miniaturaPNG = imagecreatetruecolor($novaLargura, $novaAltura);
$imagemPNG = imagecreatefrompng($fotoDir);
imagecopyresampled($miniaturaPNG, $imagemPNG, 0, 0, 0, 0, $novaLargura, $novaAltura, $largura, $altura);
imagepng($miniaturaPNG,$diretorioThumb.$foto,null,90);
}
}
return $diretorioThumb.$foto;
}