Commit 3b9a8fefc5a03f321b83b1afa0676d3b5f7e6c3c
1 parent
b58e197a
Exists in
master
and in
7 other branches
Contorno de erro do Mapserver na versão 6.0.3 ao criar imagens via save()
Showing
2 changed files
with
51 additions
and
7 deletions
Show diff stats
classesphp/mapa_googlemaps.php
| @@ -76,6 +76,24 @@ if(@$_SESSION["fingerprint"]){ | @@ -76,6 +76,24 @@ if(@$_SESSION["fingerprint"]){ | ||
| 76 | $f = explode(",",$_SESSION["fingerprint"]); | 76 | $f = explode(",",$_SESSION["fingerprint"]); |
| 77 | if (md5('I3GEOSEC' . $_SERVER['HTTP_USER_AGENT'] . session_id()) != $f[0] && !in_array($_GET["telaR"],$f) ){ | 77 | if (md5('I3GEOSEC' . $_SERVER['HTTP_USER_AGENT'] . session_id()) != $f[0] && !in_array($_GET["telaR"],$f) ){ |
| 78 | ilegal(); | 78 | ilegal(); |
| 79 | + } else{ | ||
| 80 | + if($img->imagepath == "") | ||
| 81 | + {echo "Erro IMAGEPATH vazio";exit;} | ||
| 82 | + if(ms_GetVersionInt() != 60003 ){ | ||
| 83 | + header('Content-Type: image/png'); | ||
| 84 | + $img->saveImage(); | ||
| 85 | + } | ||
| 86 | + else{ | ||
| 87 | + $nomer = ($img->imagepath)."temp".nomeRand().".png"; | ||
| 88 | + $img->saveImage($nomer); | ||
| 89 | + $img = imagecreatefrompng($nomer); | ||
| 90 | + imagealphablending($img, false); | ||
| 91 | + imagesavealpha($img, true); | ||
| 92 | + ob_clean(); | ||
| 93 | + echo header("Content-type: image/png \n\n"); | ||
| 94 | + imagepng($img); | ||
| 95 | + imagedestroy($img); | ||
| 96 | + } | ||
| 79 | } | 97 | } |
| 80 | } | 98 | } |
| 81 | else{ | 99 | else{ |
| @@ -296,11 +314,24 @@ else{ | @@ -296,11 +314,24 @@ else{ | ||
| 296 | header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime($nomer)).' GMT', true, 200); | 314 | header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime($nomer)).' GMT', true, 200); |
| 297 | fpassthru(fopen($nomer, 'rb')); | 315 | fpassthru(fopen($nomer, 'rb')); |
| 298 | } | 316 | } |
| 299 | - else{ | 317 | + else{ |
| 300 | if($img->imagepath == "") | 318 | if($img->imagepath == "") |
| 301 | {echo "Erro IMAGEPATH vazio";exit;} | 319 | {echo "Erro IMAGEPATH vazio";exit;} |
| 302 | - header('Content-Type: image/png'); | ||
| 303 | - $img->saveImage(); | 320 | + if(ms_GetVersionInt() != 60003 ){ |
| 321 | + header('Content-Type: image/png'); | ||
| 322 | + $img->saveImage(); | ||
| 323 | + } | ||
| 324 | + else{ | ||
| 325 | + $nomer = ($img->imagepath)."temp".nomeRand().".png"; | ||
| 326 | + $img->saveImage($nomer); | ||
| 327 | + $img = imagecreatefrompng($nomer); | ||
| 328 | + imagealphablending($img, false); | ||
| 329 | + imagesavealpha($img, true); | ||
| 330 | + ob_clean(); | ||
| 331 | + echo header("Content-type: image/png \n\n"); | ||
| 332 | + imagepng($img); | ||
| 333 | + imagedestroy($img); | ||
| 334 | + } | ||
| 304 | } | 335 | } |
| 305 | exit; | 336 | exit; |
| 306 | } | 337 | } |
classesphp/mapa_openlayers.php
| @@ -288,10 +288,23 @@ else{ | @@ -288,10 +288,23 @@ else{ | ||
| 288 | fpassthru(fopen($nomer, 'rb')); | 288 | fpassthru(fopen($nomer, 'rb')); |
| 289 | } | 289 | } |
| 290 | else{ | 290 | else{ |
| 291 | - if($img->imagepath == "") | ||
| 292 | - {echo "Erro IMAGEPATH vazio";exit;} | ||
| 293 | - header('Content-Type: image/png'); | ||
| 294 | - $img->saveImage(); | 291 | + if($img->imagepath == "") |
| 292 | + {echo "Erro IMAGEPATH vazio";exit;} | ||
| 293 | + if(ms_GetVersionInt() != 60003 ){ | ||
| 294 | + header('Content-Type: image/png'); | ||
| 295 | + $img->saveImage(); | ||
| 296 | + } | ||
| 297 | + else{ | ||
| 298 | + $nomer = ($img->imagepath)."temp".nomeRand().".png"; | ||
| 299 | + $img->saveImage($nomer); | ||
| 300 | + $img = imagecreatefrompng($nomer); | ||
| 301 | + imagealphablending($img, false); | ||
| 302 | + imagesavealpha($img, true); | ||
| 303 | + ob_clean(); | ||
| 304 | + echo header("Content-type: image/png \n\n"); | ||
| 305 | + imagepng($img); | ||
| 306 | + imagedestroy($img); | ||
| 307 | + } | ||
| 295 | } | 308 | } |
| 296 | } | 309 | } |
| 297 | function salvaCacheImagem($cachedir,$map,$tms){ | 310 | function salvaCacheImagem($cachedir,$map,$tms){ |