Zaten diger her
kosulda o kisiye araba kiralamayacagiz.
if ($Yas >=21 AND $Ehliyet == "on")
{
echo ("Araba kiralama isteginiz KABUL edilmistir.");
}
elseif ($Yas >= 18 AND $Ehliyet == "on")
{
echo ("Size bir arabayi ancak kefil gosterirseniz kiralayabiliriz");
}
else
{
echo ("Araba kiralama isteginiz RED edilmistir");
}
Ornek 2 :
Bir okulda bulunan ogrenciler icin cok basit bir puan cizelgesi
ve aldigi puana gore notun harf karsiligi programi,
if ($Puan > 70) echo "Sinav sonucunuz A";
elseif ($Puan >60) echo "Sinav sonucunuz B";
elseif ($Puan >50) echo "Sinav sonucunuz C";
elseif ($Puan >40) echo "Sinav sonucunuz D";
elseif ($Puan >30) echo "Sinav sonucunuz E";
else echo "Sinifta kaldiniz muhahahahaa";
Ornekler cogaltilabilir.Simdi sizde vereceginiz gunluk bir
karari if yapisi ile dusunup nasil bir program seklinde
yazabilceginizi dusunun.
IF yapilarinin Yuvalanmasi (Ic Ice Yapilandirilmasi)
Ingilizcesi "Nesting if Statements" olan bu konu programlama
teknigi icersinde cok kullanilmakatdir.
Ornek vermek istersek,
if ($Puan > 70)
{
echo ("Sinav Sonucunuz A");
if ($TerbiyeNotu > 70)
{
echo ("Ayrica okul yonetiminden bir de odul kazandiniz");
}
}
Bu cok kisa ornegimizde herhalde anladiniz ne demek istedigimi.(Evet
anladik hep bir odul kazanmak istemissindir ama olmamistir
hayirlisi olsun gencler size bir sey olmasin :)))
Yukaridaki ornegi anlamadiysaniz simdi yazacaklarimi hic
anlamayacaksiniz demektir.Beni anlamadin ya ben ona yaniyorum
:) Bugun ne oldu bana boyle geyik geyik yaziyorum yaw :)
if ($Puan > 70)
{
echo ("Sinav Sonucunuz A");
if ($TerbiyeNotu > 70)
{
if ($Sinif == 11)
{
echo ("Ayrica okul yonetiminden mezun oldugunuz icin bir
de odul kazandiniz") ;
}
else
{
echo ("Bir sonraki sene icin basarilar dilerim");
}
}
}
Ornek 3 : daha kompleks yapilar kurmak
1.Web sayfasi editorunuzu veya text editorunu acip asagidaki
kodlari yazin.
<HTML>
<HEAD></HEAD>
<BODY>
Seres Otelcilik Online Web Sayfasi'na Hosgeldiniz
<FORM METHOD=GET ACTION="tatil.php">
Tatil icin nereye gitmeyi dusunuyorsunuz?
<BR>
<BR>
<INPUT NAME="Sehir" TYPE = "Radio" VALUE="Istanbul">
Istanbul
<INPUT NAME="Sehir" TYPE = "Radio" VALUE="Ankara">
Ankara
<INPUT NAME="Sehir" TYPE = "Radio" VALUE="Izmir">
Izmir
<BR>
<BR>
Kac yildizli otelde kalmak istiyorsunuz?
<INPUT NAME="Yildiz" TYPE = "Radio" VALUE="Uc">
Uc Yildizli Otel
<INPUT NAME="Yildiz" TYPE = "Radio" VALUE="Dort">
Dort Yildizli Otel
<BR>
<BR>
<INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>
2.Bu dosyayi "tatil.html" olarak kayit edin.
3.Yeni bir text dosyasi icerisinde asagidakileri yazin.
<HTML>
<HEAD></HEAD>
<BODY>
Seres Otelcilik Online Web Sayfasi'na Hosgeldiniz
<BR>
<BR>
<?php
$Fiyat = 500;
$YildizFaktoru = 1;
$SehirFaktoru = 1;
if ($Yildiz == "Uc")
{
if ($Sehir == "Istanbul")
{
$SehirFaktoru =2;
$Fiyat = $Fiyat * $SehirFaktoru;
echo ("$Sehir sehrinde 1 haftalik tatil tutari $Fiyat dolardir.");
}
elseif ($Sehir == "Ankara")
{
$SehirFaktoru = 3.5;
$Fiyat = $Fiyat * $SehirFaktoru ;
echo ("$Sehir sehrinde 1 haftalik tatil tutari $Fiyat dolardir.");
}
elseif ($Sehir == "Izmir")
{
$Fiyat = $Fiyat * $SehirFaktoru;
echo ("$Sehir sehrinde 1 haftalik tatil tutari $Fiyat dolardir.");
}
else
{
echo ("Sehir Merkezi icin bir secim yapmadiniz.Geri donerek
yapabilirsiniz");
}
}
elseif ($Yildiz == "Dort")
{
$YildizFaktoru=2;
if ($Sehir == "Istanbul")
{
$SehirFaktoru = 2.5;
$Fiyat = $Fiyat * $SehirFaktoru * $YildizFaktoru;
echo ("$Sehir sehrinde 1 haftalik tatil tutari $Fiyat dolardir.");
}
elseif ($Sehir == "Ankara")
{
$SehirFaktoru = 4;
$Fiyat = $Fiyat * $SehirFaktoru * $YildizFaktoru;
echo ("$Sehir sehrinde 1 haftalik tatil tutari $Fiyat dolardir.");
}
elseif ($Sehir == "Izmir" )
{
$Fiyat = $Fiyat * $SehirFaktoru * $YildizFaktoru;
echo ("$Sehir sehrinde 1 haftalik tatil tutari $Fiyat dolardir.");
}
else
{
echo ("Sehir icin bir secim yapmadiniz...geriye donerek
bir sehir secebilirsiniz.");
}
}
else
{
echo ("Yildiz icin bir secim yapmadiniz...geriye donerek
yildiz secebilirsiniz.");
}
?>
</BODY>
</HTML>
4.Bu dosyayi "tatil.php" olarak kayit edin.(Parantezleri
yazarken dikkat edin eger bir tane eksik kalirsa ornek calismaz)
5."tatil.html" dosyasini acip bir tatil merkezi secin.Birde
otel icin yildiz sectinizmi gel keyfim gel daha ne isteyeceksiniz
iste :))
6.Birakip bilgisayari gidin tatile derdiniz ne :))
Eger halen buradaysaniz simdi ornegimizin nasil calistigina
bakalim.
Program nasil calisiyor?
Ilk uc satirimizda ongorulen degerlerle beraber degiskenlerimizi
yarattik
$Fiyat = 500;
$YildizFaktoru = 1;
$SehirFaktoru = 1;
Bu degiskenleri,kullanicinin web sayfasindan girdigi yildiz
ve sehir durumuna gore fiyati degistirmek icin kullanacagiz.
Program icerisinde ilk kontrol kullanicinin kac yildizli
otel sectigi,
if ($Yildiz == "Uc")
Eger kullanici "Uc yildizli oteli secmis ise" hemen ikinci
kontrolumuz calisiyor,
if ($Sehir == "Istanbul")
bakiyoruz kullanicinin sectigi sehir "Istanbul" mu? Evet
"Istanbul" o zaman hemen hesapliyoruz istanbulda uc yildizli
otel icin fiyat formulumuz,
$SehirFaktoru =2;
$Fiyat = $Fiyat * $SehirFaktoru;
echo ("$Sehir sehrinde 1 haftalik tatil tutari $Fiyat dolardir.");
$SehirFaktoru degiskenini programin basinda 1'e esitlemistim.Fiyat
icin hesaplama yapmadan once eee malum istanbul biraz pahalli
o yuzden
onu $SehirFaktoru = 2 olacak sekilde degistirdim.Artik degiskenimizin
degeri 2'dir.Hesaplama yapmak icinde formulumuz belli,Programin
basinda $Fiyat olarak verdigimiz degisken ile $SehirFaktoru
degiskeni carpiliyor.
Cikan sonuc echo komutu ile ekrana yazdiriliyor.
Program icerisinde ikinci kontrolumuz kullanicin sectigi
sehirin "Ankara" olup olmadigi,
elseif ($Sehir == "Ankara")
Program icerisinde ucuncu kontrolumuz kullanicin sectigi
sehirin "Izmir" olup olmadigi,
elseif ($Sehir == "Izmir")
Program icerisinde dorduncu asamada kullaniciya hicbir sehir
secmedigine iliskin uyari yazimiz ekrana yazdiriliyor,
echo ("Sehir Merkezi icin bir secim yapmadiniz.Geri donerek
yapabilirsiniz");
Simdi program ikinci kismima atliyor (Yani kullanici "4
yildizli otel secmis ise")
elseif ($Yildiz == "Dort")
Hemen fiyatlari kazik yapmak icin yaziyorum,
$YildizFaktoru=2;
Daha once "1" olan ve hicbir formulasyonda kullanmadigimiz
$YildizFaktoru artik gordugunuz gibi "2" oluyor.Bunu da
formulasayonda carptigimzi dusunurseniz fiyatlarimiz tabii
ki "4 yildizli otel icin kazik olcaktir.Istersen kal istesen
kalma arkadasim fiyatlar boyle :))
bundan sonrasi ilk bolumdeki aciklamlar ile ayni tekrar
yazmayacagim.
Ornek Dosyalar
http://www.turk-php.com/ornekler/tatil.html
http://www.turk-php.com/ornekler/tatil.php
Her turlu gorus ve oneriniz icin mail adresim :
serkan@turk-php.com