Php Dersleri: Kodlamaya Giriş

Php dersleri temalı yazı gurubumuzun üçüncü serüveni olan “php kodlamaya giriş” namı diğer “merhaba dünya” yazımıza hoş geldiniz.


Hatırlarsanız bundan önceki derste, local bilgisayarda php çalıştırmayı anlatmıştık, ondan bir önce de php nedir demiş, temellerini öğrenmiştik.


Önceki konularda şimdiye kadar kod görmediniz ama gün bugün. Son parti, serinin üçüncü yazısında kod göreceğiniz an gelip çattı! (zı dım dım dı dım!) Biraz gırgır biraz ciddiyet temasıyla yola çıkan teknozort, php ile hello world yazısını iftiharla takdim eder…

Php (Personal Home Page) gömme bir dildir demiştik daha önce. Nasıl yapıyorduk bu gömme işlemini? Html kodlarının arasında dilediğimiz yerde <?php etiketi açarak ve php kodlamamız bitince ?> etiketi ile kapatarak gömüyorduk. Tabi bu gömme işlemini yapabilmek için dosya uzantımızın .php olmasına dikkat ediyorduk. Yani index.html değil de, index.php kullanacağız bundan böyle.


Bu yazıda, sizlere basit bir site tasarımı ile ufak tefek dinamiklik örnekleri göstereceğiz. Bu sayede, php nin nasıl yazıldığına dair bir fikir sahibi olacak ve temelini öğreneceksiniz. Yazıda bir veya iki tane değişken kullanacağız şimdiden söyleyelim ancak değişkenlerin tanımına değinmeyeceğiz. Değişkenler çünkü her yazılımın temeli olduğu için ona daha sonra geniş bir şekilde ayrı bir ders ile değineceğiz. Büyük ihtimalle de bundan sonraki ilk derste değişkenleri anlatırız. Sabırla bekleyiniz.

Örnek site kodumuzu verelim: (index.php)

 
Aşağıdaki örnek site kodları tamamen html olarak verilmiştir. Yani henüz içerisinde hiç php kodu yok. Bunu böyle vermemizin sebebi daha sonradan değişimleri tek tek işleyip yazının en sonunda toplu halde yeni kodu verme düşüncemiz. Bakalım başarırız herhalde her şeyi tekrardan toparlamayı.

Şimdi yukarıda gördüğünüz kod anlayacağınız gibi tamamen html. İçerisinde hiçbir php kodlama yapılmamış saf bir kod ancak index.php dosyası olduğunu hatırlayalım. Ne oluyor peki bu index.html yerine index.php olunca? Efendim html açısından bakarsak hiçbir şey değişmiyor. Yani hiç php kodlama yapmayacak olsanız dahi html bir tasarımı index.php şeklinde servis edebilirsiniz. Velhasıl kelam, php tarafından baktığımızda olan şey şu: dosya içerisinde artık php etiketi açabiliyor, kodlamasını yapabiliyoruz. Şayet index.html olsaydı bu dosya ve <?php şeklinde etiket açmaya çalışsaydık hiçbir şey değişmezdi yani kodlar çalışmazdı düz yazı şeklinde görürdük yazdığımız kodarı.


Altını çizelim: Bazı sitelerde bağlantı uzantısında xxx.html şeklinde uzantılar görmenize rağmen içerisinde php kodlarının çalıştığına şahit oluyorsunuzdur o biraz kafanızı kurcalayabilir. Bu sahte bir uzantıdır efendim kanmayınız. Sitenin adres çubuğunda yazan bağlantı şu diyelim örnek olarak:


http://www.teknozort.com/merhaba-biz-teknopatiz.html


Ve bu sayfaya girdiğinizde dinamik komutlar yakalıyorsunuz diyelim yine. Atıyorum tarihi gösteren bir kısım, her girdiğinizde 1 artan ziyaretçi sayacı. Sürekli değişen rastgele yazılar eklentisi, yorum yapma alanı ve benzeri şeyler düşünün. Yukarıdaki adresin, .htaccess diye bir şey ile artalanda yönlendirildiği yer farklıdır. Yani şöyle yönlendirir o:


http://www.teknozort.com/yazigoster.php?konu=merhaba-biz-teknopatiz


Efendim konudan fazla uzaklaşmadan bu yukarıda anlatmaya çalıştığımız şeyin, sef link yapısı (search engine friendly) olduğunu belirtip devam edelim.


Ve dönelim bu yukarıda verdiğimiz html site kodu üzerinde yapacağımız php dinamiklik çalışmalarına…


Şimdi, html’in temellerini iyi biliyorsunuz diye varsayıyoruz. (Şayet bilmiyorsanız php’den önce onu öğrenmeniz şart) Sitenin bazı kısımlarını dinamik yapmaya çalışacağız php kodlama kullanarak. Nereler bunlar?

  1. Title etiketi
  2. Orta ID’si verdiğimiz div etiketinin içerik yazısı
  3. Footer ID’si verdiğimiz div etiketinin içerik yazısındaki tarih

1. Title Etiketini Dinamik Yapıyoruz

 
Sırayla ilerleyelim. Öncelikle title etiketini yani sitemizin başlığını html şeklinde direk yazmak yerine, php kullanarak dinamik bir şekilde yazdıralım. Title etiketi içerisine “Teknozort Otomotiv” yerine yazmanız gereken kod şu:
 
<?php echo “Teknozort Otomotiv”; ?>
 
Efendim şimdi izninizle bu kodu inceleyelim. <?php etiketi ile html’yi php den ayıran başlangıcı yaptık. Yani php kodlamaya başlıyoruz diye belirttik. Daha sonra php’nin çekirdek komutlarından bir tanesi olan echo ile yazıyı ekrana bastırdık ve yine ?> etiketi ile php kodlamayı tamamladık diye bas bas bağırdık.
 
