1 / 119

PHP ve MySQL

PHP ve MySQL. Web Yazılımı . Hakan BODUKCU Serkan SAVAŞ KATEM. PHP Tarihçesi.

selah
Télécharger la présentation

PHP ve MySQL

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PHP ve MySQL Web Yazılımı Hakan BODUKCU Serkan SAVAŞ KATEM

  2. PHP Tarihçesi Amacı internet üzerinde kişisel bir site yapmak olan RasmusLerdorf tarafından 1990’ yılların ortalarında geliştirilmeye başlandı. RasmusLerdorf, Perl dilinden uyarladığı bu yazılıma Personel HomePage (Kişisel Ana Sayfa) adını verdi. Bir süre sonra birçok geliştiricinin katkılarıyla Perl dilinden farklı kendine has yapısı olan bir dil haline geldi.Unix, Linux, Windows tabanlı tüm sistemlerde çalışabilmektedir.

  3. PHP Giriş Bilindiği gibi günümüz web sitelerinde; ziyaretçi defteri, abonelik formları, üyelik sistemleri, arama özellikleri, yorum özelliği gibi pek çok özellikler bulunmaktadır. Bu özellikler; site ziyaretçilerinin sadece pasif bir biçimde kendilerine sunulan içeriği okumakla yetinmeyip, çeşitli şekillerde site içeriğine katkıda bulunmalarını ve birbirleriyle de iletişim halinde olmalarını sağlamaktadır. Tüm bunları bir HTML tabanlı site ile yapamayız. HTML dili verileri yorumlamaz. Verileri görüntüler. Bahsettiğimiz işlemleri gerçekleştirmek için bir web programlama diline ihtiyaç duyarız. Çünkü yukarıda bahsedilen tüm bu işlemler için ziyaretçilerin girdikleri verilerin bir yerde depolanması, işlenmesi ve istendiğinde tekrar kullanılabilmesi gerekebilir.

  4. PHP Nasıl Çalışır? WEB SERVER URL HTML CLIENT (BROWSER) PHP Scripti PHP

  5. PHP Çalışma Şekli Web Serverlar htm ve html uzantılı dosyalarını sabit diskinde bulundurur ve ziyaretçiye sunar, ama PHP uzantılı dosyalar da ise PHP derleyicilerin çağrılması gerekir. PHP derleyiciler ise kendine ulaşan metin dosyayı içinde <? veya <?PHP Kelimelerine rastlayana kadar tüm HTML kodunu web sunucusuna aynen gönderir.<?PHP ve ?> arasındaki PHP kodlarını seçerek alır ve gereği neyse onu yapar .Bu ayıraçların içinde kalan kodlar, bizim yapılmasını istediğimiz işlemin komutlarıdır

  6. PHP ile neler yapılabilir? • Veritabanı bağlantılı uygulamalar • Dinamik olarak oluşan grafikler, Flash animasyonları • Ziyaretçiye, tarayıcıya veya tarihe göre özel durumlar veya içerikler • Anketler Tartışma forumları • Elektronik ticaret uygulamaları

  7. Web tabanlı e-posta uygulamaları • XML verilerini yorumlama ve oluşturma • İçerik yönetimi • Site içi veya dışı arama motorları

  8. WAMP SERVER KURULUMU Yapacağımız çalışmalar için kendi bilgisayarımızda bir sunucu ortamı gereklidir. Aksi takdirde PHP kodlarını çalıştıramayız. Öncelikle bilgisayarımızda bir web sunucu (Apache), bir veri tabanı sistemi (MySQL) bir de haliyle PHP kurmamız gerekiyor. Bu programları tek tek kurabileceğimiz gibi tek bir paket halinde de kurabiliyoruz. İşte bu paketin adı WAMP SERVER’ dır.

  9. ilk_belge.php <html> <head> <title>ilk deneme</title> </head> <body> <?phpecho “<p>Merhaba Dünya </p>”; ?> </body> </html>

  10. TEMEL SÖZDİZİMİ • PHP kodları <?php ?> etiketleri arasına yazılır. Bu etiketleri <scriptlanguage=“php”> </script> şeklinde de yazabiliriz. Fakat bu bazı düzenleyicilerde sorun çıkarabilmektedir. İki yazım şekli daha vardır. Bunlar: <? ?> ve <% %>.

  11. TEMEL SÖZDİZİMİ • PHP’ de her bir müstakil komut kümesi deyim olarak adlandırılır. Deyimler birbirinden ; (noktalı virgül ile) ayrılmaktadır. Örneğin; echo “Merhaba”;

  12. TEMEL SÖZDİZİMİ • Kodladığınız bir belgede, özellikle de belge uzunsa, belgenin daha sonra yapacağınız incelemelerde daha açıklayıcı olabilmesi için, açıklama satırları ekleyebilirsiniz. Tek satırlık bir açıklama için cümlenin başına // ya da # işareti konur. Çok satırlı açıklamalarda başına /* sonuna */ işaretini koyarız.

  13. Değişkenler • Değişkenler başlarına $ işareti konularak tanımlanırlar. Türkçe karakterler hariç harflerden , rakamlardan ya da _ işaretinden oluşabilirler. Rakamlar değişkenlerin içerisinde yer alabilir fakat başında yer alamazlar. Değişkenlere değer atanırken değişkenden sonra =(eşittir) işareti kullanılır. • Değişkenlerin DOĞRU kullanımına örnekler: $iki_1 = 12; $isim = “Mustafa”; $eni = 2.22; • Değişkenlerin YANLIŞ kullanımına örnekler: $1_iki = 12; $işi = “Öğretmen”; $veri% = 1000;

  14. Veri Tipleri • Tam Sayı (Integer) Veri Tipi : Pozitif ya da negatif tam sayılardır. • <?php • $bir=8; echo "<p>($bir)</p>"; • $iki=-8; echo "<p>($iki)</p>"; • $uc=88; echo "<p>($uc)</p>"; • ?>

  15. Veri Tipleri • Karakter Dizileri (String) Veri tipleri: Harfler, rakamlar ve işaretlerden oluşur. Çift tırnak ya da tek tırnak içinde kullanılabilirler. Fakat tırnak içerisinde başka bir değişken olacaksa mutlaka çift tırnak “ kullanılmalıdır. • <?php • $isim = “Hakan”; • $tam_isim=“$isim BODUKCU”; • echo (tam_isim); • ?>

  16. Nesne (Objects) Değişkenler • Bir sınıfa (class) ait değişkenlerdir. • <?php • Class kitap { • Function oku ( ) { • echo “web tasarım rehberi”; } • } • $bilgisayar=new kitap; • $bilgisayar->oku(); • ?>

  17. Dizi Değişkenler • Birçok değişkenin art arda kullanılmasıdır. • $dizi [indis]=deger; • <?php $ay[0] = “ocak”; $ay[1] = “şubat”; $ay[2] = “mart”; $ay[3] = “nisan”; ?>

  18. TİP DEĞİŞTİRMEK (settype()) • <?php $rakam = 333; Settype($rakam, ‘boolean’); echo ($rakam) ?> • <?php $rakam = 3.33; Settype($rakam, ‘integer’); echo ($rakam) ?>

  19. Değişken Değerlerinden Boşluk Kaldırma • trim (): Değişken değerlerindeki hem sağdaki hem soldaki boşlukları siler • ltrim (): Değişken değerlerindeki soldaki boşlukları siler • rtrim (): Değişken değerlerindeki sağdaki boşlukları siler.

  20. Süper Global Değişkenler $_POST: Post metodu ile gönderilen form gönderilerinde gelen değişkenin değerini almak için kullanılır. $_GET: Get metodu ile gönderilen form gönderilerinde gelen değişkenin değerini almak için kullanılır. $_COOKIE: Çerez kullanarak oturum açma işlemi için kullanılır. $_SESSION: Oturum açmak için kullanılır. $_REQUEST: $_POST, $_GET, $_COOKIE süper globallerinin değerini almak için kullanılır. $_FILES: Dosya yüklemek için kullanılır.

  21. Süper Global Değişkenler $_REQUEST: $_POST, $_GET, $_COOKIE süper globallerinin değerini almak için kullanılır. $_FILES: Dosya yüklemek için kullanılır. $_SERVER: Ip adresi, server ve tarayıcı türü gibi çevre değişkenlerini tutar. $_ENV:Temp dizini, dosya yolu gibi sistem değişkenlerini tutar. $_GLOBALS: Değişkenin adı ile tanımlanır. Örnek: $deger=1 $_GLOBALS[“veri”]

  22. SABİTLER Sabit tanımlamak ve sabiti değiştirmek için define () fonksiyonu kullanılır. <?php define (“alan”, 500); echo (alan); ?>

  23. SABİTLER PHP de kullanılan bazı sabitler FILE: Çalışan PHP dosyasının dosya yolu ile birlikte ismi LINE: Bu sabitin bulunduğu satırın numarası DIR: Dosyanın dahil olduğu dizin FUNCTION: Fonksiyon ismi CLASS: Sınıf ismi METHOD: Metod ismi NAMESPACE: Geçerli isim alanının ismi

  24. OPERATÖRLER Atama Operatörleri • İşlemci Örnek Anlamı • += $a += 5 $a = $a + 5 • -= $a -= 5 $a = $a - 5 • /= $a /=5 $a = $a / 5 • *= $a *= 5 $a = $a * 5 • %= $a %= 5 $a = $a % 5 • .= $a .= "metin“ $a = $a"metin"

  25. OPERATÖRLER Bir Arttırmak veya Azaltmak için • Değerleri sadece 1 arttırmak veya azaltmak için PHP, bir kolaylık sağlar: • $a++veya ++$a: $a'nın değerini 1 arttırır; • $a--veya --$a: $a'nın değerini 1 eksiltir.

  26. OPERATÖRLER Karşılaştırma Operatörleri Operatör Örnek Örnek $a=6 ise: == eşitse $a == 5 Yanlış/False != eşit değilse $a != 5 Doğru/True === aynı ise $a === 5 Yanlış/False > büyükse $a > 5 Doğru/True < küçükse $a < 5 Yanlış/False <= küçükse $a <= 5 Yanlış/False veya eşitse >= büyükse $a >= 5 Doğru/True veya eşitse

  27. OPERATÖRLER Mantıksal Operatörleri • <?php • $vize = 45; • $final = 65; • if ($vize >= 50 && $final >= 50) { • print ("Öğrenci geçti!"); • } • else { • print ("Öğrenci kaldı!"); • } • ?>

  28. OPERATÖRLER İşlem Önceliği • İşlem önceliği deyince.. Bütün programlama dilleri gibi PHP için de işlemlerin hangi sırada yapıldığı önem taşır. "5 + 4 * 2" işleminin sonucu, önce 5 ile 4'ün toplanması ve sonucun 2 ile çarpılması halinde başka, 4'ün 2 ile çarpılması ve sonucun 5 ile toplanması halinde başka olacaktır. Bu bakımdan, PHP'nin hangi işlemi önce yaptığı, hangi işlemi sonra yaptığını bilmemiz gerekir. PHP'deki işlemlerin yapılış sırası şöyledir:

  29. Aritmetiksel Fonksiyonlar En sık kullanılan aritmetiksel fonsiyonlar Pow() : Üstel fonksiyonlar Max() : Maksimum değer Min() : Minimum değer Sqrt() : Karekök Sin () : Sinüs Cos() : Kosinüs Pi() : Pi sayısı

  30. KONTROL YAPILARI If Deyimi Kullanımı İf (şart) { komut ; } else if (şart) { komut ;} else {komut} <?php $deger=1000; İf (deger==1000) { echo “Sonuç Doğru”; ?>

  31. If Deyimine Örnek • <?php • $sarki = "Güneş Doğacak"; • if ( $sarki == "Güneş Doğacak" ) { • echo ("Seçtiğiniz şarkının adı: Güneş Doğacak!"); • } • else if ($sarki == "Beklerim Ben") { • echo ("Seçtiğiniz şarkının adı: Beklerim Ben!"); • } • else { • echo ("Lütfen bir şarkı seçiniz!"); • } • ?>

  32. Switch Deyimi PHP'de program akışını yönlendirmekte kullandığımız bir diğer unsur, switch deyimidir. Adı anahtar anlamına gelen switch deyimi, verilen bir değişkenin değerinin sıraladığımız koşullardan hangisine uygun olduğunu sınar ve o koşula ilişkin komutları icra eder. PHP'nin yaptığı işi bitirdikten sonra switch deyiminin dışına çıkmasını sağlayan, break komutu vardır:

  33. DÖNGÜLER While Döngüsü İstenilen belli bir koşul sağlanana kadar işlemin tekrar edilmesini sağlamak için kullanılır. Kullanımı • while (koşul) { • Koşul doğru ise yapılacak işlere ilişkin komutlar • }

  34. DÖNGÜLER Do-While Döngüsü While döngüsünden farklı olarak kontrol işlemi döngünün sonunda gerçekleştirilmektedir. Yani tanımladığınız koşul ne olursa olsun döngü en az bir kez çalıştırılacak demektir. Kullanımı • do { • Koşul doğru ise yapılacak işlere ilişkin komutlar • } • while (koşul);

  35. DÖNGÜLER For Döngüsü PHP'de Web programlarımız, döngünün belirli bir sayıda olmasını ve mesela bu sayının bizim istediğimiz basamaklarda artmasını gerektiriyorsa, döngüyü for deyimiyle kurabiliriz. Ayrıca for deyimi sayaç gibi şartın yerine gelmesini sağlayacak arttırma veya eksiltme işlemlerini kendisi yapacağı için, sonsuz döngüye girme tehlikesi de hemen hemen yoktur. Kullanımı for ( değişken; koşul ; değişim değeri ) { komutlar }

  36. DÖNGÜLER Continue Continue deyimi döngü yapılarının içinde kullanılır. Continue kullanıldığında, döngünün istenilen kısmı atlanacak ve döngü devam edecektir.

  37. DÖNGÜLER Break Programımızın akışı, bazen döngünün durdurulmasını gerektirir. Örneğin, sayaç değişkenini ziyaretçinin vermesi gerektiği ve vermediği durumda, döngünün başlamaması yerinde olur. Programın gerektirdiği böyle bir sebeple döngüyü break komutuyla durduruz.

  38. FONKSİYONLAR Bir bilgisayar programının kalbi, fonksiyonlardır. Fonksiyonlar, bir kere tanımlanır ve bir çok kereler, ihtiyaç olduğu noktada hizmete çağrılır. Fonksiyonlar genellikle bir iş veya hesaplama yaparlar ve bunun sonucu olarak ortaya yeni bir değer çıkartırlar. Bu değere "fonksiyondan dönen değer" denir.

  39. FONKSİYONLAR Fonksiyon Tanımlama ve Çağırma Fonksiyonları function komutu ile tanımlıyoruz. function fonksiyonun _adi (argüman1, argüman2) { komutlar }

  40. FONKSİYONLAR <?php function slogan($metin) { print ($metin); } slogan (“ben PHP dilini çok sevdim”); ?>

  41. FONKSİYONLAR <?php function kod($sayi1, $sayi2) { if ($sayi1==$sayi2) print ("Doğru Kodlar"); else print (“Hatalı Kodlar"); } kod (123, 124); ?>

  42. Geriye Değer Döndüren Fonksiyonlar • <?php • function topla ($sayi1, $sayi2) { $sonuc=$sayi1+$sayi2; return $sonuc; } • functioncikart ($sayi1, $sayi2) { $sonuc=$sayi1-$sayi2; return $sonuc; } • $sayi1=50; • $sayi2=30; • echo topla($sayi1, $sayi2)."<br/>"; //ÇIKTI 80 • echocikart($sayi1, $sayi2)."<br/>"; //ÇIKTI 20 olur. • ?>

  43. Geriye Değer Döndüren Fonksiyonlar Aşağıdaki örneğimizde de Topla fonksiyonunu ekrana yazdırırken üç yazdırma komutu kullandık. İlkinde her şey tamam. İkincisinde bir, üçüncüsünde ise hem bir hem de iki argüman eksik. Returnifadesi kullanıldığı için değer döndürülecek ve fonksiyonumuzu tanımlarken argümanlarımıza girdiğimiz değerler, varsayılan değerler olarak işleme konulacaktır.

  44. Statik Değişkenli Fonksiyonlar Bir fonksiyonda kullanılan bir değişkenin değeri işlem bittikten sonra ilk değerine döner. Her seferinde değişken değerinin başa dönmemesi için yapmamız gereken değişkenin başına staticifadesi eklemektir.

  45. Tarih-Zaman Fonksiyonları GETDATE() Fonksiyonu Bu fonksiyon programımıza tarih ve zaman bilgisi eklemek için kullanılır.

  46. GetDate() Anahtarları Seconds: Saniyeleri sayısal olarak Minutes: Dakikaları sayısal olarak Hours: Saatleri sayısal olarak Mday: Ayın günlerini sayısal olarak Wday: Haftanın günlerini sayısal olarak Mon:Ayları sayısal olarak Year:Yılları sayısal olarak Yday: Yılın günlerini sayısal olarak Weekday: Haftanın günlerini sayısal olarak Month: Ayları metin olarak gösterir.

  47. Date() Fonksiyonu Tarihi/ Saati biçimlendirmek için kullanılır. <?php printdate(“d-m-Y”); ?>

  48. Date() Fonksiyonu Parametreleri • a 12 saat esasına dayanan Anglo-Sakson sistemlerinde öğleden önce ("am") veya öğleden sonra ("pm") işaretinin verilmesini sağlar. • A Aynı işaretlerin büyük harfle yazılmasını sağlar. • d İki haneli gün sayısı, tek haneli günlerin önüne sıfır konur: "01" - "31" • D Üç haneli gün adı kısaltması: "Cum" • F Uzun ay adı: "Ocak" • h 12 saatlik sistemde saat: "01" - "12" • H 24 saatlik sistemde saat: "00" - "23"

  49. Date() Fonksiyonu Parametreleri • g 12 saatlik sistemde tek haneli saatlerin önüne sıfır konmadan saat: "1" - "12" • G 24 saatlik sistemde tek haneli saatlerin önüne sıfır konmadan saat: "0" - "23" • i Dakika: "00" - "59" • j Tek haneli sayıların önüne sıfır konmadan gün sayısı "1" - "31" • l (küçük L harfi) Uzun gün adı: "Cuma“ • L Artık yıl olup olmadığına ilişkin Boolean (doğru/yanlış) değişken. Artık yıl ise 1, değilse 0. • m Tek hanelilerin önüne sıfır konarak ay sayısı: "01" - "12" • n Tek hanelilerin önüne sıfır konmadan ay sayısı: "1" - "12"

  50. Date() Fonksiyonu Parametreleri • n Tek hanelilerin önüne sıfır konmadan ay sayısı: "1" - "12" • M Kısaltılmış ay adı: "Şub" • s Saniye: "00" - "59" • S İngilizce ('ncı anlamına) 2 karakter ek: "th", "nd" • t Belirtilen ayın gün sayısı; "28" - "31" • w Haftanın gün sayısı: "0" (Pazar veya Pazartesi) - "6" (Cumartesi veya Pazar) • Y Dört haneli yıl: "2000" • y İki haneli yıl "00" • z Yılın gün sayısı: "0" - "365"

More Related