internet programming ii - muratok network · elbistan meslek yüksek okulu 2016 –2017 bahar...
TRANSCRIPT
Elbistan Meslek Yüksek Okulu2016 – 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
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
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
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
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
PHP Dosya İşlemleri - Kontrol
Dosyanın var olup olmadığını kontrol etmek için file_exists() fonksiyonu kullanılır.
7
PHP Dosya ve Dizin Kontrolü
Kontrol edilenin dosya yada dizin mi olup olmadığı is_file() ve is_dir() fonksiyonları kullanılır.
8
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.
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.
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.
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.
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.
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 ?
PHP Dosya Yaratmak ve Silmek
PHP ile yeni dosya oluşturmak için touch() ve unlink() ise silmek için kullanılır.
15
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
PHP Dosya Yaratmak ve Silmek
00deneme.txt’nin erişim ve değişiklik zamanını değiştirmek;
17
PHP Dosya Yaratmak ve Silmek
Unlink() fonksiyonu dosya ismini parametre alarak siler.
18
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
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.
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
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
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
PHP Dosyaya Bilgi Yazmak
Dosyaya “MERHABA PHP DÜNYASI” bilgisi yazalım.
24
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
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”
PHP Klasör işlemleri (Klasör silmek)
Klasör silmek için rmdir() fonksiyonu kullanılır.
27
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
Php’de Mysql veri tabanı bağlantısı ve uygulama
Devamı Haftaya …
29