internet programming ii - muratok network · elbistan meslek yüksek okulu 2016 –2017 bahar...

29
Elbistan Meslek Yüksek Okulu 2016 2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

Upload: others

Post on 17-Aug-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

Elbistan Meslek Yüksek Okulu2016 – 2017 Bahar Yarıyılı

Internet Programming II

Öğr. Gör. Murat KEÇECĠOĞLU

Page 2: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya İşlemleri

Form yolu ile kullanıcıdan alınan bilgilerin veri tabanı yerine dosyalarda saklanabilir.

Bu dosyaların içeriğinin yeniden okunması sağlanabilir.

Php kodlarına dosya eklemek için include() fonksiyonu kullanılır. Dosya kodun en başına eklenebileceği gibi istenilen yerde de dosya çağırılabilir.

2

Page 3: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya İşlemleri

Dosya işlemleri yapılacak ise .htaccess adıyla aşağıdaki kod dosyaların bulunduğu yere kayıt edilmelidir. (.htaccess dosyası windows ta tanımsızdır.)

3

Page 4: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya İşlemleri

İnclude edilen dosyanın içeriği düz bir metin olabileceği gibi, html veya php kodları içeren dosyalarda olabilir.

Güvenlik dolayısıyla farklı uzantılara sahip dosyaları kabul etmek yerine genellikle .inc uzantısı ile klasörlere kayıt edilir.

İnc uzantılı dosya düz metin içeriyorsa dosya içeriği sayfaya doğrudan yazdırılacaktır.

4

Page 5: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya İşlemleri

Örn: “Ben buraya ait değilim çağırdılar geldim” içeriğine sahip ve dosya uzantısı txt yerine .t uzantısı ile yapalım.

5

Page 6: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya İşlemleri

Örn 2: Düz bir metin dosyası yerine .php uzantılı dosya çağrılsa idi sonuc aşağıdaki gibi olacaktı.

6

Page 7: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya İşlemleri - Kontrol

Dosyanın var olup olmadığını kontrol etmek için file_exists() fonksiyonu kullanılır.

7

Page 8: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya ve Dizin Kontrolü

Kontrol edilenin dosya yada dizin mi olup olmadığı is_file() ve is_dir() fonksiyonları kullanılır.

8

Page 9: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Özelliklerini Öğrenmek

Bir dosyanın okuma ve yazma izinleri ile, boyutu, son erişim ve değiştirme tarihleri öğrenilebilir. (örneklere bakalım).

9

İs_readable() : Dosya okunabilir

ise true sonucu dönecektir.

Page 10: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Özelliklerini Öğrenmek

Bir dosyanın okuma ve yazma izinleri ile, boyutu, son erişim ve değiştirme tarihleri öğrenilebilir. (örneklere bakalım).

10

filesize() : Dosya dosya boyutu

Byte cinsinden dönecektir.

Page 11: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Özelliklerini Öğrenmek

Bir dosyanın okuma ve yazma izinleri ile, boyutu, son erişim ve değiştirme tarihleri öğrenilebilir. (örneklere bakalım).

11

İs_writeable() : Yazma izni

Yazılabilir ise true dönecektir.

Page 12: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Özelliklerini Öğrenmek

Bir dosyanın okuma ve yazma izinleri ile, boyutu, son erişim ve değiştirme tarihleri öğrenilebilir. (örneklere bakalım).

12

filesize() : Dosya dosya boyutu

Byte cinsinden dönecektir.

Page 13: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Özelliklerini Öğrenmek

Bir dosyanın okuma ve yazma izinleri ile, boyutu, son erişim ve değiştirme tarihleri öğrenilebilir. (örneklere bakalım).

13

filemtime() : Son erişim

Tarih ve saat sonucu dönecektir.

Page 14: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Özelliklerini Öğrenmek

Bir dosyanın okuma ve yazma izinleri ile, boyutu, son erişim ve değiştirme tarihleri öğrenilebilir. (örneklere bakalım).

14

Kodlar aynı dosya tarih ve zamanı farklı…

NEDEN ?

Page 15: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Yaratmak ve Silmek

PHP ile yeni dosya oluşturmak için touch() ve unlink() ise silmek için kullanılır.

15

Page 16: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Yaratmak ve Silmek

Var olan dosya tekrar oluşturulmak istendiğinde dosya oluşmayacak ve aşağıdaki görüntü gelecektir.

16

Page 17: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Yaratmak ve Silmek

00deneme.txt’nin erişim ve değişiklik zamanını değiştirmek;

17

Page 18: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Yaratmak ve Silmek

Unlink() fonksiyonu dosya ismini parametre alarak siler.

18

Page 19: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Açma

