@fasb;

Tablonun aynısını oluşturdum. Yeni kodlar ve ekran görüntüsü aşağıda.

<?php 
mysql_connect('localhost','pma','pmapass');
mysql_select_db('test');

$sorgu = mysql_query("SELECT nufus FROM ilce");
$y = array();
while($sonuc = mysql_fetch_array($sorgu)){
    $y[] = ($sonuc['nufus']/5)+100;
}
$img = imagecreatetruecolor(600, 300); 
$green = imagecolorallocate($img, 110, 255, 0); 
$red = imagecolorallocate($img, 255, 0, 0); 
imagefill($img, 0, 0, $green);
$x = 50; 

for($i=0, $j=1;$i<=8, $j<=9;$i++,$j++) 
{ 
    imagefilledarc($img, $x*$j, $y[$i], 15, 15, 0, 0, $red, IMG_ARC_PIE); 
    imageline($img, $x*$j, $y[$i], $x*($j+1), $y[$i+1], $red); 
} 
    imagefilledarc($img, $x*(count($y)), $y[count($y)-1], 15, 15, 0, 0, $red, IMG_ARC_PIE); 

header("Content-type: image/png"); 
imagepng($img); 
imagedestroy($img); 
?>


Şimdi kodları satır satır açıklayayım.

mysql_connect('localhost','pma','pmapass');
mysql_select_db('test');

$sorgu = mysql_query("SELECT nufus FROM ilce");
$y = array();
while($sonuc = mysql_fetch_array($sorgu)){
    $y[] = ($sonuc['nufus']/5)+100;
}
Yukarıda yazdığım bu satırlarda veritabanına bağlandım. ilce tablosunun nufus sütununu çektim ve $y isminde bir değişkene atadım. Rakamları direk koordinat olarak kullandığım için 100, 600 gibi büyük rakamlar yerine bu rakamların beşte birini aldım. ve grafiğimiz tavana yapışmasın diye her değere +100 ekledim ki tavandan yüz piksel aşağı ötelesin. Sonuç olarak rakamlar kümesi $y değişkenine gelmiş oldu.

$img = imagecreatetruecolor(600, 300); 
$green = imagecolorallocate($img, 110, 255, 0); 
$red = imagecolorallocate($img, 255, 0, 0); 
imagefill($img, 0, 0, $green);
$x = 50;
Bu satırlarda ise $img değişkenine, imagecreatetruecolor fonksiyonu ile oluşturduğum resmi atadım. 600px genişliğinde 300px yüksekliğinde bir resim oluşturdum. Daha sonra $green değişkenine imagecolorallocate ile $img değişkeninde oluşturdum resmi yeşile boyadığımı söyledim. $red isimli değişkene ise kırmızı rengini attım. imagefill ile de resmi yeşile boyadım. Daha sonra soldan 50px ile başlayalım diye $x değişkeni oluşturup 50px atadım..

Gelelim for döngüsüne

for($i=0, $j=1;$i<=8, $j<=9;$i++,$j++) 
{ 
    imagefilledarc($img, $x*$j, $y[$i], 15, 15, 0, 0, $red, IMG_ARC_PIE); 
    imageline($img, $x*$j, $y[$i], $x*($j+1), $y[$i+1], $red); 
}
    imagefilledarc($img, $x*(count($y)), $y[count($y)-1], 15, 15, 0, 0, $red, IMG_ARC_PIE);
Döngüde $i ve $j isimli iki değişken var, imagefilledarc ile noktaları, imageline ile çizgileri oluşturdum. Döngüden sonra kullandığım imagefiledarc ise en sondaki noktayı oluşturmak içindi.

Son olarak

header("Content-type: image/png"); 
imagepng($img); 
imagedestroy($img);
kodları ile ise, sayfanın bir img/png türünde png resmi olduğunu belirten başlığı header fonksiyonu ile gönderdim. imagepng fonksiyonu ile $img değişkenindeki veriler ile resmi oluşturdum. Ekrana resmi bastıktan sonra imagedestroy ile bellekten resmi sildim.

Varsa aklınıza takılan soru, sorabilirsiniz.