Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
YayınlayanIlkbahar Altintop Değiştirilmiş 10 yıl önce
1
PHP ve MySQL Web Yazılımı Gülin ÜTEBAY Bilgisayar Mühendisi
2
PHP Giriş <html> <?php echo(“merhaba”); </html>
PHP, Hypertext Proprocesso (Hyper –metin ön işlemcisi) anlamına gelir. PHP ile her türlü işlevselliğe ait program yazılabilir. PHP web sunucuya bir takım işler yaptırmak için kullanılan program yazma dillidir. PHP kodları, HTML sayfaları arasına HTML etiketleri arasında kendi özel ayıraçları arasına yazılır. <html> <?php echo(“merhaba”); ?> </html> Ekrana merhaba şeklinde yazı gelir
3
PHP Nasıl Çalışır? WEB SERVER URL CLIENT PHP (BROWSER) HTML Scripti
1)Browser tarafından kullanıcı servera istediği sayfanını url yazararak yada link ini tıklayarak belirtir.Server bu talebi alınca x.php dosyasını php işlemcisince işlemmesi gerektiğini bildiği için bu dosyayı bulur ve php işlemcisine gönderir.php işlemcisi bu dosyayı işler ve çıktuıyı HTML haline getirir.Bu HTML dosyası istemciye geri gönderilerek talep ettiği web sayfasının incelenmesi sağlanır.
4
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önderiri. <?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 PHP kullanmamızın sebebi de bu işlemleri HTML ile yapamamamızdır. HTML ile bir web sunucusundaki bir veri tabanı dosyasını açıp okuyamayız, düz yazı dosyalarını da okuyamayız ve bu disklere dosya yazamayız. PHP de “<?PHP ve ?>” ayıraçları içindeki kodları icra eder ziyaretçi bu kodların içini göremez ve okuyamaz. PHP bir CGI programlama dilidir. Bu dille web sunucusu ile web ziyaretçisi arasında buluşma noktası olan CGI ‘ da bilgi alış verişiş yapar. Sunucuda bulunan başka programlar çalıştırılabilir ve web sayfamıza HTML sınırlamasının dışında hareket ve ziyaretçi arasında bilgi alışverişi sağlar.
5
PHP Özelikleri PHP Kodları HTML tagları içine gömülür.
PHP scriptleri HTML formları ile kendine sunulan veriyi işleyebilir PHP scriptleri veritabanıyla haberleşebilir. Karışık matematiksel işlemleri yapabilir.
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
Neden HTML değil PHP? HTML ile bir web sunucusundaki bir veri tabanı dosyasını açıp okuyamayız Düz yazı dosyalarını da okuyamayız Bu disklere dosya yazamayız “<?PHP ve ?>” ayıraçları arasındaki Kaynak kodlarını PHP de ziyaretçi görüntüleyemez.
9
Neden PHP? Web tabanlı programlama için tasarlanmış
Yazım kurallarının basit olması Kaynak kodu açık ve ücretsiz Sunucu hafızasını az kullanır Birçok işletim sistemi üzerinde çalışabilir: Linux Windows MacOS X Solaris BSD Unixler Netware
10
Neden PHP ? Birçok web sunucusu yazılımına entegre çalışabilir:
Apache Microsoft IIS Microsoft PWS Netscape iPlanet Xitami Yaygın veritabanı desteği: Oracle MySQL PostgreSQL Interbase MS-SQL Sybase IBM DB2 Informix Birçok eklenti ve hazır kütüphanelerinin olması
11
PHP yazım Kuralları Php komutları ;(noktalı virgül) işaretiyle sonlandırılır. Echo,Print ve Printf : Ekrana bilgi yazdırma komutudur. // : Tek satırlık açıklamalar için kullanılır /* ve */ : Birden çok açıklama satırlarında kullanılır. Bu komutlar arasına yazılan tüm PHP komutlarını dikkate almaz. •\n Yeni Satır geçiş yapar (New Line) •\r Satır Başı (Return) •\t Sekme (Tab) karakteri <? Echo(“merhaba \“PHP\ “dünyası”); ?> ekrana merhaba “PHP” dünyası şeklinde yazılır.
12
Değişken Türleri PHP’ de değişkenler önüne $ simgesi konularak tanımlanır. <? $adi; $soyadi; ?> PHP de değişkenlerin tipleri (nümerik,karakter, tarih,...) ilk değerleri atandıktan sonra belirlenir $adi = "Yahya"; // String $tel = ; // Integer Değişkenlere değer atamak için "=" işareti kullanılır $degisken1 = "değer"; $degisken2 = 5; print $degisken1; // Ekrana "değer" ifadesi yazılacaktır. print $degisken2; // Ekrana "5" ifadesi yazılacaktır.
13
Bir değişken direkt olarak değer atanarak tanımlanabilir. <?
<? $tanimla1 = "Ankara"; $tanimla2 = 276; $tanimla3 = 45.23; ?> Bir değişkenin değerini diğer bir değişkene atamak için "=" den sonra ikinci değişken yazılır. <? $adi = "Ali"; $isim = $adi;. print $isim; // Ekrana "Ali" yazılacaktır. // $adi değişkenine "Ali" değeri atanıyor. // $isim değişkenine $adi değişkeninin değeri atanıyor
14
$isim = &$adi; $adi = "Murat"; print $isim;
PHP’de diğer programlama dillerinden farklı olarak bir değişkenin tuttuğu değer diğer bir değişken tarafından gösterilebilir. <? $adi = "Muhittin"; $isim = "adi"; print $$isim; ?> <? $adi = "Ali";. $isim = &$adi; $adi = "Murat"; print $isim; // Ekrana $adi değişkeninin değeri yazılacaktır. // $adi değişkenine "Ali" değeri atanıyor // "&" işareti her seferinde $isim değişkeninin değerinin değişmesinin sağlıyor. // $adi değişkenine "Murat" değeri atanıyor. // Ekrana "Murat" yazılacaktır.
15
Sabitler Sabitler program boyunca değişmeyen değerlerdir. Bir sabit tanımlandıktan sonra atanana ilk değerini korur, yeni bir değer ataması yapılamaz. Sabitler define() komutu ile tanımlanırlar. Kullanılış biçimi: define (sabit_adi,deger) <? define (pi_sayisi , 3.14); define (dis_acilar, 360); $aci1 = 120; $aci2 = 80; $aci3 = dis_acilar - ($aci1 + $aci2); print ($aci3); // 160 değerini döndürür. ?> Sabitlerin önünde $ bulunmaz
16
$a = defined ("pi_sayisi") ?>
defined() : Bir sabitin daha önce tanımlanıp tanımlanmadığına göre true / false sonuç döndürür. Kullanılış biçimi: defined ("sabit_adi") <? $a = defined ("pi_sayisi") ?> // "pi_sayisi" adlı bir sabit olmadığı için // false değer döndürür.
17
İki String’i Birleştirme (Concotenation)
İki string ifadeyi birleştirmek için "." kullanılır. Örnek : <? $a = "Afyon “.”Kocatepe " . "Üniversitesi " . " Fen " .”Edebiyat”. " Fakültesi" ; $b = "PHP " . "Programlama" . "Dersi "; $c = $a . " ve " $b; print (c$); // "Ankara Kocatepe Üniversitesi Fen Edebiyat Fakültesi ve PHP Programlama Dersi" // sonucu çıkar. ?>
18
PHP’ de Kontrol Yapıları
if Kontrol Yapısı if ( koşullar ) { Komutlar } elseif (diğer koşullar) { else { PHP’ de Progress ve diğer programlama dillerinde olduğu gibi döngüler içermektedir Bir koşulun olması veya olmaması durumunda yapılacak işlemleri ayırmak için kullanılır.
19
Örnek : İki sayıdan büyük olanı bulan program.
<? $sayi1 = 5; $sayi2 = 15; if ($sayi1 > $sayi2) { print ("İlk sayı büyük $sayi1"); } else if ($sayi1 < $sayi2) { print ("İkinci sayı büyük $sayi2"); else print ("Sayılar eşit $sayi1,$sayi2"); ?>
20
while Döngüsü while (koşul) { Şart sağlanıyorsa yapılacaklar }
Örnek : 1'den 10'a kadar olan sayıların toplamını bulan program. <? $sayac = 0; while ($sayac <= 10) { $sayac ++; $toplam = $toplam + $sayac; print ($toplam); ?> Bir şart sağlandığı sürece bir yordamın icra edilmesidir. Programın icrası sırasında while bloğuna gelindiğinde koşul kontrol edilir ve koşul sağlanıyorsa while döngüsü içerisine girilir
21
do – while Döngüsü do { Şart sağlanıyorsa yapılacaklar }
while (koşul); Örnek : 1'den başlayarak, sonuç 100 den büyük oluncaya kadar toplanması gereken rakamların sayısını bulan program. <? $sayac = 0; $toplam = 0; do { $sayac = $sayac + 1; $toplam = $toplam + $sayac; while ($toplam < = 100); print ("Kullanılan rakam sayısı : $sayac") ?> While döngüsünden farklı olarak programın icrası sırasında do - while bloğuna gelindiğinde şart kontrol edilmez. do - while bloğuna direkt girilir ve koşul ikinci döngünün başlayacağı sırada kontrol edilir
22
for Döngüsü for ( $degisken = ilk_deger ; kosul ; adim ) {
for ( $degisken = ilk_deger ; kosul ; adim ) { Koşul doğru ise yapılacak işlere ilişkin komutlar } Örnek : 1'den 100'e kadar çift sayıların toplamını bulan program. <? for ( $say = 0; $say <= 100 ; 2 ) { $cift = $cift + $say; print ($cift); ?> Bir yordamın istenilen sayı kadar çalıştırılmasını sağlar. for bloğunun herhangi bir yerinde çıkmak için break komutu kullanılır. for bloğunun herhangi bir yerinde bir sonraki tekrara geçmek için continue komutu kullanılır.
23
switch Kontrol Yapısı switch ( değişken ) { case KOŞUL-1 ; Komutlar
break; case KOŞUL-2 ; case KOŞUL-3 ; default: } Progress’ deki Case - EndCase bloğuna karşılık gelir ve değişkenin değerinin uygun olduğu duruma göre yapılacak işlerin belirlenmesini sağlar.
24
<? $gun = 1; switch ( $gun ) { case $gun = = 1;
Örnek : Verilen sayıya göre gün adını bulan program. <? $gun = 1; switch ( $gun ) { case $gun = = 1; print ("Pazartesi"); break; case $gun = = 2; print ("Salı"); case $gun = = 3; print ("Çarşamba"); default : print ("Yanlış seçim"); } ?>
25
Fonksiyonlar print () : Ekrana bir değişkenin değerini veya bir metni yazdırmayı sağlar. print ("PHP Programlama"); // Ekrana "PHP Programlama" yazdırır. $gun = "Perşembe"; print ($gun); //Ekrana "Perşembe" yazdırır. PHP’ de fonksiyonlar diğer programlama dillerinde olduğu gibi iki türdedir. Birinci olarak PHP içerisindeki hazır fonksiyonlar ve ikinci olarak programcı tarafından oluşturulan fonksiyonlardır. İlk olarak PHP’ ye ait olan fonksiyonların neler olduğunu ve nasıl kullanıldıklarını göreceğiz.
26
gettype() : Bir değişkenin ne tür bir veri içerdiğini döndürür
$ders_adi = "PHP Programlama"; print gettype($adi); // Ekrana "string" yazılacaktır settype() : Bir değişkenin veri türünü değiştirmek için kullanılır $sonuc = "75" ; // Karakter türdeki $sonuc değişkenine "75" değeri atanıyor. $basari = ( integer ) $sonuc // $sonuc değişkeninin değeri integer a dönüştürülüyor Burada dikkat edilmesi gereken nokta veri türü değiştirilecek değişkenin değerinin yeni türle uyumlu olması gerekir. Örneğin bir metin değeri içeren değişken sayısal bir türe dönüştürülemez.
27
isset() : Bir değişkene değer atanıp atanmadığı sonucunu döndürür
Örnek : if (isset($sifre)) { print("Şifre girildi"); } unset() : Varolan bir değişkeni yok eder unset ($soyadi); // $soyadi değişkeni yok edilir. unset() : Varolan bir değişkeni yok eder. Eğer ki bir değişken program sonlandırılıncaya dek bir daha işe yaramayacaksa bellekte yer kaplamaması için yok edilmesi uygundur.
28
empty() : isset() fonksiyonunun tersine eğer değişkene değer atanmamışsa True sonuç döndürür.
Örnek : $adi = "". print (empty($adi)); // True değerini döndürür. $adi = "Mehmet" print (empty($adi)); // False değerini döndürür.
29
$sonuc = is_string ($sayi); // False sonuç döndürür. $metin = "Ankara"
is_string(),is_integer(), is_double(): Değişkenin değerinin aradıkları tür olup olmadığına göre True/False değer döndürür. Örnek : $sayi = 10; $sonuc = is_string ($sayi); // False sonuç döndürür. $metin = "Ankara" $sonuc = is_string ($metin); // True sonuç döndürür. Daha önceden de belirtildiği gibi kendi fonksiyonlarımızı da PHP içerisinde kullanabiliriz. Fakat kendi fonksiyonlarımızı kullanabilmek için öncelikle tanımlamak gerekir. Bir fonksiyon dışardan aldığı değerlere karşılık bir değer döndürme mantığıyla çalışır. Fonksiyonun dışardan aldığı değerlere argüman adı verilir. Bir fonksiyon birden fazla argüman kullanabilir. Fakat geriye tek değer döndürür.
30
String Fonksiyonları substr() : Bir metnin içerisinden istenilen bir kısmının alınmasını sağlar Örnek : <? $metin = "Afyon Kocatepe Üniversitesi Fen Edebiyat Fakültesi"; $fak_adi = substr($metin, 20, 13 ); print ("Fakülte :".$fak_adi); ?>
31
trim() : Metnin başındaki ve sonundaki boşlukları siler.
Örnek : $sehir = " Ankara"; trim ($sehir); print ($sehir); // Sağ ve sol boşlukları kırparak "Ankara" yazılacaktır. chr() : ASCII kodu verilen karakteri döndürür. print (chr(65)); // "A" değerini döndürür
32
ord(): Verilen karakterin ASCII kodunu döndürür.
Örnek : print (ord("A")) ; // 65 değerini döndürür. strlen() : Verilen metnin uzunluğunu tamsayı cinsinden döndürür. print (strlen("Ankara")); //6 değerini döndürür printf(),sprintf(): Metin biçimlendirme için kullanılır.
33
number_format():Sayı basamaklarını gruplamak için kullanılır.
Kullanılış biçimi: number_format($degisken, ondalik_hane, ondalik_ayirac , binler_ayirac) ); //chr(44)=virgül
34
Tarih ve Saat Fonksiyonları
getdate() : PHP’ nin kurulu olduğu sunucudan tarih ve saat bilgisini alır ve vereceğiniz bir isimdeki dizi-değişkende kaydeder. $saat_tarih = getdate() print date("d/m/Y"); Bu komut şu tarihi verir 12/04/2004 Bu durumda, $saat_tarih dizi değişkeninde sırasıyla şu bilgiler yer alır:1. Saniye 2. Dakika3. Saat4. Ayın gün sayısı (1-31) 5. Haftanın gün sayısı (1-7) 6. Ay (1-12) 7. Yıl 8. Yılın kaçıncı günü 9. Günün adı 10. Ayın adı
35
Dosya Fonksiyonları : include() : Bir dosyayı başka bir dosya içerisinden çağırmak için kullanılır. Örnek: include(ekle.php); Fonksiyon tanımlama : function fonksiyonun_adı (argüman1, argüman2, ... argümanN) { fonksiyon içinde yapılacak işlemler } Fonksiyon içerisinden geriye değer döndürmek için return komutu kullanılır. Aynı komutları tekrar tekrar kullanmamıza gerek yok yada bir veri tabanına bağlanırken her sayfamıza şifrelerimizi Girmemiz gerekmiyor onun yerine include komutuyla bu dosya yı çağırıp kullanabiliriz hem de mesela server mızdakı şifremizi değiştirmek zorunda kaldık diğer türlü bütün bağlantı kurduğumuz sayfaları tek tek açıp şifremizi değiştirmek yerine tek bir dosyadan değişikliğimizi yapıp işlemimizi tamamlayabiliriz
36
function hesapla ($sayi1,$sayi2)
{ if ($sayi1 > $sayi2) return $sayi1; } if ($sayi2 > $sayi1) return $sayi2;
37
Global ve Static Değişkenler
Bir fonksiyon sadece içerisinde tanımlanan değişkenlerle çalışabilir. Fonksiyon geriye döndürdükten sonra içinde tanımlanmış değişkenler ve bunların değerleri yok olurlar. Örnek : <? global $a; $a = 20; hesapla(); print ($a); // sonucu yazılır function hesapla() { $a = $a * 1000; //$a global olmasaydı buradan değerine ulaşamazdık return $a; } ?> Fakat programın herhangi bir yerinde tanımlanmış bir değişkenin değerine bir fonksiyon içerisinden ulaşabilmek için, değişkenin o fonksiyon içerisinde, global tanımlanması gerekir
38
PHP ile Veritabanı Etkileşimleri
GET : Client(İstemci) tarafından gönderilen bilgiler browser adres satırında görüntülenir. <html> <FORM ACTION="formyolla.php" METHOD="GET"> Adınız : <input type= "text" name="ad" ></br> Soyadınız : <input type= "text" name="soyad"></br> <input type="Submit" value="Gönder"> </FORM> </html> ....../formyolla.php?ad="Muhittin"&soyad="Altınkaya"&.... POST : Client(İstemci) tarafından gönderilen bilgiler browser adres satırında görüntülenmeden yollanır.
39
PHP Kullanarak MYSQL bağlanmak
Mysql_connect(“localhost”,”root”,”sifre”); Mysql_select_db(“baslangicdb”); Bir php dosyasında mysql veri tabanı kullanmak istendiğinde mutlaka veri tabanı sunucusuna bağlanmalı ve bir veri tabanı seçilmelidir Mysql_connect komutuyla veritabanı sunucusuna IP,kullanıcıadı ve şifre verilerek bağlantı sağlanır daha sonrada Mysql_select_db komutuyla da dosyadaki tüm mysql işlemlerinde kullanılacak olan veritabanı tercihi belirtilmiş olur.php dosyalarında tüm veri tabanı işlemlerinde önce veri tabanı sunucusuyla bağlantı kurulmalıdır.
40
MySql’e SQL sorgusu göndermek
mysql_query() $isimler = mysql_query(“select * from ögrenciler”); mysql_result() $ad=mysql_result($isimler,$i,”ad”); mysql_numrows() $sayi=mysql_numrows($isimler) mysql_fetch_array() $gelen = mysql_fetch_array($result) Php de Mysql sorgu göndermek için mysql_query() komutu kullanılır parantezler arasına çitf tırnak işareti kullanılarak komutlar gönderilir ve php değişkenine aktarılır Bu örnekte öğrenciler adındaki tablodan tüm kayıtların çekilmesi sql ile istenmiştir Mysql sorgulanmasında geriye dönen sonuç tablosundaki veriler mysql_result() alınır mysql_numrows sonuç tablosundaki satır sayısını öğrenmek için kullanılır mysql_fetch_array sonuçları dizi değişkeni olarak alır
41
Mysql Kayıt Eklemek $result= mysql_query($sql); {
$sql = "insert into ozluk (NOM, BOLUM, SINIF, ADI, SOYADI) values ('$NOM', '$BOLUM', '$SINIF', '$ADI', '$SOYADI',)"; } $result= mysql_query($sql);
42
Mysql Kayıt Silmek ve Update
$sql="delete from ozluk where NOM='$NOM‘ “; $result= mysql_query($sql); $sql = "update ozluk set BOLUM = $BOLUM', SINIF = '$SINIF', ADI = '$ADI', where NOM = $NOM";
45
PHP Örnek siteler http:// www.php.org.tr http:// www.php.net
hazirkod.kom/
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.