Çeşitli amaçlar için kullanılan dosyaların önce açılması ve daha sonra kullanılması gerekir. Dosya fopen() ile açılır.

Syntax: fopen(Dosya ismi, açma_türü)

Dosya açılmadan önce klasör ve dosyaya erişim izinlerini bilmeniz gerekir.

Örnek : $dosya=(“yazi.t”,r)

Bu örnekte “yazi.t” dosyası okuma modunda açılmaktadır.

19

Page 20: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Açma Türleri (Parametreleri)

20

Parametre Açıklama

r Dosya okuma modunda açılır. İmleç dosya başına konumlanır.

r+ Dosya hem okuma hem yazma için açılır. İmleç dosya başına konumlanır.

w Sadece yazma modunda açar. Dosya yok ise oluşur, varsa içeriği silinir.

w+ w ile aynı işi yapar, aynı zamanda okunmayada izin verir.

a Dosyayı yazma modunda açar, dosya varsa; yazma dosya içeriğinin sonuna eklenir, dosya yok ise oluşturur.

a+ a ile aynı işi yapar.

x Dosya oluşturulur ve sadece yazma için açılır. İmleç dosya başına konumlanır. Dosya varsa “başarısız” olur.

x+ Dosya oluşturulur, hem okumak hem yazmak için açılır, dosya varsa işlem “başarısız” olur. İmleç dosya başına konumlanır.

Page 21: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya içeriğini Okumak

Açılan bir dosyanın içeriğini okumak için; fgets(), freads() , fgetc() ve fseek() fonksiyonları kullanılır.

21

Page 22: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Açma

Fread () : Dosya satır satır okunmak yerine belirli bir boyutta okumak için kullanılan fonksiyondur.Syntax: fread(Dosya ismi, uzunluk)

Fgetc() : Dosya içeriğini karakter karakter okumak kulllanılanfonksiyondur.Syntax: fopen(Dosya değişkeni)

Fseek() : Dosya içeriğini belirli bir konumdan itibaren okumak için kullanılan fonksiyondur.Syntax: fopen(Dosya değişkeni, nereden, nereye)

22

Page 23: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosyaya Bilgi Yazmak

Dosyaya bilgi yazmak iki şekilde yapılabilir;

Dosyadaki tüm bilgileri silip yeni yazmak,

Dosyada var olan bilgilere ekleme yapmak.

Dosyaya bilgi yazmak için fwrite() ve fputs() fonksiyonları kullanılır.

Dosyadaki bilgilere eklememi yapılacağı veya silinip baştan yeniden mi yazılacağı dosyanın açılma türüne bağlıdır. (bkz.20)

23

Page 24: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosyaya Bilgi Yazmak

Dosyaya “MERHABA PHP DÜNYASI” bilgisi yazalım.

24

Page 25: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Dosya Kilitlemek

Web sayfaları ile birden fazla kişi aynı anda dosyalara erişiyor ve bir kullanıcı dosya üzerinde işlem yaparken, diğerinin erişimi sistemin sorunsuz işlemesi için engellenebilir.

Dosya kilitleme için flock() fonksiyonu kullanılır. Bu fonksiyon üç farklı değer alabilir.

LOCK_SH : Diğer kullanıcıların dosyayı paylaşmalarına izin verir.

LOCK_EX : Diğer kullanıcıların dosyada işlem yapmasına engel olur.

LOCK_UN : Dosyanın kilidini kaldırır.

25

Page 26: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Klasör işlemleri (Klasör Oluşturmak)

Klasör oluşturmak için mkdir() kullanılır. İzin türleri ise;

26

chmod Açıklama

0600 Sadece owner okuyup yazabilir, başkası yapamaz.

0640 Sadece owner yazabilir, diğer herkes sadece okuyabilir.

0777 Herkes okuyabilir ve yazabilir.

0755 Owner herşeyi yapabilir, diğerleri sadece okur, çalıştırır.

0750 Owner herşeyi yapar, grup üyeleri okur ve çalıştırır, diğerleri “off”

Page 27: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Klasör işlemleri (Klasör silmek)

Klasör silmek için rmdir() fonksiyonu kullanılır.

27

Page 28: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

PHP Klasör işlemleri (Klasör içerik listelemek)

opendir() fonksiyonu ile klasör açılır ve readdir() fonksiyonu ile klasör içeriği okunur.

28

Page 29: Internet Programming II - Muratok Network · Elbistan Meslek Yüksek Okulu 2016 –2017 Bahar Yarıyılı Internet Programming II Öğr. Gör. Murat KEÇECĠOĞLU

Php’de Mysql veri tabanı bağlantısı ve uygulama

Devamı Haftaya …

29