MrChuky Posted May 25, 2010 Posted May 25, 2010 This is my code, I think is same but your error is the $file var. For example: You have: $file = fopen('ftp://localhost/'.$name.'_'.$crest.'.bmp', 'r'); //fopen($filename,'rb'); Try to change, think that the file crest.php is in the same machine that server, replace "localhost" for the folder tree. My $file var: $file = fopen('/home/admin/gameserver/data/crests/'.$name.'_'.$crest.'.bmp', 'r'); //fopen($filename,'rb'); Because my server work under Linux and "fopen" read the folders in the machine. I don't know to use with ftp protocol but if you want to use localhost take my mode. If you use Windows probably is: $file = fopen('C:/server/gameserver/data/crests/'.$name.'_'.$crest.'.bmp', 'r'); //fopen($filename,'rb'); I'm not sure. Hope that helps ::) <? if(!empty($_GET['clan_crest'])){ $name = 'Crest'; $crest = $_GET['clan_crest']; } else if(!empty($_GET['ally_crest'])){ $name = 'AllyCrest'; $crest = $_GET['ally_crest']; } else die('No Crest!'); $file = fopen('/home/admin/gameserver/data/crests/'.$name.'_'.$crest.'.bmp', 'r'); //fopen($filename,'rb'); $dds = fread($file,4); if ($dds!=='DDS ') die("Error: no hay imagen DDS"); //DDS header $hdrSize = readInt($file); $hdrFlags = readInt($file); $imgHeight = readInt($file)-4; $imgWidth = readInt($file); $imgPitch = readShort($file); //DXT1 header fseek($file, 84); $dxt1 = fread($file,4); if ($dxt1!=='DXT1') die("Error: no es formato DX1"); //here we go fseek($file, 128); header ("Content-type: image/png"); $img=imagecreatetruecolor($imgWidth,$imgHeight); for ($y=-1; $y<$imgHeight/4; $y++) { for ($x=0; $x<$imgWidth/4; $x++) { $color0_16 = readShort($file); $color1_16 = readShort($file); $r0 = ($color0_16 >> 11) << 3; $g0 = (($color0_16 >> 5) & 63) << 2; $b0 = ($color0_16 & 31) << 3; $r1 = ($color1_16 >> 11) << 3; $g1 = (($color1_16 >> 5) & 63) << 2; $b1 = ($color1_16 & 31) << 3; $color0_32 = imagecolorallocate($img,$r0,$g0,$b0); $color1_32 = imagecolorallocate($img,$r1,$g1,$b1); $color01_32 = imagecolorallocate($img,$r0/2+$r1/2,$g0/2+$g1/2,$b0/2+$b1/2); $black = imagecolorallocate($img,0,0,0); $data = readInt($file); for ($yy=0;$yy<4;$yy++) { for ($xx=0;$xx<4;$xx++) { $bb = $data & 3; $data = $data >> 2; switch ($bb) { case 0: $c = $color0_32; break; case 1: $c = $color1_32; break; case 2: $c = $color01_32; break; default: $c = $black; break; } imagesetpixel($img,$x*4+$xx,$y*4+$yy,$c); } } } } imagepng($img); ## Functions needed function readInt($file) { $b4 = ord(fgetc($file)); $b3 = ord(fgetc($file)); $b2 = ord(fgetc($file)); $b1 = ord(fgetc($file)); return ($b1<<24)|($b2<<16)|($b3<<8)|$b4; } function readShort($file) { $b2 = ord(fgetc($file)); $b1 = ord(fgetc($file)); return ($b1<<8)|$b2; } ?>
disorder25 Posted May 26, 2010 Posted May 26, 2010 Thank You very much friend I finally got it to work. I have wait so long to get this script working and if wasn't for your help I was never gonna get it done. It is working perfectly. One more time Thank you.
EvE Posted May 29, 2010 Posted May 29, 2010 After a while, still Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\heroes.php on line 100 in heroes.php, some1 have any ideea?
EvE Posted June 11, 2010 Posted June 11, 2010 for me it is working with no errors. For him. For me, no!
shawshaw Posted October 27, 2011 Posted October 27, 2011 this one doesn't show any heroes, it will show olympiad rankings! what a dumb...
tonysbelet Posted January 7, 2012 Posted January 7, 2012 It looks really good but if it has errors i am gonna wait until you fix it.
Delta191 Posted January 8, 2012 Posted January 8, 2012 Tested it on my site, seems to be Working. Made few Changes. but its good Share thanks
Dippindots Posted April 14, 2012 Posted April 14, 2012 Warning: mysql_query() expects parameter 1 to be string, resource given in C:\XAMPP\htdocs\pages\heroes.php on line 51 No heroes found.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now