Hi,
ich habe ein PHP-Script, das mithilfe von GD eine Grafik erzeugt... Ich poste den Quelltext mal gleich, obwohl es eigentlich unerheblich ist da es immer passiert, nicht nur mit diesem Script speziell...
Wenn ich dieses Script jetzt als <img> in ein anderes Script einbinde, ungefähr so...
... und es dann im Browser öffne, wird die Seite erst nicht komplett geladen, es sieht so aus als würde die Übertragung einfach mittendrin abgebrochen werden (aber immer an der gleichen Stelle!).
Klick ich auf "neu laden", kommt die Seite komplett, wieder "neu laden" -> wieder nur halb, usw... also jedes 2. mal geht's nicht.
Nun noch die Server konfiguration:
./configure' '--prefix=/usr' '--bindir=/usr/bin' '--libdir=/usr/lib' '--with-config-file-path=/etc' '--with-exec-dir=%{libdir}/php/bin' '--with-pgsql=/usr' '--with-mysql=/usr' '--with-gd=/usr/local/lib' '--with-tiff-dir=/usr' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--with-pdflib=/usr' '--with-ldap=yes' '--with-zlib=yes' '--with-bz2' '--with-ttf' '--enable-gd-native-ttf' '--with-freetype-dir=/usr/local/lib' '--with-xml=yes' '--with-t1lib' '--with-sablot' '--with-ftp' '--with-mcrypt' '--with-gettext' '--with-mm' '--enable-versioning' '--enable-yp' '--enable-bcmath' '--enable-trans-sid' '--enable-inline-optimization' '--enable-track-vars' '--enable-magic-quotes' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-shmop' '--enable-calendar' '--enable-exif' '--enable-ftp' '--enable-memory-limit' '--enable-filepro' '--enable-ctype' '--disable-debug' '--enable-force-cgi-redirect' '--enable-discard-path' '--enable-sigchild' '--enable-gd-imgstrttf' '--with-openssl' '--with-ming' '--with-crack=/root/cracklib2.7' '--with-apxs=/usr/sbin/apxs' 'i386-suse-linux'
ich habe ein PHP-Script, das mithilfe von GD eine Grafik erzeugt... Ich poste den Quelltext mal gleich, obwohl es eigentlich unerheblich ist da es immer passiert, nicht nur mit diesem Script speziell...
PHP-Code:
<?php
function fixbbox($bbox)
{
$tmp_bbox["left"] = min($bbox[0],$bbox[2],$bbox[4],$bbox[6]);
$tmp_bbox["top"] = min($bbox[1],$bbox[3],$bbox[5],$bbox[7]);
$tmp_bbox["width"] = max($bbox[0],$bbox[2],$bbox[4],$bbox[6]) - min($bbox[0],$bbox[2],$bbox[4],$bbox[6]);
$tmp_bbox["height"] = max($bbox[1],$bbox[3],$bbox[5],$bbox[7]) - min($bbox[1],$bbox[3],$bbox[5],$bbox[7]);
return $tmp_bbox;
}
function ImageColorAllocateHEX($im,$s){
if ($s[0]=="#") $s=substr($s,1);
$bg_dec=hexdec($s);
return imagecolorallocate($im,
($bg_dec & 0xFF0000) >> 16,
($bg_dec & 0x00FF00) >> 8,
($bg_dec & 0x0000FF)
);
}
$text=base64_decode($_GET["user"])."@".base64_decode($_GET["host"]);
if (empty($_GET["size"])){
$size=11;
} else{
$size=$_GET["size"];
}
$font=realpath(".")."/verdana.ttf";
$dim = fixbbox(imagettfbbox($size,0,$font,$text));
$im = imagecreate($dim['width'],$dim['height']);
if (empty($_GET["bg_color"]))
{
$bg_col = imagecolorallocate($im,0xff,0xff,0xff);
}else{
$bg_col = imagecolorallocatehex($im,$_GET["bg_color"]);
}
if (empty($_GET["text_color"]))
{
$my_col = imagecolorallocate($im,0,0,0);
}else{
$my_col = imagecolorallocatehex($im,$_GET["text_color"]);
}
imagettftext($im,$size,0,-$dim["left"]-1,-$dim["top"]-1,$my_col,$font,$text);
imagepng($im);
imagedestroy($im);
Wenn ich dieses Script jetzt als <img> in ein anderes Script einbinde, ungefähr so...
PHP-Code:
<?php
# vorher kommt noch viel inhalt...
if (eregi("^(.*)@(.*)$",$sql_data['email'],$regs))
echo "<img src=\"mail.php?user=".base64_encode($regs[1])."&host=".base64_encode($regs[2])."\">";
# ...und nachher auch
?>
Klick ich auf "neu laden", kommt die Seite komplett, wieder "neu laden" -> wieder nur halb, usw... also jedes 2. mal geht's nicht.
Nun noch die Server konfiguration:
./configure' '--prefix=/usr' '--bindir=/usr/bin' '--libdir=/usr/lib' '--with-config-file-path=/etc' '--with-exec-dir=%{libdir}/php/bin' '--with-pgsql=/usr' '--with-mysql=/usr' '--with-gd=/usr/local/lib' '--with-tiff-dir=/usr' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--with-pdflib=/usr' '--with-ldap=yes' '--with-zlib=yes' '--with-bz2' '--with-ttf' '--enable-gd-native-ttf' '--with-freetype-dir=/usr/local/lib' '--with-xml=yes' '--with-t1lib' '--with-sablot' '--with-ftp' '--with-mcrypt' '--with-gettext' '--with-mm' '--enable-versioning' '--enable-yp' '--enable-bcmath' '--enable-trans-sid' '--enable-inline-optimization' '--enable-track-vars' '--enable-magic-quotes' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-shmop' '--enable-calendar' '--enable-exif' '--enable-ftp' '--enable-memory-limit' '--enable-filepro' '--enable-ctype' '--disable-debug' '--enable-force-cgi-redirect' '--enable-discard-path' '--enable-sigchild' '--enable-gd-imgstrttf' '--with-openssl' '--with-ming' '--with-crack=/root/cracklib2.7' '--with-apxs=/usr/sbin/apxs' 'i386-suse-linux'
Kommentar