the database is right:
the code:
it shows an error: the image...cannot be displayed because it contains errors?. what's wrong with the code? thank you
Code:
DATABASE `poll`; TABLE `results` CREATE TABLE `results` ( book_type VARCHAR(50), num_votes INT ); INSERT INTO `results` values ('Classic', 15), ('Fantasy', 7), ('Humor', 32), ('Mystery', 12), ('Poetry', 25);
the code:
Code:
<?php $dbhandle = mysql_connect("localhost","root","123") or die("unable to connect to mysql"); $selected = mysql_select_db("poll",$dbhandle); $result = mysql_query("SELECT * FORM results"); $num_poller = mysql_num_rows($result); $total_votes = 0; while($row = mysql_fetch_array($result)){ $total_votes += $row{'num_votes'}; } mysql_data_seek($result,0); mysql_close($dbhandle); putenv('GDFONTPATH=C:\WINDOWS\Fonts'); $font = 'arial'; $y = 50; $width =700; $height = $num_poller * $bar_height *1.5 + 70; $bar_unit = ($width - 400)/100; $image = imagecreate($width,$height); $white = imagecolorallocate($image,255,255,255); $black = imagecolorallocate($image,0,0,0); $red = imagecolorallocate($image,255,0,0); $blue = imagecolorallocate($image,0,0,255); imagefill($image,$width,$height,$white); imagerectangle($image,0,0,$width-1,$height-1,$black); imagettftext($image,16,0,$width/3+50,$y-20,$black,$font,'poll results'); while($row = mysql_fetch_object($result)){ if($total_votes > 0){ $percent = intval(round(($row->num_votes/$total_votes)*100)); }else{ $percent =0; } imagettftext($image,12,0,10, $y+($bar_height/2), $black, $font, $row->book_type); //Output percentage for a particular value imagettftext($image, 12, 0, 170, $y + ($bar_height/2),$red,$font,$percent.'%'); $bar_length = $percent * $bar_unit; //Draw a shape that corresponds to 100% imagerectangle($image, $bar_length+221, $y-2, (220+(100*$bar_unit)), $y+$bar_height, $black); //Output a bar for a particular value imagefilledrectangle($image,220,$y-2,220+$bar_length, $y+$bar_height, $blue); //Output the number of votes imagettftext($image, 12, 0, 250+100*$bar_unit, $y+($bar_height/2), $black, $font, $row->num_votes.' votes cast.'); $y = $y + ($bar_height * 1.5); } header("Content-Type: image/jpeg"); imagejpeg($image); imagedestroy($image);