[ ljubank @ 01.06.2005. 10:02 ] @
Fatal error: Call to undefined function: imagecreate() in C:\phpweb\sss.php on line 76 Verovatno ti nije aktivirana GD ekstenzija. Nađi u php.ini fajlu red: Code: ;extension=php_gd2.dll I promeni sa: Code: extension=php_gd2.dll i ovo sam uradio i dalje mi javlja gore navedenu gresku da li neko moze da pomogne evo koda <?php /************************************************ Ucitavanje rezultata glasanja ************************************************/ $vote=$HTTP_POST_VARS['vote']; if(!$db_conn=@mysql_connect('localhost')) { echo 'Nije uspostavljena veza s bazom podataka<br />'; exit; }; @mysql_select_db('poll'); if(!empty($vote)) { $vote=addslashes($vote); $query="update poll_results set num_votes=num_votes+1 where candidate='$vote'"; if(!($result=@mysql_query($query,$db_conn))) { echo 'Nije uspostavljena veza s bazom podataka<br />'; exit; } }; //ucitavanje tekucih rezultata glasanja bez obzira da li je korisnik glasao $query='select * from poll_results'; if(!($result=@mysql_query($query,$db_conn))) { echo 'Nije uspostavljena veza sa bazom podataka<br />'; exit; } $num_candidates=mysql_num_rows($result); //izracunavamo ukupan broj dosadasnjih glasova $total_votes=0; while($row=mysql_fetch_object($result)) { $total_votes+= $row->num_votes; } mysql_data_seek($result,0);//pokazivac rezultata postavljamo na 0 /**************************************************** pocetni proracuni za dijagram ****************************************************/ //inicijalizujemo konstante $width=500;//sirina slike u pikselima-uklapa se u 640x480 $left_margin=50;//leva margina slike $right_margin=50;//desna margina slike $bar_height=40; $bar_spacing=$bar_height/2; $font='arial'; $title_size=16;//u tackama $main_size=12;//u tackama $small_size=12;//u tackama $text_indent=10;//pozicija natpisa,levi kraj //tacka od koje pocinje crtanje linije $x=$left_margin+60;//koordinata osnovne linije dijagrama $y=50;//isto $bar_unit=($width-($x+$right_margin))/100;//jedna tacka na dijagramu //izracunavamo visinu dijagrama=debljina traka + razmaci + margine $height=$num_candidates * ($bar_height+$bar_spacing)+50; /****************************************************** priprema pozadinu za sliku ******************************************************/ //pravimo crnu pozadinu $im=imagecreate($width,$height); //zadajemo boje $white=ImageColorAllocate($im,255,255,255); $blue=ImageColorAllocate($im,0,64,128); $black=ImageColorAllocate($im,0,0,0); $pink=ImageColorAllocate($im,255,78,243); $text_color=$black; $percent_color=$black; $bg_color=$white; $line_color=$black; $bar_color=$blue; $number_color=$pink; //pravimo platno po kojem cemo crtati ImageFilledRectangle($im,0,0,$width,$height,$bg_color); //crtamko okvir oko pozadine ImageRectangle($im,0,0,$width-1,$height-1,$line_color); //ispisujemo naslov $title='Rezultati glasanja'; $title_dimensions=ImmageTTFBBox($title_size,0,$font,$title); $title_length=$title_dimensions[2]-$title_dimensions[0]; $title_height=abs($title_dimensions[7]-$title_dimensions[1]); $title_above_line=abs($title_dimensions[7]); $title_x=($width-$title_lenght)/2;//naslov centriramo po sirini $title_y=($y-$title_height)/2+$title_above_line;//i po visini ImageTTFText($im,$title_size,0,$title_x,$title_y,$text_color,$font,$title); //povlacimo osnovnu liniju za trake tako da prolazi malo iznad prve trake do ispod poslednje trake ImageLine($im,$x,$y-5,$x,$height-15,$line_color); /******************************************************* prikazivanje podataka na dijagramu *******************************************************/ //ucitavamo redove s podacima iz baze i crtamo odgovarajuce trake while($row=mysql_fetch_object($result)) { if($total_votes>0) $percent=intval(round(($row->num_votes/$total_votes)*100)); else $percent=0; //prikazujemo procenat koji odgovara tekucoj vrednosti ImageTTFText($im,$main_size,0,$width-30,$y+($bar_height/2),$percent_color,$font,$percent.'%'); if($total_votes>0) $right_value=intval(round(($row->num_votes/$total_votes)*100)); else $right_value=0; //izracunavamo duzinu trake koja odgovara tekucoj vrednosti $bar_length=$x+($right_value * $bar_unit); //crtamo traku koja predstavlja tekucu vrednost ImageFilledRectangle($im,$x,$y-2,$bar_length,$y+$bar_height,$bar_color); //ispisujemo naslov za tekucu vrednost ImageTTFText($im,$main_size,0,$text_indent,$y+($bar_height/2),$text_color,$font,$row->candidate); //crtamo pravougaonok koji predstavlja 100% ImageRectangle($im,$bar_length+1,$y-2,($x+(100*$bar_unit)),$y+$bar_height,$line_color); //prikazujemo vrednosti ImageTTFText($im,$small_size,0,$x+(100*$bar_unit)-50,$y+($bar_height/2),$number_color,$font,$row->num_votes.'/'.$total_votes); //prelazimo na sledecu traku $y=$y+($bar_height+$bar_spacing); } /***************************************************** prikazujemo zavrsenu sliku *****************************************************/ Header('Content-type: image/png'); ImagePng($im); /****************************************************** oslobadjamo resurse ******************************************************/ ImageDestroy($im); ?> |