Yine şimdi, bu yukarıdaki kodda dikkat etmeniz 2 kısım mevcut.
 
Birincisi, string yani metin değerleri çift tırnak veya tek tırnak arasında yazmamız gerektiği. Yani neresi orası: “Teknozort Otomotiv” kısmı. Nedir bu? Öylesine bir yazı. Yani php bu yazının ne olduğunu bilmez tanımaz, o nedenle tırnak içerisinde yazıp, bak kardeşim, bu bir yazı sadece ona göre hareket et diyoruz kısaca. Detayı var, inmiyorum şuan bunu bilmeniz yeterli.
 
İkincisi, en sondaki ?> php kapanış etiketinden önceki noktalı virgüle dikkat ettiniz mi? O ne demek biliyor musunuz dostlar? Satır sonu demek. Yani php de, bir satırı tamamladığınızı bildirmek için sonuna mutlaka ; koyuyorsunuz. Koymazsanız olmaz. Bazı durumlarda olur. Örneğin ) kapatma parantezinden sonra koymuyorsunuz çünkü bu ve bunun gibi bir kaç durumda daha satır devam ediyor aslında. Devam eden satırlarda kullanmanız gerekmiyor. He kullansanız da bir şey olmuyor yani çoğu zaman hata almazsınız denemekten korkmayın.
 
Bunu daha detaylı anlatamıyoruz şuan deneyerek gözlemlemeniz en doğrusu. Sonu parantez ile kapanan kısımlarda ve parantez içerisinde kaldığınız her bölümde kullanmasanız da olur. Yani parantez içerisindeyken bıraktığınız satırlar yazı olarak sayıldığından sonuna noktalı virgül gerekmiyor.
 

2. Orta ID’li Div İçeriğini Dinamik Yapıyoruz

 
Efendim yukarıdaki gibi açıklama yapmadan bu kez işlemi bir değişken kullanarak yapacağız. Dediğimiz gibi değişkenleri daha sonra çok çok detaylı olarak anlatacağız şimdilik dikkate almayın, yalnızca kod kullanımı hakkında bilginiz olsun. Yukarıda, tek satıra sığdırmıştık php kodlarını, bu kez satırları arttıralım, mantığı kapmanız için.
 
Resimde yer alan “Merhaba, web sayfamıza hoş geldiniz!” yerine şu geliyor:
 
<?php
$degisken = “Merhaba, web sayfamıza hoş geldiniz!”;
echo $degisken;
?>
 
Israr ediyoruz, değişkeni anlatmayacağız. Ne yaptık? Değişkene bir değer atadık (yine metin bir değer) ve bunu echo ile yazdırdık. Tek fark, değişkene atama yapmamız bu metni. Yani direk metni yazdırmak yerine değişkene sen şu değere eşit oluyorsun dedik ve o eşit olan değeri echo ettik.
 

3. Footer ID’li Div İçeriğindeki Tarihi Dinamik Yapıyoruz

 
Geldik son aşamaya, ondan sonra web sitemiz hazır olacak! Bu stepte öğreneceğimiz şey, php ile ayrı tırnaklar arasındaki metinleri bir araya getirip değişkene atama olacak. Bunun içinde . (nokta) operatörünü kullanacağız. Operatörleri de anlatmıyoruz onları da daha sonra geniş bir şekilde işleyeceğiz. Operatörler şunlar örneğin: nokta, &, ||, == gibi gibi şeyler, hepsini sonra anlatacağız.
 
Resimde yer alan “Bugünün tarihi 11/01/2014 olarak belirlenmiştir!” yerine şu:
 
<?php
$degisken = “Bugünün tarihi “.date(“d/m/Y”).” olarak belirlenmiştir!”;
echo $degisken;
?>
 
Efendim gördüğünüz gibi farklı tırnaklar arasındaki değerleri nokta ile birleştirdik ve burada php nin yine çekirdek komutlarından olan date (tarih) komutunu kullandık. Bu komutun içerisindeki d, m ve Y kısımları ise komutun aldığı sabit değerler olup her birisi farklı bir şeye karşılık gelmekte. Anlayacağınız üzere d gün, m ay ve büyük y yıl anlamına geliyor. Şayet Y değilde y yaparsak 2014 yerine 14 şeklinde çıktı alırız. Bunlar komutun özelliği hep bizim ayarladığımız bir şey değil. Date bu şekilde kullanınca tarih bugünü geri döndürür şayet bir virgül koyup 1234123413 şeklinde unix tarih değeri verirsek yine o formatta verilen tarihi döndürür. Neyse daha detaya girmeyelim kafanız karışmasın, komutların kullanımını zamanla öğrenirsiniz merak etmeyin.  Zaten phpDesigner kullanıyorsanız açıklamaları hepsinin yazıyor siz kodlarken. Yazmayan yerde ise php.net en büyük yardımcınız unutmayın. Mesela giriyorsunuz Google’a, yazıyorsunuz php date diye, çıkıyor karşınıza date komutunu nasıl kullanabileceğiniz üzerine her şey.
 
Evet efendim, artık sabit html sayfamız dinamik bir yapıya büründü yani kodlar kullanıcıya işlenip gösteriliyor. Bu kodlar üzerinde değişiklik yapabilir, kurcalayabilir ve farklı şeyler deneyebilirsiniz. Anlamanıza ve öğrenmenize yardımı olur, açın kurcalayın biraz.
 
Son olarak bitmiş haldeki kodumuzu verelim ve konuyu tamamlayalım. Sonraki derste, operatörler ve değişkenler konusunda bir şeyler yazacağız. İyi kodlamalar…
 

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir