ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin...

49
1 ACCESS Access Bileşenleri Tables (tablolar) iş ya da kuruluşunuzun belirli bölümleri ile ilgili bilgilerin depolandığı yer Queries (sorgular) bir veritabanında belirli bir bilgiyi bulmak için sorulan soru Forms (formlar) tablolara bilgi girişini kolaylaştıran, kullanıcıyı yönlendiren ve hataları denetleyen yer Reports (raporlar) istenen bilgilerin belirli bir düzende görüntülendiği yer Macros (makrolar) bir dizi Access komutunu otomatik olarak uygulama imkanı sağlar (komutları düğmelerle ilişkilendirme vb.) Modules (modüller) Access komut ve makrolarını genişletme ve Microsoft Visual Basic ve diğer Microsoft Office programları ile birleştirme imkanı sağlar Field Size (Alan Boyutu) veri uzunluğuna bir sınır getirilmesine yarar Format (Biçim) özel işaretler yardımı ile verinin görünüm biçimini değiştirir (![renk] renk değişikliği, ! verinin sola yaslanması, * verinin sağa yaslanması, < verinin küçük harflere dönüştürülmesi, > verinin büyük harflere dönüştürülmesi) Input Mask (Giriş Maskesi) seçili olan alanda veri girişi esnasında kullanıcıyı kısıtlar (Örn. L0L 0L0 için L harfi A'dan Z'ye herhangi bir harfi 0 ise 0'dan 9'a herhangi bir sayı anlamındadır) Caption (Resim Yazısı) sütun başlığı yazılır (bu kısım boş ise sütun başlığı olarak Field Name görünür) Default Value (Varsayılan Değer) seçili alana, kayıt girilirken buraya girilen değer kendiliğinden yazılır (Örn. Telefon Şehir Kodu ile ilgili alan için 0312 Default Value olarak verilebilir, kullanıcı isterse değişiklik de yapabilir) Validation Rule (Geçerlilik Kuralı) sayısal verinin belirli bir özellikte olması şartı ile veri girişi denetimi sağlanır. (Örn. > 1000) Validation Text (Geçerlilik Metni) Validation Rule belirlendiğinde, kullanıcının aykırı bir veri girişinde bulunduğu zaman karşılaşacağı hata mesajıdır ( Örn. Girilecek değer 1000 den büyük olmalıdır) Required (Gerekli) veri girme zorunluluğu olan alan için YES tersi durum için ise NO tanımlanır Allow Zero Length (Sıfır Uzunluk İzni) Data Type özelliği Text olan alanlarda sıfır uzunluklu metin girişine izin vermek için YES, tersi durum için ise NO tanımlanır

Transcript of ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin...

Page 1: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

1

ACCESS Access Bileşenleri

Tables (tablolar)

iş ya da kuruluşunuzun belirli bölümleri ile ilgili bilgilerin depolandığı yer

Queries (sorgular)

bir veritabanında belirli bir bilgiyi bulmak için sorulan soru

Forms (formlar)

tablolara bilgi girişini kolaylaştıran, kullanıcıyı yönlendiren ve hataları denetleyen yer

Reports (raporlar)

istenen bilgilerin belirli bir düzende görüntülendiği yer

Macros (makrolar)

bir dizi Access komutunu otomatik olarak uygulama imkanı sağlar (komutları düğmelerle ilişkilendirme vb.)

Modules (modüller)

Access komut ve makrolarını genişletme ve Microsoft Visual Basic ve diğer Microsoft Office programları ile birleştirme imkanı

sağlar

Field Size (Alan Boyutu) veri uzunluğuna bir sınır getirilmesine yarar

Format (Biçim)

özel işaretler yardımı ile verinin görünüm biçimini değiştirir

(![renk] renk değişikliği, ! verinin sola yaslanması, * verinin

sağa yaslanması, < verinin küçük harflere dönüştürülmesi, >

verinin büyük harflere dönüştürülmesi)

Input Mask (Giriş Maskesi)

seçili olan alanda veri girişi esnasında kullanıcıyı kısıtlar

(Örn. L0L 0L0 için L harfi A'dan Z'ye herhangi bir harfi 0 ise

0'dan 9'a herhangi bir sayı anlamındadır)

Caption (Resim Yazısı) sütun başlığı yazılır (bu kısım boş ise sütun başlığı olarak

Field Name görünür)

Default Value (Varsayılan Değer)

seçili alana, kayıt girilirken buraya girilen değer kendiliğinden

yazılır (Örn. Telefon Şehir Kodu ile ilgili alan için 0312

Default Value olarak verilebilir, kullanıcı isterse değişiklik de

yapabilir)

Validation Rule (Geçerlilik Kuralı) sayısal verinin belirli bir özellikte olması şartı ile veri girişi

denetimi sağlanır. (Örn. > 1000)

Validation Text (Geçerlilik Metni)

Validation Rule belirlendiğinde, kullanıcının aykırı bir veri

girişinde bulunduğu zaman karşılaşacağı hata mesajıdır ( Örn.

Girilecek değer 1000 den büyük olmalıdır)

Required (Gerekli) veri girme zorunluluğu olan alan için YES tersi durum için ise

NO tanımlanır

Allow Zero Length (Sıfır Uzunluk İzni)

Data Type özelliği Text olan alanlarda sıfır uzunluklu metin

girişine izin vermek için YES, tersi durum için ise NO

tanımlanır

Page 2: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

2

Alan Türleri

Text alfabetik ya da alfanümerik veriler (maks. 255 karak.)

Memo açıklama,not ve düşünceler (32.000 karak.)

Number sayısal alanlar (alt / üst değeri Field Properties'de bulunan Field Size'da

tanımlanan değere bağlıdır)

Date/Time tarih ve saat (8 bytelık yer tutar)

Currency borç, alacak, maaş vb. (8 bytelık yer tutar)

AutoNumber otomatik veriler (Örn. Microsoft Access'in her öğrenciye özel bir kod

vermesi sağlanır) (4 bytelık yer tutar)

Yes/No küçük mü büyük mü?, kısa mı uzun mu? 8(1-2 bytelık yer tutar)

OLE Object resim, ses kayıtları veya çizimler gibi nesneler için kullanılır

Hyperlink metin ya da metin ve numara kombinasyonundan oluşmuş köprü (2048

karak.)

Lookup Wizard...

başka bir tablodaki (ya da list box veya combo box kullanarak değerler

listesinden) bir değeri seçilen alanda kullanabilme imkanı tanır (tipik olarak

4 bytelık yer tutar)

VERİ TABANI VE HESAPLAMA - EXCEL

EĞER:

Bir mantıksal sınama sonucunda; mantıksal sınamanın doğru olması durumunda hücreye bir değer, yanlış olması durumunda bir başka

değer yazdırmak için kullanılır.

Yukarıdaki örnekte ortalaması 45 ve üzeri olan öğrenciler için sonu sütununa geçti, 44 ve altı için kaldı yazdıran formül:

=EĞER(E2>44;"geçti";"kaldı") Veya =EĞER(E3<45;"kaldı";"geçti")

EĞERSAY(aralık; ölçüt)

Bir aralık içersinde verilen ölçüte göre sayma işlemi yapan formüldür.

Yukarıdaki örnekte E2 ile E4 hücresi arasında notu 45’ten büyük olanları saymak için;

=EĞERSAY(E2:E4,">55"))

ETOPLA(aralık;ölçüt;toplam_aralığı)

Bir aralık içerisinde ölçüte uyan değerleri toplamak için kullanılan formüldür.

Yukarıdaki örnekte E2 ile E4 hücresi arasında notu 45’ten yüksek olan kişilerin sözlü notlarını toplamak için kullanılan formül;

=ETOPLA(E2:E4;">45";D2:D4)

ORTALAMA:

Belirtilen hücrelerin veya hücre aralığının ortalamasını bulur.

Yukarıdaki örnekte 1.yazılı, 2.yazılı ve sözlünün ortalamasını bulduran formül:

=ORTALAMA(B2:D2)

MAKSİMUM:

Belirtilen hücrelerden veya hücre aralığından en büyük sayıyı buldurmaya yarar.

Yukarıdaki örnekte en büyük yazılı notunu bulduran formül:

=MAK(B2:C4)

MİNUMUM:

Belirtilen hücrelerden veya hücre aralığından en küçük sayıyı buldurmaya yarar.

Yukarıdaki örnekte en düşük sözlü notunu bulduran formül:

=MİN(D2:D4)

Indexed (Sıralı)

tablodaki kayıtların seçili alana göre sıralanmasını sağlar.

Bunun için Yes (Duplicates OK) seçilirse indexlenmiş alana

aynı veri birden fazla girilemez iken, Yes ( No Duplicates)

seçilirse bu kısıt ortadan kalkar ve alan sadece indexlenmiş

olur (Data Type özelliği Memo, Hyperlink ve OLE Object

olan alanlar indexlenemez)

Page 3: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

3

DONANIM BİLGİSAYARIN TANIMI VE TEMEL ÇALIŞMA PRENSİBİ

Bilgisayar, kullanıcı tarafından giriş birimleriyle verilen sözel ve sayısal verileri işleyerek çıkış birimleri aracılığı ile

kullanıcısına sunan elektronik aygıtların genel adıdır.

Kişisel Bilgisayarlarda Çalışma Mantığı

Bilgisayar kullanımında en önemli unsur “İNSAN”dır. Bilgisayar bildiğimiz gibi bir bilgi işleme makinesidir. Ancak kendi

başına düşünemeyeceğinden bilgiler kullanıcısı tarafından girilir. Kendisine girilen bilgileri çok hızlı bir şekilde işleyerek çıktılara

dönüştürür. Bu tanımdan bilgisayarda bilgi işlemenin giriş, işleme ve çıktı olmak üzere 3 aşamada gerçekleştiğini söyleyebiliriz.

GİRİŞ İŞLEME ÇIKTI

Klavye Kasa Ekran (Monitör)

Fare Yazıcı

Optik Okuyucular

Joystick (Oyun Çubuğu)

BİLGİSAYARI OLUŞTURAN ÖĞELER

Bilgisayarı oluşturan öğeler genel olarak ikiye ayrılır. Bunlar; bilgisayarı oluşturan (gözle görünür) parçalar ile içersine

yüklenen programlardır. Yani bilgisayar iki bölümden oluşur:

Donanımlar: Bilgisayarı oluşturan, gözle görünür, elle tutulur bütün parçalara denir. Bunlar arasında klavye, fare, monitör, kasa,

yazıcı, tarayıcı ve kasa içersinde bulunan parçalar (işlemci, saklama birimleri, güç kaynağı, RAM hafıza çipleri, bağlantı kabloları)

bulunur.

Yazılımlar: Bilgisayar içersinde yüklenen her türlü programı ifade eder. İşletim sistemi ve uygulama yazılımları (Paint, Wordpad,

Word, Excel, Windows Gezgini... vs).

Bildiğimiz gibi donanım denince akla bilgisayarın gözle görünür elle tutulur her türlü parçası gelir. Bunun yanında kasa içersindeki

birimler donanım sınıfına girmektedir.

A. Giriş Birimleri

Bilgisayarla iletişim kurulmasını sağlayan ve istenilen bilgilerin bilgisayara girilmesini sağlayan donanımlardır.

Klavye: Bilgisayarla yazı yazmaya yarayan ve daktiloya benzeyen alettir. Yabancı diller için düzenlenmiş türüne “Q Klavye”, Türk

alfabesine göre düzenlenmiş olanına “F Klavye” denir. Klavye girişine takılır.

Fare: Bilgisayarın kolayca yönetilmesi için geliştirilmiş hemen hemen en ucuz parçasıdır. Pek çok şekli ve türü bulunan fare, basit

yapısına rağmen bugünkü bilgisayarların en önemli parçasıdır. Fare girişine takılır.

Tarayıcı: Fotoğraf, grafik, çizim, resim... gibi kağıt üzerinde yer alan bilgilerin bilgisayara girilmesinde kullanılır. Bir fotokopi

makinesi gibi çalışır.

Web Kamerası: Hareketli video görüntülerinin bilgisayara girilmesinde kullanılır. Normal bir kamera gibi çalışır.

B. Sistem Birimleri

Bilgisayara girilen bilgileri işleyen birimlerdir.

İşlemci: Bilgisayarın her türlü işlemini gerçekleştiren ve yöneten en önemli parçasıdır. Bilgisayarın hızı, işlemcinin modeli ile

doğrudan alakalıdır. Ek bilgi olarak üç bölümden oluştuğunu (Kontrol Birimi, ALU(Aritmetik ve Mantıksal işlemlerin yapıldığı

bölüm) ve Register(ön) bellek) söyleyebiliriz. Anakart üzerindeki işlemci yuvasına takılır.

RAM Bellek: Programların çalıştırılması için saklama birimlerinden çağırılıp yüklendiği bilgisayarın çalışma hafızasıdır. Ne kadar

büyük olursa bilgisayar o kadar rahat çalışacaktır. Anakartta RAM yuvalarına takılır. Geçici hafıza birimidir.

Güç Kaynağı: Kasa içersinde bilgisayara şebekeden gelen elektriği gerekli birimlere dağıtan birimdir ve satın alınan boş kasa ile

birlikte gelir. Buradaki bir arıza yada kısa devre bilgisayarda ciddi hasarlara neden olabilir.

PORT’lar: Bilgisayara dışardan takılan cihazlar için kasada bulunan girişlerdir. LPT, COM ve USB türleri mevcuttur. LPT(Parelel)

genellikle Yazıcı ve tarayıcı için (ayrıca laplink bağlantısı ile başka bilgisayarlara bağlanmak için); COM(Seri) Modem gibi iletişim

cihazları için kullanılır. USB ise yeni bir teknolojidir ve web kameraları ile özel modemlerin bağlantısı için kullanılır.

Sistem Kartları: Her biri özel bir amaç için üretilmiştir. Kasa içersindeki anakarta takılırlar.

Ekran Kartı: Sistemden aldığı sinyalleri alıp görüntüye dönüştürerek monitöre ileten karttır. Normalde anakarta takıldığı halde bazı

sistemlerde anakart üzerinde bir çip olarak yer alabilmektedir.

Ses Kartı: Sistemden aldığı sinyalleri sese dönüştürerek hoparlöre ileten, yada dışardan gelen sesleri bilgisayarın anlayabileceği hale

getiren karttır. Normalde anakarta takıldığı halde bazı sistemlerde anakart üzerinde bir çip olarak yer alabilmektedir.

Ethernet Kartı: Yerel ağ (birbirine yakın olan bilgisayarlarla kurulan ağ) üzerindeki bilgisayarların birbiri ile haberleşebilmesini

sağlar.

Page 4: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

4

Faks / Modem Kartı: Bilgisayarın telefon hattı üzerinden başka bilgisayarlarla yada faks makineleriyle haberleşmesini ve bilgi

alışverişinde bulunabilmesini sağlayan özel bir karttır. Bilgisayarın içersinden anakarta takılan (Internal) modelleri yaygındır. Ancak

dıştan (External) kablo ile bağlanan modemler daha verimli ve hızlıdır. Temel çalışma mantığı bilgisayardan aldığı bilgileri telefon

hattı üzerinden geçebilecek şekilde kodlayarak paketlemek, yada telefon hattı üzerinden paketlenmiş olarak gelen bilgileri

bilgisayarda kullanılabilir verilere çevirmektir.

Kablolar: Kasa içersinde ve dışında yer alan donanımları birbirine bağlamak için kullanılır.

D. Saklama Birimleri

Bilgisayarların belkide en kullanışlı özelliği üretilen bir bilgiyi saklayabilmesidir. Bunun için kullandığı birimlere saklama birimleri

denir. Manyetik yapılılar; sabit disk, disket ve ZIP sürücüler, optik yapılılar CD sürücülerdir.

Sabit Disk: Bilgisayarın merkez saklama birimidir ve en yüksek saklama kapasitesine sahiptir. İç yapısı üst üste dizili manyetik

diskler şeklindedir. Her bir manyetik disk izlerden ve sektörlerden oluşur. Sabit disk içersinde her bir disk başına 2 tane okuma kafası

(iğne) düşmektedir. Kasa içersinde yer alır ve anakarttaki “Primary Master” portuna bağlanır.

Disket: Saklama kapasitesi oldukça düşüktür (1.44 MB) ve çok yavaş çalışır. Ancak küçük dosyaları bir bilgisayardan diğer bir

bilgisayara taşımak için kullanılır. 3.5” lik Floppy Diskler ve disket sürücüleri şimdilik bütün bilgisayarlarda standarttır.

CD Sürücüler (CD – ROM / CD – RW / DVD): Saklama kapasitesi standart 650 – 700 MB arasında olan oldukça kullanışlı saklama

birimleridir. CD – ROM sürücü yalnızca CD’lerde kayıtlı hazır bilgileri okur. Ancak bir CD – RW (Writer) Kayıt cihazınız varsa

bilgisayarınızdaki her türlü veriyi CD’ye kaydederek saklamanız mümkündür. CD Kaydedici cihazlar her türlü CD yapabilir ve

çoğaltabilir. DVD sürücüler ise yeni bir teknolojidir. Genellikle film CD’si amaçlı olarak kullanılan DVD, ekranda oynamakta olan

filmin sesinin, dilinin, altyazısının ve hatta kamera açısının değiştirilebileceği, yeni yaygınlaşan üstün bir saklama birimi türüdür.

Sıkıştırması ile 8 saatlik bir filmin tek bir CD’de toplanabilmesine olanak verir.

YAZILIMLAR

Bilgisayara yüklenen her türlü programa yazılım denir. Virüslerde yazılımdır. Bazı yazılımlar olmadan bilgisayar donanımları hiçbir

işe yaramaz.

A. Sistem Yazılımları

Temelde bilgisayarı çalıştıran ve donanımların birbirleriyle haberleşmesini sağlayan yazılımlardır. Bunlar tür yazılımlar olmadan

bilgisayarı çalıştırabilmek mümkün değildir.

BIOS: Anakartta bir çipte yüklü olan küçük bir programdır, ancak bilgisayarın çalışmasında önemli bir rol üstlenir. Bilgisayarın

açılışında çalışma ortamlarını ve bilgisayarı testten geçirir. Kendisine

daha önceden yapılmış olan ayarlar doğrultusunda bilgisayarın

donanımlarını testten geçirir. Bilgisayarın kontrolü için gerekli olan giriş

birimlerinin (klavye ve farenin) bağlı olup olmadığını, sistemde ne kadar

RAM olduğunu, RAM’lerin sağlam olup olmadığını kontrol eder. Daha

sonra ise saklama birimlerini algılayarak işletim sistemi bilgilerini

nereden alacağını denetleyen BIOS, eğer bir sorunla karşılaşırsa hemen

kullanıcıyı uyararak gerekli düzeltmelerin yapılmasını ister. Daha sonra

kendisine kaydedilmiş olan sıra ile saklama birimlerinde

işletim sistemini arar bulur ve yükleyerek bilgisayarı çalışır duruma

getirir. (Ayarlar değiştirilmediği takdirde BIOS, işletim sistemini sırası ile

önce diskette, sonra sabit diskte, en son olarakta CD- ROM’da arar)...

Sürücüler: Bir anlamda donanımların kendilerini işletim sistemine

tanıtmak için kullandıkları kimlikleridir diyebiliriz. Her donanımın

kendisini Windows ortamında çalıştırabilmek için Windows altındaki

“Drivers” klasörüne kopyalamak zorunda olduğu sürücüleri vardır.

Bu sürücüler ilgili donanımın kutusunun içindeki bir Disket veya CD

içersinden bilgisayara yüklenir. Sürücüler yüklenmezse o donanım çalışmaz. Örneğin yeni aldığınız bir ses kartını bilgisayarınıza

taktığınızda Windows bu donanımı tanımıyorsa, aldığınız ses kartı ile birlikte gelen sürüleri bilgisayarınıza yüklemek zorundasınız.

İŞLETİM SİSTEMLERİNİN KURULUMU

İşletim sistemlerini kurulmadan önce sabit disk bölümleme işlemleri yapılır,biçimlendirilir ve işletim sistemi bilgisayara

kurulur.Diski bölümleme işlemlerini FDISK,biçimlendirme işlemlerini yapan komut FORMATTIR.

FDISK(Bölümleme):Sabit diskin bölümlere ayrılarak kullanılmasını sağlayan MS-DOS ortamında çalışan bir komuttur.Bölümleme

işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde

kullanımını sağlar.Bölümleme esnasında işletim sistemi ile depolama birimlerinin anlaşmasını sağlayan dosya sistemleri seçilir.

Dosyalama sistemleri FAT 16, FAT 32 ve NTFS dir.DOS ve WINDOWS 95 te FAT 16 ,WINDOWS 98 de FAT 32 ,WINDOWS XP

de NTFS KULLANILIR.

FORMAT(Biçimlendirme):Fdisk ile bölümlenmiş sabit diskleri ,bölümlenmemiş sabit diskleri biçimlendirmek için kullanılan MS-

DOS ortamında çalışan bir komuttur.Format komutu ile biçimlendirilen disklerdeki tüm bilgiler tamamen silinir.

Tüm bu işlemler yapıldıktan sonra işletim sistemi kurulum cd si CD-ROOM sürücüye yerleştirilip cd içerisinden SETUP.EXE dosyası

çalıştırılır ve kurulum başlatılır.

Award Modular BIOS v.4.23 Intel Pentium IV CPU found CPU Clock at 1400 Mhz RAM Test: 256 MB OK Detecting IDE Drives: Primary Master: Quantum Bigfoot Secondary Master: Not Found Primary Slave: Creative CD – 52X Secondary Slave: Yamaha CD-RW 8824 SYSTEM TEST OK.

Windows 98 Başlıyor...

Page 5: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

5

AĞ TEMELLERİ İki yada daha çok bilgisayarın bir birine bağlanmasına bilgisayar ağı (network) denir. Ağ içindeki bilgisayarlar birbiriyle

iletişim kurabilirler ve veri paylaşırlar.

LAN (Local Area Network)

Belli sayıda bilgisayardan ve belli bir alan içinde oluşturulan küçük bilgisayarlara ağ denir. Örneğin 10 kullanıcı ve tamamı

bir ofis içinde oluşturulan küçük bilgisayar ağlarına LAN denir.

WAN (Wide Area Network)

Ağların coğrafi alan ve kullanıcı sayısı tarafından büyük olması durumunda WAN (Wide Area Networks) kavramı ortaya

çıkar.

Neden Bilgisayar Ağlarına Gereksinim Duyulur?

Bilgisayar ağlarına duyulan gereksinimin temel nedeni veri kaynaklarını paylaşmak ve iletişim kurmaktır. Veri paylaşmak sabit

disklerde yer alan klasörlerin ve dosyaları birçok kişi ya da istenilen diğer kişiler tarafından kullanılması anlamındadır. İletişim ise

kullanıcıların bir birine elektronik-posta göndermesi anlamındadır.

Bilgisayar ağlarının bir diğer kullanım alanı da yazıcılar ve diğer çevre birimlerinin paylaşımıdır. Diğer bir ağ kullanımı da

uygulamaların paylaşımıdır. Örneğin bir bilgisayarda yüklü bir programın diğer bilgisayarlar tarafından kullanılması.

Bilgisayar ağlarına duyulan gereksinimi şu şekilde özetlemek olasıdır:

Veri paylaşımı

Elektronik-posta

Çevre birimlerini paylaşmak

Uygulamaları ortak kullanmak

NETWORK'ÜN YARARLARI

Bilgisayarları bir ağ oluşturmak üzere birbirine bağlanması şu yararları sağlar:

-Bilgilerin paylaşımı.

-Merkezi yönetim ve desteği.

-Kurumsal çalışma, güvenlik,

Bir şirket ortamında bilgilerin bölümler, şubeler arasında paylaşımı o şirket için çok önemlidir. Bunun dışında elektronik posta

göndermek, belgeleri birlikte oluşturmak gibi olanaklar kullanıcılara büyük faydalar sağlar.Bilgisayarlar arasında ağ kurulması ayrıca

yönetim ve destek görevlerinin de kolayca yapılmasını sağlar. Ağ yöneticisi tek bir yerden ağ üzerindeki diğer bilgisayarları

yönetebilir. Örneğin bir programı yüklemek ya da kullanıcının bir sorunu gidermek için kullanıcının bilgisayarına gitmeye gerek

kalmadan ağ üzerinden (uzaktan) müdahale edilebilir.

AĞ TOPOLOJİLERİ

Topology (yerleşim ve bağlantı biçimi), bilgisayarların birbirine nasıl bağlandıklarını tanımlayan genel bir terimdir. Yaygın

olarak kullanılan topology türleri şunlardır:

-Bus

-Ring

-Star

-Mesh

Bus topology, bilgisayarların bir ana kablo ile birbirine bağlandığı şekildir. Ring topology ise bir halka biçiminde bilgisayarların

birbirine bağlanmasıdır. Star topology ise bilgisayarların bir merkezi aygıt aracılığıyla birbirine bağlandığı şekildir. Mesh topology ise

bütün bilgisayarların birbirine bağlandığı bir bağlantı biçimidir.

Mesh topology'nin yaygın olarak kullanılmadığını görüyoruz. Bunun nedeni gereksiz yere çok sayıda bağlantının yapılmasıdır.

Günümüzde en yaygın olarak Star topology türünün seçildiğini görüyoruz. Bunun başlıca nedeni merkezi bir aygıttan dağıtılan

kablolama şekli, fiyat ve performans gibi özelliklerdir.

A. BUS TOPOLOJİ

Bus yerleşim biçimi doğrusal bir hat olarak bilinir. Bütün makinelerin tek bir kabloya bağlı oldukları bir ağ türüdür.

Bus topology için söylenebilecek bütün teknik ayrıntılar Ethernet teknolojisine bağlıdır.

B. STAR TOPOLOJİ

Star yerleşim biçiminde bilgisayarlar merkezi biçimde konuşlandırılan bir hub'a bağlı olarak çalışırlar. Bilgisayarlar

tarafından üretilen sinyaller önce hub'a ulaşırlar ardından diğer bilgisayarlara ulaştırılırlar.

Star yerleşim biçimde bütün bilgisayarlar bir hub'a bağlıdır. Diğer bir deyişle bütün bilgisayarlara hub'tan bir kablo çekilir. Bu

merkezi dağıtım sistemi yıldız yerleşim biçimde her bilgisayara özel bir kablo çekilmesini böylece herhangi bir kablo arızasının

sadece o bilgisayarı etkilemesi sağlar. Böylece tüm network çökmez. Ancak merkezi dağıtım birim hub'ın bozulması durumunda ise

bütün network çöker.

Star, en eski yerleşim biçimlerindendir. İlk olarak PBX (private Branch Exchanges) olarak adlandırılan analog ve sayısal anatharlama

aygıtları olarak karşımız çıkmışlardır. Star yerleşim biçiminde bütün istasyonlar merkezi bir noktaya bağlıdırlar. Buna "hub" denir.

Star topoloji bugün bus'in yerine geçmiş ve UTP (genellikle Twisted-Pair kablo) kablo ile birlikte yaygın olarak kullanılmaktadır.

Fiziksel Star-Wired Ring yerleşim biçiminde ise birden çok hub kullanılır. Hub'a bağlı bilgisayarlar Star yerleşim biçimini

oluştururlar.

Page 6: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

6

Bu yerleşim biçimin şu üstünlükleri vardır:

-Tek bir kablo sorununun bütün network'ü etkilememesi.

-Daha iyi bir network yönetimi.

-Network'e PC eklemek ve çıkarmak kolay.

Bu yerleşim biçiminin zayıf yönleri ise şunlardır:

-Bütün birimlerin bağlı olduğu hub'ın bir sorunu bütün network'ü etkiler.

-Bütün birimler için tek bir kablo hattının çekilmesi maliyeti

ETHERNET

En yaygın kullanılan LAN teknolojisidir. Öyle ki ağ bağdaştırıcı kartları (network adaptörleri) bir Ethernet kartı diye

adlandırılır. Ethernet teknolojisi bugün LAN ortamındaki teknolojiyi ifade eder. Böylece birimleri, hızları ve diğer standartları

belirler.

Ethernet Nasıl Çalışıyor

Ethernet, verilerin kabloyla iletilmesi sağlayan bir teknolojidir. Bu iletimde CSMA/CD tekniği kullanılır. Bu erişim yönteminde

network üzerindeki bütün bilgisayarlar network kablosunu sürekli kontrol ederler. Kablonun boş olduğu algıyan veriyi gönderir . Bu

arada eğer kabloda veri varsa o zaman veri hedefine ulaşıncaya kadar beklenir. İki bilgisayarın paketleri kabloda karşılaşırlarsa

çarpışma (collision) oluşur

Veri Paketleri

Network içinde bilgisayarlar arasında yapılan veri transferinde veriler paket (packet) denilen küçük parçalara bölünür. Paketler

bilgisayarların kabloyu paylaşmasını sağlar. Ayrıca veri transferinde hata oluştuğunda da yalnızca bozulan paketler yeniden

gönderilir.

MAC Adresi

Ethernet networklerinde her bilgisayarı tek bir adresi vardır. Buna node denir. Ethernet networkünde bu bilgi 48-bitlik MAC adresidir.

Her network kartı (network adaptör) tek bir MAC adresine sahiptir. 48-bitlik adres bilgisi 2^48 (281,474,976,710,656) olası adres

bilgisinin oluşturulmasını sağlar. Bunun diğer bir anlamı da bir Ethernet networkünde 281 trilyon makine bulunabilir.

MAC adresleri IEEE tarafından rezerve edilerek üretici firmalar verilir. Böylece dünya üzerinde iki aynı MAC adresinin olması

engellenir.

MAC Adreslerini Kullanmak

MAC adresleri network üzerindeki her bilgisayarın hangi paketi işleyeceğini belirler. Bir bilgisayar bir data paketini gönderdiğinde,

paket her iki yönde de ilerler. Bu sırada diğer bilgisayarlar ağı dinler ve paket üzerindeki MAC adresinin kendi MAC adresleri olup

olmadığını kontrol ederler. Bilgisayar kendi MAC adresine sahip bir paketi gördüğünde, paketi açar ve verileri işlemeye başlar.

PHP

PHP yorumlayıcısı, bu "programı" çalıştırabilmek için dosyanın içinde PHP komutlarını arar. PHP komutları

birinci bölümde gördüğümüz gibi iki şekilde yazılabilir:

1. <?PHP .... ?>

2. <? .... ?>

Bunlara PHP komut ayracı denir; birinci türü uzun veya standart ayraç sayılır; ikincisine ike "kısa ayraç" denir.

PHP kodlarımız, oluşturulmasını istediğimiz sayfanın HTML kodları ile tabir yerinde ise içiçe yazılır.

<?PHP

print "Merhaba Dünya!";

?>

Sayfalara yorum eklemek için;

<?PHP

/*

Bu satır da PHP'nin çok-satırlı yorum bölümü..

Bunu da PHP yorumcusu asla dikkate almaz

Buraya istediğimiz kadar yorum yazabiliriz.

*/

print "Merhaba Dünya!";

// Bu ise PHP'nin tek satırlı yorum bölümü

# Bu satırları da PHP yorumcusu dikkate almayacaktır.

?>

Page 7: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

7

Değişkenler

PHP'de de, bir çok başka bilgisayar programlama dilinde olduğu gibi değişkenlerin içine bir değer konmadan

önce tanımlanması mümkündür; fakat gerekli değildir. Değişkenleri adının önüne $ işareti koyarak tanımlarız:

$adi = "Reşit";

$soyadi = "Gülen";

$123 = 123;

$sevdigiRenk = "yeşil";

Veri Türleri

PHP açısından dünyada altı tür değer vardır:

Tamsayı (Integer): 5,124, 9834 gibi

Çift (Double): 3,567 gibi

Alfanümerik (String): "Reşit" gibi

Mantıksal (Boolean): doğru (true)/yanlış (false) gibi

Nesne (Object)

Dizi (Array)

Tür Değiştirme

Bir değişkenin değerinin türü hakkında kuşkunuz varsa, en emin yol bunu PHP'nin kendisine sormaktır. Bu

sorgulamayı gettype() fonksiyonu ile yaparız.

Escape

şu satırdaki, ters-bölü işareti dikkatinizden kaçmamış olmalı:

print "İkinci değişkenin adı: \$alfanumerik<br>";

PHP için özel anlamı olan işaretlerin anlamlandırılmasını önlemek ve bu işaretleri düz metin saymasını

sağlamak için bu işaretlerin önüne ters-bölü işareti koyarız.

şöyledir:

\' Tek tırnak

\" Çift tırnak

\\ Ters-bölü

\$ Dolar işareti

\n Yeni Satır (New Line)

\r Satır Başı (Return)

\t Sekme (Tab) karakteri

Kimi zaman bir değişkene atadığımız değerin türünü değiştirmek gerekir. Bunu settype() fonksiyonu ile

yaparız.

isset() ve unset()

isset() fnksiyonu, PHP'nin bir değişkenin içinde değer bulunup bulunmadığını sınamasını sağlar. unset() ise

varolan bir değişkeni yok eder.

if (isset($bir_degisken)) {

print( $bir_degisken );

}

else {

unset($bir_degisken);

}

Page 8: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

8

Bu kod parçası, $bir_degisken isimli dğişkenin içi boş değişse, içeriğini görüntüleyecek, içi boş ise varlığına

son verecektir.

empty()

isset() fonksiyonun tersi işleve sahiptir; bir değişkene değer atanmamışsa, veya değeri sıfır veya boş

alfanümerik (null string) ise, doğru (True) değeri verir.

$bir_degisken = 123;

echo empty($bir_degisken);

$bir_degisken = "";

echo empty($bir_degisken);

İşlemciler (Operatörler)

Aritmetik işlemciler:

+ Toplama 6+5 = 11

- Çıkartma 6-5 = 1

/ Bölme 6/5 = 1.2

* Çarpma 6*5 = 30

% Kalan (Modulus) 6%5 = 1

$sayi=4.5;

echo floor($sayi); =>> 4 (Sayıyı aşağıya yuvarlar)

echo ceil($sayi); =>> 5 (Sayıyı yukarıya yuvarlar)

echo round($sayi); =>> 5 (Sayıyı yuvarlar)

echo max(13,12,5,7); =>> 13

echo min(13,12,5,7); =>> 5

PHP'nin atama işlemcisinin eşittir (=) işareti olduğunu hatırlıyorsunuz birleşik-atama (combined-assignment)

işlemcileri, bu işarete diğer aritmetik işlemciler eklenerek oluşturulur.

İş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"

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.

PHP'nin karşılaştırma yapması için kullandığımız işlemciler ise işlem işaretinin sağı ve solundaki değerleri

veya değişkenlerin değerlerini işaretin belirttiği karşılaştırmayı yaptıktan sonra ortaya ya doğru (true) ya da

yanlış (false) sonucunu çıkartırlar.

Page 9: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

9

İşlemci Ö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ğuru/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

PHP'de bu karşılaştırmayı iki grubun arasına koyduğumuz işaretlerle yaparız İşaretin sağ ve sol tarafının

doğruluğu veya yanlışığı işarete göre nihai sonucun doğru veya yanlış olmasını sağlar. Bu karşılaştırmaları

yaparken şu işlemcileri kullanırız:

İşlemci Adı Anlamı Örnek

|| veya sol veya sağ doğru doğru || yanlış = doğru

or veya sol veya sağ doğru doğru || yanlış = doğru

&& ve sol ve sağ doğru doğru || yanlış = yanlış

and ve sol ve sağ doğru doğru || yanlış = yanlış

Xor Şartlı-veya Sadece sol veya sağ doğru doğru || yanlış = doğru

! Değil sol veya sağ yanlış doğru || yanlış = doğru

<?php

$vize = 45;

$final = 65;

if ($vize >= 50 && $final >= 50) {

print ("Öğrenci geçti!");

}

else {

print ("Öğrenci kaldı!");

}

?>

Sabit Değerler

define ("SABIT_DEGER", değer);

Burada SABIT_DEGER yerine, tanımlamak istediğimiz sabit değere vereceğimiz isim, değer yerine de sabit

değeri yazarız. Örnek:

<?php

$Dolar_miktar = 125;

define ( "DOLAR_KURU", 625675);

$TL_Tutar = $Dolar_miktar * DOLAR_KURU;

print ($TL_Tutar);

?>

Tanımlanmış olan bir sabiti yeniden oluşturamayız; ama buna teşebbüs ettiğimizde PHP hata vermez. Bir sabit

değerin oluşturulmuş olup olmadığını defined() fonksiyonu ile anlayabiliriz:

<?php

$Dolar_miktar = 125;

if (defined( "DOLAR_KURU" )) {

Page 10: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

10

echo ("Sabit değer daha önce tanımlanmıştı.<br>");

}

?>

Dizi-Değişkenler

Dizi değişkenden ayrıntılı söz edebilmek için önce tipik bir dizi-değişkende neler olduğuna bakalım. Sözgelimi,

verdiğiniz "PHP ile Programlama" kursundaki öğrencilerinizin listesi şöyle olabilir:

Dizi Değişken Oluşturalım

Şimdi, PHP bize öyle bir araç vermeli ki, biz bir kerede bu listenin tümünü, her bir ögesine sanki bir değişkenin

değeri imiş gibi tek-tek, veya bir kaçına birden ulaşabilmeli ve arzu ettiğimiz zaman notları doldurabilmeliyiz.

Öğrenciler de yapacağımız Web sitesine girerek, kendi notlarını görebilmeli ve notlarını inceleyebilmeli.

PHP'nin bu amaçla sağladığı araç, çok-boyutlu dizi-değişken oluşturma aracıdır. Ve bu araçla yukarıdaki listeyi

aynen şöyle yapabiliriz.

<?php

$ogrenciler = array (

array ( adi => "Özbay", soyadi => "Altun", sinav1 =>"", sinav2 =>"", not =>""),

array ( adi => "Muharrem", soyadi => "Taç", sinav1 =>"", sinav2 =>"", not =>""),

array ( adi => "Hasan", soyadi => "Civelek", sinav1 =>"", sinav2 =>"", not =>""),

array ( adi => "Şahika", soyadi => "Tabak", sinav1 =>"", sinav2 =>"", not =>""),

);

// Buraya başka kodlar girecek

print $ogrenciler[0][adi];

?>

Kimi zaman buradaki örnekte olduğu gibi, dizinin bütün elemanlarını bir for döngüsüyle değil, foreach

döngüsüyle bulmak daha kolay olabilir. Kısaca belirtmek gerekirse, foreach döngüsü, bir dizi değişkenin bütün

elemanları için, arzu ettiğiniz işi yapar. foreach döngüsünü yazarken komutun kaç kere icra edileceğini bir

sayaçla tutmak gerekmez; çünkü döngü, ona adını verdiğiniz değişkenin içindeki bütün değerler bitinceye kadar

devam edecektir.

foreach ($ogrenciler as $ogrenci) {

print ("$ogrenci<br>");

}

foreach döngüsü, bir dizi değişkenin adını içinden değer çekilecek kaynak olarak ister; bunu "as" (olarak)

kelimesi izler; sonra diziden alınacak her bir değeri geçici olarak tutacak değişkenin adı verilir. Buradaki print()

komutumuz, bu geçici değişkenin tuttuğu değeri Browser'a gönöderecektir. Bu değer ise döngünün her

adımında dizi değişkendeki bir değer yani öğrencilerin listesi olacaktır.

İlişkili dizileri sıralama: asort() ve ksort()

İlişkili dizilerin diğer dizi değişkenlere göre farkı, değerlerinin bir de adı bulunmasıdır. Değerlerin adlarına

anahtar denir. Bir ilişkili diziyi değerlerine göre sıralamak için asort() fonksiyonu kullanılır.

Örnek:

$birinci_dizi = array ( ogr_01=>"Özbay", ogr_02=>"Muharrem" , ogr_013>"Hasan" , ogr_04=>"Şahika");

asort ($birinci_dizi);

PHP, bu diziyi değerler itibariyle alfabetik sıraya sokacaktır. Eğer sıranın değere göre değil de değerlerin

anahtarına (burada ogr_01, ogr_02 olan kelimeler) göre yapılmasını istiyorsak, ksort() fonksiyonunu kullanırız.

Örnek:

Page 11: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

11

$birinci_dizi = array ( ogr_01=>"Özbay", ogr_02=>"Muharrem" , ogr_013>"Hasan" , ogr_04=>"Şahika");

ksort ($birinci_dizi);

PHP, şimdi bu diziyi anahtarlara göre alfabetik sıraya sokacaktır.

Metin Düzenleme ve Düzenli İfadeler

substr($degisken,8);

substr ($degisken, 8, 20);

substr($degisken, -9);

trim ($degisken);

strlen($degisken);

strip_tags($metin) =>> (Metin içersindeki html ve php kodlarını atar)

strtolower($metin) =>> (Küçük harfe çevirir)

strtoupper($metin) =>> (Büyük harfe çevirir)

ucwords($metin) =>> (Sadece Baş Harfleri büyük yapar)

ucfirst($metin) =>>(Sadece cümlenin baş harflerini büyük yapar)

substr($metin,3,5) =>>(3. karekterden itibaren 5 karekter alır)

strpos($metin,”@”) =>>(İstediğim karekterin yerini söyler)

strstr($metin,”@”) =>>(İstediğim karekterden sonraki karekterleri alır)

substr_count($metin,”@”) =>> (İstediğim karekterden kaçtane olduğunu yazar)

$bolumler=explode(“,”,$metin) =>> ( (,) ler arasındaki ifadeleri dizi değişkenine aktarır)

implode(“,”,$bolumlar”) =>> ( Dizideki değerleri (,) işareti ile bağlar)

Tarih ve saat Verisi

PHP, o andaki zaman bilgisini, saat, dakika, saniye ve salise olarak; tarih bilgisini yıl, ay, gün (sayı veya isim

olarak), programımızın herhangi bir yerinde bize bildirebilir. Bu bilgiyi Web sunucusunda istediğimiz anda,

muhtemelen sunucunun bulunduğu bilgisayarın sistem saatinden alacak olan PHP, sunucu programında farklı

bölgesel ayarlar için gerekli düzenleme yapılmışsa, bu imkandan yararlanarak bize sunucunun değil, arzu

ettiğimiz bölgenin saat ve tarihini bildirebilir.

Özellikle Türkiye'de olmayan bir sunucuda bu imkanın bulunup bulunmadığını, ancak sınayarak veya sistem

yöneticisine sorarak öğrenebiliriz. Böylebir sıNama için şu kodları programınızın başına koyun:

<?php

setlocale ("LC_TIME", "TR");

print (strftime ("Türkçe bugün günlerden: %A "));

?>

Browser penceresinde "Türkçe bugün günlerden Sunday" yazısını okursanız, sunucuda Türkçe için bölgesel

ayar desteği yok demektir!

PHP'nin zaman ve tarih belirlemekte kullanabileceğiniz başlıca fonksiyonu getdate() ise şöyle kullanılır.

getdate() Tarih ve saat bilgisini alır ve ve vereceğiniz bir isimdeki dizi-değişkende kaydeder. Örnek:

$saat_tarih = getdate()

Bu durumda, $saat_tarih dizi değişkeninde sırasıyla şu bilgiler yer alır:

32 saniye

57 dakika

6 saat

30 ayın gün sayısı (1-31)

0 haftanın gün sayısı (1-7)

Page 12: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

12

7 ayın sayısı (1-12)

2000 yıl

211 yılın kaçıncı günü

Sunday günün adı

July ayın adı

964929452 Unix sistemlerinde Epoch biçiminde zaman bilgisi

PHP'nin tarih ve saat bilgisini biçimlendirmede yararlandığımız date() fonksiyonunu daha sonra metin

biçimlerdirme bölümünde ele alacağız

Tarih ve Saat Düzenleme

PHP'nin tarih ve zaman bilgisini kullanmamızı sağlayan getdate() fonksiyonunun yanı sıra, elde ettiğimiz

bilgileri çok daha esnek biçimlendirmemizi sağlayan date() fonksiyonu da sık kullanılır. Bu fonksiyon

çağrıldığı yerde bize Unix sisteminin Epoch zaman-tarih damgasını verir. Bu verinin biçimlendirilmesi için

çeşitli parametreler vardır. Bu parametreler, gün adlarının dili ve tarihlerin yazılışı bakımından Web

sunucusunun bulunduğu bilgisayardaki bölgesel ayarlara göre sonuç verir.

date() $tarih date( biçimlendirme_parametreleri );

Burada biçimlendirme_parametleri yerine şunları yazabilirsiniz:

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ısatması: "Cum"

F Uzun ay adı: "Ocak"

h 12 saatlik sistemde saat: "01" - "12"

H 24 saatlik sistemde saat: "00" - "23"

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"

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"

Örnek:

print (date ("l dS of F Y h:i:s A"));

Browser penceresine İngilizce bölgesel ayarlar yapılmış bir bilgisayara kurulu Web sunucusunda: "Sunday 30th

of July 2000 07:51:08 AM" yazdırır.

print (date ("l, d F Y g:i:s"));

Page 13: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

13

Browser penceresine Türkçe bölgesel ayarlar yapılmış bir bilgisayara kurulu Web sunucusunda: "Pazar, 30

Temmuz 2000 07:51:08" yazdırır.

date() ve mktime() fonksiyonlarını birlikte kullanarak geçmiş veya gelecek tarihleri bulma imkanı de vardır.

Örnek:

$yarin = mktime (0,0,0,date("m") ,date("d")+1,date("Y"));

$gecen_ay = mktime (0,0,0,date("m")-1,date("d"), date("Y"));

$gelecek_lyl = mktime (0,0,0,date("m"), date("d"), date("Y")+1);

PHP'de Program Denetimi

if Deyimi

if ( koşullar ) {

koşullar doğru ise yapılacak işlere ilişkin komutlar

}

elseif (diğer koşullar) {

diğer koşullar doğru ise yapılacak işlere ilişkin komutlar

}

else {

diğer her durumda yapılacak işlere ilişkin komutlar

}

<?php

if ( $parola == "" ) {

echo ("Sitemize girmek için parola yazmanız gerekir.<br>");

echo ("Lütfen parolayı yazın! <br>");

}

?>

switch deyimi

switch ( değişken ) {

case KOŞUL-1 ;

Koşul-1 doğru ise yapılacak işlere ilişkin komutlar

break;

case KOŞUL-2 ;

Koşul-2 doğru ise yapılacak işlere ilişkin komutlar

break;

case KOŞUL-3 ;

Koşul-3 doğru ise yapılacak işlere ilişkin komutlar

break;

case KOŞUL-4 ;

Koşul-4 doğru ise yapılacak işlere ilişkin komutlar

break;

......................

......................

default:

diğer her durumda yapılacak işlere ilişkin komutlar

}

switch için kısa yol

<?php

$uyari = ($parola == "" ) ? "Parola yazmanız gerekir" : "Teşekkür ederiz" ;

Page 14: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

14

echo ($uyari);

?>

Bu kod parçacığı, ziyaretçinin parola girip girmediğini $parola değişkeninin içinin boş olup olmadığına bakarak

anlayacak ve $parola değişkenin içi boş ise (yani soru işaretinin sorguladığı durumun doğru olması halinde) iki

nokta üstüskte işaretinden önceki metni $uyarı değişkenin içeriği haline getirecek; $parola değişkeninin içi dolu

ise (yani koşul yerine gelmiyorsa, durum yanlış ise) iki nokta üstüste işaretinden sonraki metni $uyarı

değişkeninin içeriği yapacaktır. Bir sonraki echo() komutu ise içeriği bu sınav sonucuna göre belirlennen $uyarı

değişkeninin değerini Browser penceresinde görüntüleyecektir.

while döngüsü

while (koşul) {

Koşul doğru ise yapılacak işlere ilişkin komutlar

}

<?php

$sayac = 1;

while ( $sayac <= 7 ) {

print ("<font size= $sayac >");

print ("<b><p>İyileri iyilikleri ile alkışlayınız!</b></p>");

print ("</font>");

$sayac ++;

}

?>

do..while

do {

Koşul doğru ise yapılacak işlere ilişkin komutlar

}

while (koşul);

$sayac = 1;

do {

print ("<font size= $sayac >");

print ("<b><p>İyileri iyilikleri ile alkışlayınız!</b></p>");

print ("</font>");

$sayac ++;

}

while ( $sayac <= 7 ) ;

for döngüsü

for ( $yeni_degisken atama ; koşul ; artış basaması ) {

Koşul doğru ise yapılacak işlere ilişkin komutlar

}

<?php

for ($sayac = 1; $sayac <= 7 ; $sayac++ ) {

print ("<font size= $sayac >");

print ("<b><p>İyileri iyilikleri ile alkışlayınız!</b></p>");

print ("</font>");

}

?>

Döngüyü sona erdirmek için: break <?php

$tekrar = 10 :

for ($sayac = 1; $sayac <= $tekrar ; $sayac++ ) {

Page 15: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

15

if ( $tekrar <= 0 )

break;

print ("<font size= $sayac >");

print ("<b><p>İyileri iyilikleri ile alkışlayınız!</b></p>");

print ("</font>");

}

?>

Fonksiyonlar

Fonksiyon Tanımlama ve Çağırma

PHP'de fonksiyonlar function komutu ile oluşturulur. Tanımladığımız fonksiyon, kendisini göreve çağıracak

komuittan, yapacağı işlemde kullanmak üzere değer alacaksa, bu değerlere vereceğimiz değişken isimleri

fonksiyon adının yanında parantez içinde gösterilir. Fonksiyon birden fazla değer bekleyecekse, bunların

değişken adlarının arasına virgül koyarız. Fonksiyona ulaştırılan değerlere argüman denir. Fonksiyon, kendisine

bir değer ulaştırılmasını beklemese bile içi boş parantez koymamız gerekir. Buna göre PHP'de fonksiyon şöyle

yazılır:

function fonksiyonun_adı (argüman1, argüman2, ... argümanN) {

fonksiyonun yapacağı işe ilişkin komutlar

}

Fonksiyon adları, değişken adları ile aynı kurallara tabidir. Fonksiyon içinden fonksiyon çağrılabilir;

fonksiyonların içinde PHP'nin kendi fonksiyonları kullanılabilir. Şimdi, ilk örnek fonksiyonumuzu yazalım.

Yukarıdaki örneklerde, PHP'ye, bir Web sayfası oluştururken HTML ögesi olacak bazı satırların başına <H1>,

satır sonlarına <BR> gibi etiketler koydurduğumuza dikkat etmiş olmalısınız. Bir programda bu işi sık sık

yapacaksak, yani metinlerimiz <BR> ile bitecek, bazı başlıklarımız ise sayfamıza HTML'in başlık etiketleri ile

gönderilecekse, bu etiketleri defalarca yazmamız sadece zorluk değil, fakat aynı zamanda yazım hatasını davet

eden bir davranır olur. PHP'de kendisine vereceğimiz metinleri başlık veya gövde yazısı olarak biçimlendirecek

fonksiyonlar tanımlayarak, programcılıkta daima tehlikeli olan insan unsurunu asgarîye indirebiliriz. Şu

programı yazdir01.php adıyla kaydederek, Browser'da açın:

<?php

function yazdirBR ($metin) {

print ("$metin<br>\n");

}

function yazdirH1 ($metin) {

print ("<h1>$metin</h1>\n");

}

function yazdirH2 ($metin) {

print ("<h2>$metin</h2>\n");

}

function yazdirH3 ($metin) {

print ("<h3>$metin</h3>\n");

}

function yazdirH4 ($metin) {

print ("<h4>$metin</h4>\n");

}

function yazdirP ($metin) {

print ("<p>$metin</p>\n");

}

// Başka kodlar buraya girebilir

yazdirH1("Bu H1 Başlık");

yazdirH2("Bu H2 Başlık");

yazdirH3("Bu H3 Başlık");

Page 16: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

16

yazdirH4("Bu H4 Başlık");

yazdirBR("Bu kendisinden sonra BR olan birinci metin.");

yazdirBR("Bu kendisinden sonra BR olan ikinci metin.");

yazdirP("Bu uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun

uzun uzun uzun uzun uzun uzun uzun bir paragraf metni.");

yazdirP("Bu uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun uzun

uzun uzun uzun uzun uzun uzun uzun bir diğer paragraf metni.");

?>

</BODY>

</HTML>

Bu programda, yazdirBR(), yazdirH1(), yazdirH3(), yazdirH4(), ve yazdirP() adlarıyla altı fonksiyon

tanımladığımızı görüyorsunuz. Bu fonksiyonların hepsi kendilerini göreve çağıran satırdan, kendilerine bir

değer verilmesini istiyorlar ve bu değeri $metin adlı değişkende tutuyorlar. Fonksiyonlarımız tümü de PHP'nin

print() fonksiyonundan yararlanıyor; ancak bu fonksiyonun nasıl kullanılacağını, nasıl işletileceğini de

belirliyorlar. Buna göre bazı fonksiyonlarımız $metin adlı değişkenin değerini önüne ve arkasına bir HTML

etiketi koyarak Browser'a gönderiyor; birisi ise sadece $metin değişkenin tuttuğu değerin sonuna bir HTML

etiketi koyduruyor. Fonksiyonlarımı buradaki örnekte olduğu gibi hemen oluşturulduktan sonra göreve

çağırmayız. Geleneksel olarak, bir programda kullanılacak fonksiyonlar, programın baş tarafında toplanır ve

daha sonra nerede gerekirse orada, çağrılırlar. Fonksiyonları adlarını ve kendilerine verilmesi gereken bir değer

varsa o değeri parantez içinde yazarak çağırırız. Burada olduğu gibi, fonksiyonu göreve çağırırken parantez

içinde değerin kendisini yazabileceğimiz gibi, bu değeri tutan bir değişkenin adını da yazabiliriz.

<?php

function topla ($sayi1, $sayi2) {

$sonuc = $sayi1 + $sayi2;

return $sonuc;

}

function cikart ($sayi1, $sayi2) {

$sonuc = $sayi1 - $sayi2;

return $sonuc;

}

function carp ($sayi1, $sayi2) {

$sonuc = $sayi1 * $sayi2;

return $sonuc;

}

function bol ($sayi1, $sayi2) {

$sonuc = $sayi1 / $sayi2;

return $sonuc;

}

// Başka kodlar buraya girebilir

$sayi1 = 12;

$sayi2 = 5;

print topla($sayi1, $sayi2);

print ("<br>");

print cikart($sayi1, $sayi2);

print ("<br>");

print carp($sayi1, $sayi2);

print ("<br>");

print bol($sayi1, $sayi2);

print ("<br>");

?>

Bu programda, dört aritmetik işlemi yapan dört ayrı fonksiyon tanımlıyoruz. Fonksiyonlarımız kendilerini

göreve çağıran komuttan, kendilerine iki değer vermesini bekliyorlar ve bu değerleri $sayi1 ve $sayi2 adlı

Page 17: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

17

değişkenlere yazıyorlar. Sonra herbiri, kendisinden beklenen aritmetik işlemi yaparak, sonucunu $sonuc adlı

değişkene yazıyor. Burada dikkat edeceğimiz nokta, return komutudur. Bu komut, f onksiyonun elde ettiği

değeri, değeri tutan değişkenin adıyla, fonksiyonu çağırmış olan satıra gönderir. return komutuyla, kendisini

göreve çağıran satıra değil fakat mesela başka bir fonksiyona da değer gönderebiliriz:

return ( baska_fonksiynon ( $degisken)) ;

Fonksiyonun return satırında böyle bir başka fonksiyonun adı yazmıyorsa, bulunan değer göreve çağıran satıra

gönderilir.

Bu program, içine bizim yazdığımız iki değeri hesaplayarak, Browser'a gönderecektir. Ancak bu değerler

ziyaretçinin dolduracağı bir formdan alınabileceği gibi, program tarafından da hesaplanabilir

Fonksiyona varsayılan değer verebiliriz

Buradaki örneklerde tanımladığımız fonksiyonlara bekledikleri değerleri, onları göreve çağırdığımız noktada

biz veriyoruz. Ancak öyle durumlar olabilir ki, fonksiyonun beklediği değerlerden biri veya bir kaçı, göreve

çağıran satır tarafından verilmeyebilir; fonksiyon varsayılan bir değerle çalıştırılabilir.

<?php

function yazdir ($metin, $boyut=3) {

print ("<font size=\"$boyut\">$metin</font><br>");

}

// Başka kodlar buraya girebilir

yazdir("Bu Başlık", 5 );

yazdir("Bu küçük boyutta bir metin", 2);

yazdir("Bu varsayılan boyutta bir metin");

yazdir("Bu çok büyük Başlık", 8);

yazdir("Bu uzun bir paragraf metni. Boyutu varsayılan ölçüde. Bu uzun bir paragraf metni. Boyutu varsayılan

ölçüde. Bu uzun bir paragraf metni. Boyutu varsayılan ölçüde.");

?>

Bu örnekte, daha öncekilerden farklı olarak fonksiyonun, beklediği iki argümandan birisini, fonksiyonu

tanımlarken verdiğimize dikkat edin: " function yazdir ($metin, $boyut=3)" ifadesi, PHP'ye, "Bu fonksiyona

ikinci argüman eksik gönderilirse, telaşa kapılma, onun yerine 3 rakamını kullan!" anlamına gelir. Nitekim,

programın daha ilerdeki bölümlerinde bu fonksiyon görevlendirilirken birinci argümanın değeri olan metin

verildiği halde, iki ayrı yerde ikinci argümanın değeri verilmiyor. Bu iki durumda., PHP, yazdir()

fonksiyonunda varsayılan değer olan 3'ü kullanıyor.

Değişkenlerin kapsamı: global ve static

dört fonksiyonda da aynı değişken adlarını kullanıyoruz ve sonucu aynı isimle print() fonksiyonuna

gönderiyoruz. PHP nasıl oluyor da, aynı isimli değişkenleri buradaki gibi ayrı ayrı değerlerle ele alabiliyor? Bu

sorunun cevabını verebilmek için değişkenlerin kapsam alanına bakmamız ve ve bu arada global deyimi ile

tanışmamız gerekir.

Bir fonksiyonun değişkenleri, sadece o fonksiyonun ömrü süresince vardır; hiç bir fonksiyon diğer bir

fonksiyonun değişkenlerinin veya kendisine verilmemiş bir başka değişkenin değerini bilemez; kullanamaz.

<?php

$metin = "Başkalarına yararlı olmanın sınırı yoktur!";

function yazdir () {

print ("<h1>İşte metin: $metin </h1>");

}

// Başka kodlar buraya girebilir

yazdir();

?>

Normal görünüşlü bir fonksiyon ve kendisinden önce tanımlanmış olan $metin adlı değişkenin tuttuğu değeri,

kendisi göreve çağrıldığı anda Browser penceresinde görüntülemeye hazır görünüyor! Fonksiyonun dışarıdan

argüman istemediğini, kullanacağı print() komutunun konusu olarak $metin değişkeninin değerini kullanacağını

da anlıyabiliyoruz. Fakat bu programı çalıştırdığımızda karşımıza çıkan manzara çok farklı oluyor.

Page 18: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

18

Form'dan GET Metoduyla Gelen Bilgiler

Ziyaretçilerimizin ne tür Browser kullandıklarını HTTP_USER_AGENT değişkeninin değerini alarak ve bu

değerin içinde belirli anahtar kelimeleri aratarak bulabiliriz. Form ile gelen bilgiler, GET metodu ile alınıyorsa,

hem QUERY_STRING, hem de HTTP_GET_VARS dizisine kaydolur. POST metoduyla aldığımız bilgileri

HTTP_POST_VARS değişkenin değerleri arasında buluruz. Bunları öğrendiğimize göre, şimdi gerçekten bir

HTML Form'u yapabil ve bununla ziyaretçimizden bilgi alabiliriz.

Basit bir HTML Form'u tasarlayalım.

<HTML>

<HEAD>

<TITLE>PHP'de Formlar</TITLE>

<meta http-equiv="content-type" content="text/html; charset=ISO-8859-9">

<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">

</HEAD>

<BODY>

<FORM ACTION="formlar02_isle.php" METHOD="GET">

Adınız, Soyadınız: <INPUT TYPE="TEXT" NAME="adi">

<br>

Elektronik Adresiniz: <INPUT TYPE=TEXT" NAME="adres">

<br>

<INPUT TYPE="SUBMIT" VALUE="Gönder Gitsin!"> <INPUT TYPE="RESET" VALUE="Vazgeç,

Gönderme!">

</FORM>

</BODY>

</HTML>

Bu Form'la Web tasarım yarışmasına katılmayacağımıza göre, şimdilik sadece Web Sunucuya bilgi

göndermekte kullanabiliriz. Form'un ACTION parametresine dikkat ederseniz, formlar02_isle.php adlı bir

dosyanın adını göreceksiniz. Bu, ziyaretçinin Gönder düğmesini tıklamasıyla birlikte Form'un içerdiği bilgilerin

METHOD parametresinde pazılı olan GET yöntemiyle Sunucu'da gönderileceği programın adıdır. Bu sayfa,

Browser'da şöyle bir görüntü verecektir:

Şimdi bir an için ne olacağını düşünmeden, formu doldurun ve Gönder düğmesini tıklayın; ve Browser'ınızdaki

hata mesajına aldırmadan, URL adres kutusunda ne yazdığını okuyun:

http://server/formlar02_isle.php?adi=Muharrem+Ta%E7&[email protected]

Bu, HTTP protokolüne göre GET yoluyla bilgi göndermekte kullanılan yöntemin tam bir örneğidir: Browser,

GET yoluyla bilgi göndereceği zaman, Form'daki bütün bilgileri URL-Encoding denen sistemle kodlar;

Form'un alan adlarına o alanlara ziyaretçinin yazdığı bilgileri bir eşittir işaretiyle ekler; bu tür alan=girdi

çiftlerinin arasına & (ve işareti) koyar ve gönderir. Web sunucu, bu bilgileri alınca, önce kendi oluşturduğu bazı

değişkenlere (hem QUERY_STRING, hem de HTTP_GET_VARS dizisine) yazar ve sonra URL hanesinde adı

yazılı olan programa (sayfaya) verir. Şimdi bizim bu bilgilerin gönderildiği PHP programını kendisine verilecek

bu bilgileri işlemeye hazır şekilde yazmamız gerekir.

<?php

print ("Sayın <b>$adi</b>\n\n");

print ("<p>Elektronik adresiniz: <b>$adres </b></p>\n\n");

?>

Şimdi, Browser'ınızda formlar02.htm sayfasını yeniden açın, Form'u doldurun ve gönderin. Açılacak sayfa,

Form'un gönderecğii bilgileri alacak ve kendi görünteleyecektir.

Page 19: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

19

Fakat burada gördüğünüz gibi Sunucu'nun ziyaretçiden gelen bilgileri depoladığı dizileri kullanmadık. Bunu

yaparken, GET ile gelen bilgiler kendisinde verildiğinde PHP programının alan adlarını değişken adı, bunların

karşısında yazılı olan verileri de bu değişkenin değeri saymasından yararlandık. Fakat isteseydik, bu

değişkenleri, Sunucu'nun oluşturduğu dizilerden de alabilirdik. Şimdi hem Form'umuzu geliştirelim; hem de bu

kez okuma işini Sunucu dizisinden yapalım.

<FORM ACTION="formlar03_isle.php" METHOD="GET">

Adınız, Soyadınız: <INPUT TYPE="TEXT" NAME="adi">

<BR>

Elektronik Adresiniz: <INPUT TYPE=TEXT" NAME="adres">

<BR>

Hangi notunuzu öğrenmek istiyorsunuz?

<BR>

<SELECT NAME="hangi_not">

<OPTION>--Lütfen seçiniz--

<OPTION>Sınav 1

<OPTION>Sınav 2

<OPTION>Ortalama

</SELECT>

<BR>

<INPUT TYPE="SUBMIT" VALUE="Gönder Gitsin!"> <INPUT TYPE="RESET" VALUE="Vazgeç,

Gönderme!">

</FORM>

Yeni Form'da yeni bir HTML unsuruna yer verdiğimizi ve SELECT..OPTION etiketi ile ziyaretçiye bir seçim

imkanı verdiğimizi görüyorsunuz. Şimdi, bu Form'un göndereceği bilgileri işleyecek PHP programını yazalım.

Aşağıdaki kodları formlar03_isle.php adıyla kaydedelim:

<?php

foreach ($HTTP_GET_VARS as $anahtar=>$deger ) {

print ("<b>$anahtar = $deger <br>\n");

}

?>

Demiştik ki, Web sunucu, bir istemci Browser'dan kendisine GET yöntemiyle yollanan Form bilgilerini

$HTTP_GET_VARS adlı dizi değişkende tutar. Yine daha önce görmüştük ki dizi değişkenlerin içinde ya sayı

ya da isim olarak bir anahtar ve bu anahtarın temsil ettiği bir değer vardır. Burada, $HTTP_GET_VARS

değişkeninin anahtar ve değerlerini $anahtar ve $deger değişkenlerine => operatörünün yardımıyla, bir foreach

döngüsü içinde atıyoruz. Döngü kullanmamızın sebebi, dizi değişkenin içinde birden fazla anahtar=değer çifti

bulunması ihtimali bulunması; döngü olarak da foreach kullanmamızın sebebi dizide kaç adet anahtar=değer

çifti bulunduğunu bilmememizdir.

Form'dan POST Metoduyla Gelen Bilgiler

HTML Form etiketinin METHOD parametresinin değeri GET olabildiği gibi POST da olabilir; ve HTTP

sunucusu bu yöntemle gelen bilgileri $HTTP_POST_VARS dizi-değişkeninde tutar. Yukarıdaki çok-seçmeli

Form'un FORM etiketini şöyle değiştirerek, formlar03b.htm adıyla kaydedelim:

<FORM ACTION="formlar03a_isle.php" METHOD="POST">

Aynı şekilde son Form işleme programımızda da sadece şu değişikliği yapalım:

foreach ($HTTP_POST_VARS as $anahtar=>$deger ) {

Bu dosyayı da formlar03b_isle.php adıyla kaydedelim. HTML sayfasını açarak formu doldurur ve

gönderirseniz, sonucun metod olarak GET kullanan Form'dan hiç farklı olmadığını göreceksiniz. Çünkü PHP

programı bu Form'un gönderdiği bilgilerin $HTTP_POST_VARS değişkenine yazıldığını biliyordu.

Page 20: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

20

$HTTP_POST_VARS da PHP açısından içinde anahtar=değer çiftleri olan bir dizi-değişkendir; bu değişkenin

değerlerine de tıpkı daha önce olduğu gibi erişiriz.

HTTP açısından GET ile POST'un tek farkı gelen değerlerin nerede nasıl tutuldueğundan ibaret değildir. GET

yönteminde, bir Browser'ın sunucuya gönderebileceği verinin uzunluğu, Sunucunun ayarlarına bağlı olmak

üzere, sınırlıdır. Oysa POST ile alacağımız veri miktarı, sadece sunucunun bulunduğu bilgisayarın sabit disk

alanıyla sınırlıdır. (Tabiî bu günümüzde sınırsızdır, anlamına geliyor!) Bir başka fark, Browser'ın GET yoluyla

gönderdiği verilerin (ve bu arada ziyaretçinin parola olarak yazdıklarında ekrana yıldız olarak çıkan metinler

dahil) tümü, sunucuya, URL-kodlanmış metin olarak, Browser'ın URL adres hanesine de yazılmasıdır. Bir çok

kullanıcı için bu bir güvensizlik belirtisi sayılır. Bu iki unsur Formlarımızda metod olarak GET yerine POST

kullanmanın daha yerinde olduğunu gösterir.

Tedbirli Web programcılığı, özellikle birden fazla tasarımcı ve programcının birlikte çalıştığı ve Formlarda

hangi yöntemin tercih edildiğini bilmenin kolay olmadığı projelerde, Form bilgisi işleyen PHP

programlarımızda Form'da hangi metod kullanılmış olursa olsun, işlyeyici programın iki duruma da elverişli

olmasını sağlamaktır. Sözgelimi son yazdığımız Form işleme programımızı şöyle değiştirirsek, ve Form içeren

HTML sayfasını bu programı veri gönderecek şekilde değiştirirsek (nasıl?), her iki metodla gönderilen verileri

işleme yeteneğine sahip bir program elde etmiş oluruz.

<?php

$form_bilgisi = ( isset($HTTP_POST_VARS ) )

? $HTTP_POST_VARS : $HTTP_GET_VARS;

foreach ($form_bilgisi as $anahtar=>$deger ) {

if ( gettype ($deger ) == "array" ) {

print ("$anahtar == <br>\n");

foreach ( $deger as $yeni_degerler )

print (".. $yeni_degerler<br>");

}

else {

print ("<b>$anahtar = $deger <br>\n");

}

}

?>

MySQL'de bir tablo oluşturmak için gerekli CREATE TABLE komutu şöyle kullanılır:

CREATE TABLE uyeler (adi VARCHAR(30), soyadi VARCHAR(30), üye_no INT ) ;

Bu komutla, "uyeler" isimli üç sütunlu bir tablo oluşturulur: birinci ve ikinci sütunlarda en fazla 30, karakterlik

değişen boyutta alfanümerik değerler yer alırken, üçüncü sütunda sadece tam sayı olan değerler bulunabilir. Bu

komutla oluşturulan tabloya INSERT INTO komutuyla veri girebilirsiniz:

INSERT INTO uyeler (adi, soyadi, uye_no) VALUES ('Muharrem','Taç','1234')

Bir tablonun oluşturulması ile içine veri yerleştirilmesi komutları ayrı ayrı zamanlarda, ayrı işlemler olarak

yapılabileceği gibi, toplu bir metin halinde, otomatik olarak da yapılabilir.

MySQL veritabanından bilgi edinmek için SELECT komutunu kullanırız:

SELECT * FROM uyeler ;

Bu, MySQL'e, uyeler adlı tablodaki bütün değerlerin okunmasını bildirir. Buradaki "*" işareti, "bütün

sütunlardaki bütün değerler" anlamına gelir. Diyelim ki yukardıda oluşturduğumuz tablonun sadece "adi" ve

"soyardi" sütunlarındaki bilgileri almak isteseydik, bu komutu şöyle yazacaktık:

SELECT adi soyadi FROM uyeler ;

Bir veritabanındaki bilgilerin yenileriyle değiştirilmesini, yani veritabanı dosyasının güncelleştirilmesini

UPDATE komutu sağlar. Bu komutu kullanarak veritabanımızdaki bazı kutucukların içindeki bilgileri

Page 21: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

21

değiştirebiliriz. Veritabanı dosyalarını güncelleştirme zorunluğu bulunması ise bize veritabanı tasarımının çok

önemli olduğunu gösterir. Örneğin:

UPDATE uyeler SET adi = "Şahika" ;

Bu komut, veritabanındaki bütün satırlarda, birinci sütundaki değerleri "Şahika" olarak değiştirmekle

sonuçlanırdı. Amacımız bu ise, sorun değil; ancak çoğu kez MySQL'e hangi satırda (veritabanı tekniğindeki

terimle söylersek, hangi kayıtlarda) değişiklik yapılacağını daha ayrıntılı sölememiz gerekir. Veritabanı

dosyamızı oluştururken, her kaydın diğer kayıtlarda olmayan (unique) bir sütun (bunu da veritabanı

tekniğindeki terimle söylersek. alan) bulunmalıdır, ki MySQL'e yapılacak değişikliğin tam yerini söyleyelim.

Örneğin

UPDATE uyeler SET adi = "Şahika" WHERE uye_no = 1234;

MySQL bu komutu alınca sadece üye numarası 1234 olan kişinin (yani uye_no alanındaki değer 1234 olan

kaydın) "adi" alanındaki değeri silecek ve yerine verdiğimiz yeni değeri yazacaktır. Böyle birincil alanı

bulunan, iyi düşünülmüş bir veritabanından seçim yapmak da kolay olur. Örneğin:

SELECT adi soyadi FROM uyeler WHERE uye_no >= 123;

deyimi ile tablomuzda bulunan kayıtlardan sadece üye numarası 123'den büyük olanları seçebiliriz.

Bir MySQL veritabanındaki kaydı silmek için DELETE komutunu kullanırız:

DELETE FROM uyeler WHERE uye_no = 1234;

Veritabanında sadece bir kayıtta üye numarası 1234 olacağı için bu komutla sadece bir satır silinecektir. Bu

komutu, diyelim ki üyelik kaydını yenilememiş kişilerin tümünü silmek için de kullanabiliriz. Veritabanımızda

üyelik kaydının yenilendme tarihini gösteren bir alan bulunduğunu varsayalım:

DELETE FROM uyeler WHERE yenileme_tarihi < 2000-01-31;

Bu komutla, üyeliğini yenileme tarihi 31 Ocak 2000'den eski olan bütün üyelerimizin kaydını veritabanından

silmiş oluruz.

Bu komutların MySQL'in DOS komut işlemcisi ile komutsatırından yapılacağını belirtmemiz gerekir. Bunu

yapabilmek için MySQL Server'ın Windows'da çalıştırılması gerekir. MySQL'in paylaşım sürümünü kullanmak

için Windows sistemlerinde mysqld-shareware.exe programını çalıştırmanız gerekir. Bunun için DOS komut

istemcisi penceresinde "C:/mysql/bin" dizinine giderek, şu komutu vermemiz yeter:

mysqld-shareware

MySQL sürücülerinizin kişisel Web sunucusunda başarıyla çalıştığına, kitapçığın baş tarafında belirttiğimiz

küçük alıştırmayı yaparak emin olduktan sonra gerçek bir veritabanı dosyası yazabiliriz.

Yukarıda gördüğümüz komutları komut istemci satırından tek tek verebileceğimiz gibi, bir düzyazı dosyasında

toplayıp, MySQL programına da otomatik olarak yaptırabiliriz. Bu dosyaya, içindeki verileri alıp veritabanına

boca edeceğimiz için, Dump dosyası denir.

Aşağıdaki metni MySQL programının kurulu olduğu dizindeki /bin/ alt-dizinine (muhtemelen c:\mysql\bin)

veri.dump adıyla kaydedin (Notpad kullanıyorsanız, dosya adına .txt eklendiğine dikkat edin!)

CREATE TABLE calisanlar ( id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (id), adi

VARCHAR(20), soyadi VARCHAR(20), adres VARCHAR(60), pozisyon VARCHAR(60));

INSERT INTO calisanlar VALUES (1 , 'Sahika' ,'Tabak' ,'PCLife Dergisi, Istanbul' , 'Yazar');

Page 22: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

22

INSERT INTO calisanlar VALUES (2 , 'Muharrem' , 'Tac' , 'Işık Kultur Merkezi, Bursa' , 'Yonetmen');

Bu metnin sadece üç satır olmasına, örneğin Notpad'de Düzen menüsünde Sözcük Kaydır maddesinin işaretsiz

olmasına dikkat edin. Daha sonra yine DOS komut istemcisi penceresinde MySQL programının dizininde /bin

alt-dizinine gidin ve şu komutu yazın:

mysqladmin -u root create veri

MySQL veri adlı veritabanının oluuştuğunu bildirecektir. Şimdi içi boş bir veri dosyamız oldu. Yazdığımız

dump dosyasındaki bilgileri veritabanı dosyasına işletmek işini MySQL yapacakatır. Bunu, şu komutla

yapabiliriz:

mysql –u root veri < veri.dump

İşlerin yolunda gidip gitmediğini c:\mysql\data dizininde veri adlı bir klasör oluşturulduğunu kontrol ederek

anlayabiliriz. Bu klasörün içinde calisanlar.frm, calisanlar.isd ve calisanlar.ism adında dosyalar bulunması

gerekir.

PHP-MySQL İlişkisi

Böylece, MySQL ile bir veritabanı dosyası oluşturma işlemi bitmiş oldu. bir PHP programı yazarak bu

veritabanındaki kayıtları okutabiliriz. Bunu yapmadan önce yine hızlı şekilde PHP-MySQL ilişkisinini sağlayan

fonksiyonlara gözatalım.

PHP programlarımızda veritabanından yararlanabilmek için programın önce Web sunucusu aracılığıyla

veritabanı dosyası ile bağlantı kurması gerekir. Başka bir deyişle, PHP programının veri ile arasında bir yol

açması gerekir. MySQL açısından ise bu bağlantı, veri sunucusunda yeni bir oturum açılması anlamına gelir. İki

program arasındaki bu ilişkiyi PHP'nin mysql_connect() fonksiyonu yapar. Bu fonksiyonun alabileceği üç

parametre vardır:

$veri_yolu = mysql_connect ("localhost" , "root" , "parola" );

Burada "localhost" yerine MySQL programının parçası olarak çalıştığı sunucunun adı yazılır. "root" bu

MySQL sunucusunda açılacak oturumun kimin adına açılacağını belirter. "root" kelimesi, sunucunun yönetici

olarak oturum açılacağı anlamına gelir: "parola" kelimesinin yerine de MySQL'i kurarken belirlediğimiz bir

kullanıcı parolası varsa, onu yazarız. Bu komutta yer alan $veri_yolu değişkeni, açılacak veri yolunun, PHP ile

MySQL veritabanı sunucusu arasındaki bağın tanıtıcı işareti olacaktır. Bu bağlantı kurulduktan sonra, açtığımız

veri yolundan gelecek bilgiler ve veritabanına gidecek bilgiler bu değişken aracılığıyla gerçekleşecektir. Veri

sunucusu ile veri yolu bağlantısı kurulursa, bu değişken değer tutar hale gelir; bağlantı kurulamazsa bu

değişken boş kalır. mysql_connect() fonksiyonunun başarılı olup olmadığını bu değişkenin durumunu sınayarak

anlayabiliriz. Örneğin:

$veri_yolu =mysql_connect("kara-murat", "root");

if ( ! $veri_yolu) die ("MySQL ile veri bağlantısı kurulamıyor!);

Burada veri sunucusunun bulunduğu Web sunucusunun adının "kara-murat" olduğuna, ve ooturumun

"root" yetkileriyle açıldığına dikkat edin. İkinci satırdaki if deyimi, $veri_yolu değişkeninin değer içerip

içermediğine bakıyor ve değişkende bir değer yoksa, bağlantı kurma girişini durdurarak, ziyaretçiye hata mesajı

gönderiyor.

Bağlantı başarıyla kurulduktan sonra PHP programı, bu yoldan, veritabanı sunucusuna, hangi veritabanı

dosyasından yararlanmak istediğini bildirmelidir. Buna veritabanı dosyası seçme işlemi denir ve

mysql_select_db() fonksiyonu ile yapılır:

mysql_select_db( "veritabanın_adı" , $veri_yolu ) or die ("Veritabanı açılamıyor!".mysql_error() );

Bu fonksiyonun başarıyla icra edilip edilmediği fonksiyondan dönen değerin true/doğru veya

false/yanlış olmasından anlarız. Bu değer false ise bu deyimin die() bölümü icra edilecek ve Browser

penceresine veritabanının açılamadığı mesajıyla birlikte MySQL'in hata mesajı da gönderilecektir. PHP'nin

MySQL veritabanını seçememesi çoğu zaman kullanıcı yetkilerinin Internet ziyaretçilerini kapsayacak şekimde

Page 23: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

23

düzenlenmemiş olmasından kaynaklanır. Bu durum gerçek Web sunucusunda ortaya çıkarsa, Web sunucusu

yönetimine başvurmak gerekir.

Şimdi bu anlattıklarımızı biraraya getiren kolay bir PHP programıyla biraz önce oluşturduğumuz "veri"

adlı veritabanından bir birinci kişiye ait verileri "okutarak, HTML sayfamızda kullanalım. Aşağıdaki programı,

veri_01.php adıyla kaydedelim:

<?php

$veri_yolu = mysql_connect("kara-murat", "root");

if ( ! $veri_yolu ) die ("MySQL ile veri bağlantısı kurulamıyor!");

mysql_select_db("veri" , $veri_yolu)

or die ("Veritabanına ulaşılamıyor!" . mysql_error() );

$sonuc = mysql_query("SELECT * FROM calisanlar",$veri_yolu);

printf("Adı: %s<br>\n", mysql_result($sonuc,0,"adi"));

printf("Soyadı: %s<br>\n", mysql_result($sonuc,0,"soyadi"));

printf("Adresi: %s<br>\n", mysql_result($sonuc,0,"adres"));

printf("Görevi: %s<br>\n", mysql_result($sonuc,0,"pozisyon"));

?>

Burada, mysql_connect() fonksiyonu ile "kara-murat" isimli sunucuda root adına MySQL sunucu ile

bağ kurduktan sonra mysql_select_db() fonksiyonu ile bu bağı kullanarak veri isimli veritabanından veri

çekeceğimizi bildiriyoruz. Daha sonra mysql_query() fonksiyonu ile bu veritabanındaki “calisanlar” isimli

tablodan “herşeyi” seçiyoruz ve seçilenleri $sonuc dizi-değişkeninde topluyoruz. $sonuc değişkenin değerlerini

görüntülemek için PHP'nin özel bir fonksiyonu olan mysql_result() fonksiyonu kullanıyoruz. Burada metin

biçimlendirmekte yararlandığımız printf() fonksiyonunu daha önce tanımıştık.

mysql_query() fonksiyonu, PHP'nin SQL dilini kullahnarak veritabanı işlemleri yapmasını sağlayan

başlıca aracıdır. Yukarıda kısaca değindiğimiz bütün SQL komutlarıyla yazacağımız bütün "query" deyimlerini

bu fonksiyon ile icra ettireceğiz. mysql_result() ise SQL değil, Data Manipulation Language (DML) denen

başka bir veri-biçimlendirme dilinin inceliklerinden yararlanmamızı sağlar. Burada $sonuç değişkeninde

veritabanı kayıt biçiminde tutulan verileri PHP'nin ve dolayısıyla HTML'in anlayacağı biçime çeviren bu

fonksiyondur.

Şimdi bu programı biraz geliştirilim ve daha önce kendi kendine bilgi veren Form örneğimizi buraya

uygulayalım; ancak bu kez, ziyaretçimizin vereceği bilgileri veritabanına ekleyelim; ve kendi adının

veritabanına eklendiğini sayfadaki tabloyu güncelleyerek bildirelim. Önce şu programı, veri_02.php adıyla

kaydedelim:

<?php

// Form doldurulduktan sonra program buradan başlıyor

if ( isset ( $HTTP_POST_VARS )) {

$veri_yolu = mysql_connect("server", "root");

if ( ! $veri_yolu ) die ("MySQL ile veri bağlantısı kurulamıyor!");

mysql_select_db("veri" , $veri_yolu) or die ("Veritabanına ulaşılamıyor!" . mysql_error() );

$ekle = mysql_query("INSERT INTO calisanlar ( adi , soyadi , adres , pozisyon ) VALUES ('$adi', '$soyadi',

'$adres', '$pozisyon' )", $veri_yolu );

echo ("

<HTML>

<HEAD>

<TITLE>PHP'de Veritabanı</TITLE>

<meta http-equiv='content-type' content='text/html; charset=ISO-8859-9'>

<meta http-equiv='Content-Type' content='text/html; charset=windows-1254'>

");

$sonuc = mysql_query("SELECT * FROM calisanlar", $veri_yolu);

echo ("

<TABLE>

<TR>

<TD><B>Uzmanın Adı</B></TD>

<TD><B>Çalıştığı Yer</B></TD>

Page 24: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

24

<TD><B>Görevi</B></TD>

</TR>

\n");

while ($satir = mysql_fetch_row($sonuc)) {

printf("<TR><TD>%s %s</TD><TD>%s</TD></TD><TD>%s</TD></TR>\n", $satir[1], $satir[2],

$satir[3], $satir[4]);

}

echo ("

</TABLE>\n

<p><B>Teşekkür ederiz.</B></P>

<A HREF='index.php'>Ana sayfaya dönmek için tıklayınız</A>

");

}

// program ilk kez açılıyorsa buradan başlayacak

else {

echo ("

<HTML>

<HEAD>

<TITLE>PHP'de Veritabanı</TITLE>

<meta http-equiv='content-type' content='text/html; charset=ISO-8859-9'>

<meta http-equiv='Content-Type' content='text/html; charset=windows-1254'>

</HEAD>

<BODY>

<p><B>Mevcut Üyelerimiz</B></P>

");

$veri_yolu = mysql_connect("server", "root");

mysql_select_db("veri", $veri_yolu);

$sonuc = mysql_query("SELECT * FROM calisanlar", $veri_yolu);

echo ("<TABLE>

<TR>

<TD><B>Uzmanın Adı</B></TD>

<TD><B>Çalıştığı Yer</B></TD>

<TD><B>Görevi</B></TD>

</TR>

\n");

while ($satir = mysql_fetch_row($sonuc)) {

printf("<TR><TD>%s %s</TD><TD>%s</TD></TD><TD>%s</TD></TR>\n", $satir[1], $satir[2],

$satir[3], $satir[4]);

}

echo ("

</TABLE>\n

<p></p>

<p><B>Siz de aramıza katılmak ister misiniz?</B></P>

<FORM ACTION='$PHP_SELF' METHOD='POST'>

<TABLE>

<TR><TD>Adınız: </TD><TD><INPUT TYPE='TEXT' NAME='adi'></TD></TR>

<TR><TD>Soyadınız: </TD><TD><INPUT TYPE='TEXT' NAME='soyadi'></TD></TR>

<TR><TD>İş Yeriniz: </TD><TD><INPUT TYPE='TEXT' NAME='adres'></TD></TR>

<TR><TDALIGN='left'>Göreviniz: </TD><TD><INPUT TYPE='TEXT'

NAME='pozisyon'></TD></TR>

<TR><TD ALIGN='center'><INPUT TYPE='SUBMIT' VALUE='Defteri imzala!'></TD><TD

ALIGN='center'><INPUT TYPE='RESET' VALUE='Tümünü sil!'></TD></TR>

</TABLE>

</FORM>

</BODY>

Page 25: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

25

</HTML>

");

}

?>

Program, ilk kez çalıştığında, çalışmaya ikinci yarısındaki else() deyiminden itibaren icra ediliyor;

ziyaretçilerimize mevcut üyelerimizin listesini veriyor ve üye olmak isteyip istemediğini soruyor. Arzu edenin

üye olabilmesi için gerekli Form'u da sunuyoruz.

Programın her iki bölümünde de veri okuyan ve bunu görüntüleyen, yani programın canalıcı noktası,

mysql_fetch_row() fonksiyonudur. PHP'nin DML araçlarından olan bu fonksiyonun marifeti, bir

veritabanından elde edilen sonucu satır-satır okumasıdır. Nitekim, burada bu fonksiyondan dönen değeri $satir

adını verdiğimiz dizi-değişkene yazıyoruz ve sonra printf() bu dizinin elemanlarını sırayla Browser penceresine

gönderiyor. (Burada olduğu gibi $satır değişkenin içinde kaç kaç sütun olduğunu bildiğimiz durumlarda printf()

fonksiyonunu döngüsüz kullanmak mümkündür. Ancak veritabanının sütun sayısını bilmiyorsak bunu

sözgelimi count($satir) yoluyla öğrenip, bu bilgiyle bir for döngüsü kurmak yerinde olur.

Programın iki bölümü arasındaki tek fark, $HTTP_POST_VARS dizi-değişkeninin bir değer tutması

halinde (yani ziyaretçi sayfayı açtığında karşısına çıkan Form'u doldurduğu ve gönderdiği zaman) çalışan

birinci bölümünde, mysql_query() fonksiyonunun bu kez veritabanı dosyasına ziyaretçinin verdiği bilgileri

işlemek üzere farklı bir SQL deyimi içermesidir. Nasıl yazıldığını daha önce ele aldığımız bu fonksiyon

"calisanlar" tablosundaki dört alana elimizdeki dört değişkenin değerlerini SQL'in INSERT komutuyla ekliyor.

PHP'nin MySQL ile yapabileceğimiz veritabaynı yönetimi için 20'ye yakın fonksiyonu vardır; MySQL

de bu fonksiyonlar yardımıyla çok sayıda iş yapabilir. Bu konuda ayrıntılı bilgiyi MySQL ve PHP'nin Internet

sitelerin yanı sıra, http://hagen.let.rug.nl/~s0367672/pm_lin_e.htm adresinde bulabilirsiniz.

Bu konuya son verirken, Form örneğindenden farklı olarak yukarıdaki veritabanı örneğinde ziyaretçinin

gireceği bilgilerle ilgili güvenlik önlemleri alınmadığına dikkatinizi çekerim.

Tırnak İşareti Sorunu

PHP4.0'ü tasarlayanlar, özellikle zararlı kodları gizlemekte kötüniyetli kişilerin yararlandığı tek ve çift

tırnak işaretlerinin sisteme zarar vermesini önlemek amacıyla, ziyaretçi girdilerindeki tırnak işaretlerinin

otomatik olarak Escape karakteri ile zararsız hale getirilmesini sağlamış bulunuyorlar. Buna göre bir ziyaretçi

bir forma söz gelimi "PHP'nin yararları" yazacak olursa bu "PHP\'nin Yararları" haline dönecektir. Kimi zaman

çirkin görünse de bu, bir sitenin güvenliği için önemli bir kazançtır.

Bu sistemin işleyebilymesi için sunucu yönetiminin PHP kurulumu sırasında php.ini dosyasında gereken

düzenlemeyi yapmış olması gerekir. Bunun yapılmadığı durumlarda, programcı olarak siz, PHP'nin

değişkenlerin değerlerinde gerektiğinde tersbölü işareti uygulamasını, bu değişkeni addslashes() fonksiyonu ile

birlikte kullanarak çözümleyebilirsiniz. Örnek:

$yeni_degisken = addslashes($eski_degisken)

MySQL Yönetimi

Tüm SQL işlemleri için Php kullanılabileceği gibi veritabanı sunucusunda veritabanı, tablo oluşturmak,

değiştirmek ya da diğer işlemler için farklı arayüzler kullanmak zaman kazandırıcı olabilir. Php kullanılarak

geliştirilen PhpMyAdmin sayesinde web sunucu aracılığıyla tüm MySQL özelliklerini yönetebilmek

mümkündür. Hem Unix hem de Windows ortamları için PhpMyAdmin tavsiye edilir. Windows'da da MySQL'i

yönetmek için myAdmin adındaki yazılım da oldukça kullanışlıdır. MySQL'e ve Php'ye yeni başlayan

kullanıcılar için veritabanını tanımak amacıyla ayrı bir yazılım kullanmaları tavsiye edilebilir.

Php'de kullanılabilecek MySQL Komutları :

mysql_affected_rows : Bir önceki işlemde etkilenen satır sayısı

mysql_close : Belirtilen MySQL bağlantısını kapatır

mysql_connect : Sunucuya veritabanı bağlantısı açar

mysql_create_db : MySQL'de veritabanı açar

Page 26: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

26

mysql_data_seek : Sonuç satırında belirtilen sıraya geçer

mysql_db_query : MySQL'e sorgu gönderir

mysql_drop_db : Sunucudan veritabanı siler

mysql_errno : Bir önceki işlemdeki MySQL hata numarasını verir

mysql_error : Bir önceki işlemdeki MySQL hata mesajını verir

mysql_fetch_array : Sonuçları dizi değişkeni olarak alır

mysql_fetch_field : Sonuç tablosundaki alan adını obje olarak alır

mysql_fetch_lengths : Sonuç tablosundaki dizi değişkenin uzunluğunu alır

mysql_fetch_object : Sonuç satırını obje olarak alır

mysql_fetch_row : Sonuç tablosundan dizi değişkeni olur

mysql_field_name : Sonuç tablsundaki sonucun tablodaki alan adını verir

mysql_field_seek : Sonuç tablosunda sıra indisini belirtilen yere götürür

mysql_field_table : Alan adı verilen sonucun tablo adını verir

mysql_field_type : Sonuçtaki alanın hangi tip olduğunu belirtir

mysql_field_flags : Sonuçtaki alanın hangi tür ekstra parametrelerle tanımlandığını belirtir

mysql_field_len : Sonuçtaki alanın veritabanındaki uzunluğunu verir

mysql_free_result : Sonuçlar için atanan hafızayı boşaltır

mysql_insert_id : Bir önceki veri yerleştirmede oluşan otomatik veri değerini verir

mysql_list_fields : Sonuçtaki tüm tablo alanlarını listeler

mysql_list_dbs : Sunucudaki tüm veritabanlarını listeler

mysql_list_tables : Veritabanındaki tüm tabloları listeler

mysql_num_fields : Sonuçtaki alan sayısını verir

mysql_num_rows : Sonuçtaki satır sayısını verir

mysql_pconnect : Sunucuya kalıcı bir bağlantı tanımlar

mysql_query : Veritabanına sorgu gönderir

mysql_result : Sorgudan dönen sonuçları alır

mysql_select_db : Sunucudan veritabanı seçer

mysql_tablename : Verilen alanın ait olduğu tablo adını verir

ASP.NET TELAFİ NOTLARI

Page 27: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

27

Örnek 1:

degiskenYaz.aspx

<%@ page language="VB" %>

<script runat="server">

sub page_load(obj as object, e as eventargs)

dim merhaba as string

merhaba="Değişkenler ile string ifadelerin gösterimi

farklıdır."

response.write("merhaba" & "<br>")

response.write(merhaba)

end sub

</script>

0 <html><body></body></html>

Page 28: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

28

ÖRNEK 2:

1 <script language="VB" runat="server">

2 sub page_load(obj as object, e as eventargs)

3 dim ad as string

4 ad = "MEB"

5 response.write(ad &"<br>")

6 response.write(AD &"<br>")

7 response.write(aD &"<br>")

8 response.write(Ad &"<br>")

9 end sub

10 </script>

Örnek3:

Page 29: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

29

Page 30: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

30

ÖRNEK 4:

parola.aspx

1 <script language="VB" runat="server">

2 dim parola as string = "192025"

3 sub onaylama(sender as object, e as eventargs)

4 if textbox1.text = parola then

5 label2.text="Parola onaylandı"

6 end if

7 if textbox1.text <> parola then

8 label2.text = "Parola hatası"

9 end if

10 end sub

11 </script>

12 <html><body>

13 <form runat="server">

14 <asp:label id="label1" text="Parola" runat="server"/>

15 <asp:textbox id="textbox1" ontextchanged="onaylama"

runat="server"/>

16 <asp:label id="label2" runat="server"/>

17 </form></body></html>

ÖRNEK 5:

3DefaYaz.aspx

1 <script language="VB" runat="server">

Page 31: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

31

2 dim i as integer

3 sub Page_Load(sender as object, e as eventargs)

4 for i=1 to 3

5 response.write("Türkiye" & "<br>")

6 next

7 end sub

8 </script>

Page 32: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

32

ÖRNEK 6:

Page 33: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

33

ÖRNEK 7:

Page 34: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

34

Grafik ve Animasyon Telafi Notları

Temel kavramlar

Pixel: Ekranda kontrol edilebilen ve resimleri tanımlayabilen en küçük noktalara (ki bu noktalar kare

şeklindedir) pixel denir. Bir pixel kırmızı, yeşil ve mavi renklerin karışımından oluşur. Pixellerin sayısı ve renk

derinliği resmin kalitesini belirler. Pixel tek başına bir ölçüyü ifade etmez. Verilen pixel sayısı belirtilen alan

içerisindeki pixel sayısıdır.

Örneğin; 10 cm’deki pixel sayısı 10 denilirse; 10 cm =100mm,

pixel boyutu: 100/10= 10mm’dir.

PIcture ELement den kısaltılmıştır. Resimlerin tanımlanmasında kullanılan temel birimdir. Pixel tabanlı

resim programlarına Bitmap adı verilir. Dijital ortamda bulunan resimler milyonlarca pixelin bir araya

gelmesiyle oluşurlar. Renk ve şiddet düzeyleri ayrıntıları ve sürekliliği belirler. Her pixel rengini ve şiddetini

ifade eden bir sayı dizisi ile gösterilir.

Şekilde bir resmin temel yapısı görülmektedir. Her bir kare bir pixeli

temsil eder. Pixeller 0 ve 1 değerini alır 1 ve 0 değerleri aydınlık ve karanlık

bölgeleri, nesne ve zemini temsil ederler. Video resimlerinde ışık

seviyelerini daha iyi derecelendirebilmek için pixel başına 1 byte değer

kullanılır. Bununla 0 (siyah) ile 255 (beyaz) arasında tam sayılar elde edilir.

Ara değerlerde gri tonları olarak isimlendirilir. Renkli resimlerde ise bu ara

değerler, kırmızı, mavi, yeşil olan temel renklerin her biri için m*n ‘lik bir

diziye ihtiyaç duyarlar. Dolayısıyla her dizinin gri seviyeleri; kırmızı, mavi ve yeşil pixelde, bileşenlerin

şiddetini belirler.

Buradan çıkarak 8 bitlik bir resimde, her pixel 1 ve 0’lardan oluşur. Bu bitler 28 yani 256 renk meydana

getirir.

Dot Pitch(=DPI (Dot Per Inch)): Pixel’i oluşturan kırmızı, mavi ve yeşil renklerinden her birine dot

(nokta); Aynı renkli noktaların arasındaki uzaklığı belirleyen ifadeye ise dot pitch ismi verilir.

1 inch(=2,54 cm) de noktalanan yada pozlanan pixel sayısına dot per inch adı verilir ki bu noktalama

yada pozlama işlemi yazıcı yada tarayıcı gibi aygıtlarla gerçekleştirilir.

Inch başına düşen nokta sayısı azalırsa kalite kaybı olur, nokta sayısının gereksiz artması ise kaliteli olur

anlamına gelmez. Gereksiz nokta artımı görüntü işlemeyi zorlaştırır, dosya boyutu artar ve görüntü izlenme hızı

düşer.

Çözünürlük: Bir defada ekranda görüntülenebilen pixel sayısıdır. Örneğin; 800*600 çözünürlüğündeki

ekranda 480000 adet pixel bulunmaktadır.

Page 35: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

35

Resolution: Bir resmin pixel yoğunluğu yani PPI (= Pixel Per Inch) 1 inch karede bulunan pixel

sayısıdır. Internette kullanılacak olan resimler için 72 PPI en ideal ölçüdür.

Resim formatları

Kodlama ve sıkıştırma algoritmalarına göre nitelendirilen ve en çok karşılaşılan formatlar şunlardır.

1. BMP: En temel resim formatıdır. Windows işletim sistemi için Microsoft, PCX formatını geliştirerek

oluşturmuştur. 16 ve daha fazla renk kaydedebilen ve herhangi bir sıkıştırma yapmayan, oldukça hızlı ve boyut

olarak hafızada fazla yer kaplayan bir formattır. Pixel derinliği 1-24 bit arasındadır. Windowsta Paint

programının desteklediği dosya formatıdır. Bu formatta renk sayısından ziyade resmin büyüklüğü önemlidir.

Mesela; 16 renkli(24), 800*600 çözünürlüğünde bir BMP dosyası: 800*600*1/2=240000 byte(=240 kbyte) yer

kaplar. (1/2 alınmasının nedeni, 1 byte 8 bittir, 16 renkte 4 bit yani 1 byte’ın yarısı kullanılmıştır.)

2. GIF (Graphics Interchange Format): Internet üzerinde yaygın olarak kullanılan bir format olup az sayıda

renk içeren (1 ve 8 bitlik) dökümanlarda oldukça iyi sıkıştırma sağlar. Buda resmin hızlı görüntülenmesini

doğrudan etki eder. Animasyonlarda zamanlama ve farklı boyutlardaki resimleri bir arada tutma desteği ile

saydam renk tanımlaması ve farklı katmanlarda çalışabilmesi gibi üstünlükleri vardır. LZW isimli sıkıştırma

algoritması kullanmaktadır.

3. JPEG (=JPG (The Joint Photographic Experts Group)): Gerçek renk değerini içeren bir sıkıştırma

formatıdır. Görüntünün algılanması için çok gerekli olmayan detayları atarak sıkıştırma yapılmasından dolayı

kayıplı formatlar arasında yer alır. Kaybedilen detaylar hiçbir şekilde getirilemez. 256 ve daha fazla renk

kullanan resimler için idealdir. Dolayısıyla daha az renk içeren uygulamalarda kaliteyi düşürür ve boyutunda

değişme gerçekleştirmez. 24 bit True Color uygulamalarda resim kalitesinde gözle görülür kayıplar meydana

gelmektedir. Megabyte olan resim boyutlarını duruma göre rahatlıkla kilobyte seviyelerine düşürür.

4. TIFF (=TIF (Tagged Image File Format)): Farklı işletim sistemleri ve uygulamalar arasında kayıpsız ve

esnek bir dosya yapısı sağlayan çalışmalar için kullanılan formattır. Bu format, RGB, CMYK, LAB gibi tüm

renk birimlerini destekler. Pek çok sıkıştırma algoritmasıyla birlikte sık olarak LZW sıkıştırma algoritmasını da

kullanmaktadır. Bu formatı kullanan resimler, herhangi bir uygulama ortamına alındıklarında, görüntünün ve

zeminin renk değerlerini azaltma ve değiştirme olanağına izin verirler. Çok sayıda alfa kanalı desteklemektedir.

JPG’e göre hafızada daha fazla yer kaplamaktadır.

5. PSD: Photoshop uygulamalarına özel bir formattır. Çok sayıda alfa kanalı, path ve layer,’ı destekleyerek,

ikili dosya, indekslenmiş renk, RGB, CMYK, LAB biçimlerinde çalışmaya olanak sağlar. Çalışmaya yönelik

kullanılır, dosya transferine pek olanak sağlamaz.

Page 36: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

36

6. PNG (Portable Network Graphics): 48 bitlik True Color desteği olan formattır. Kayıpsız Wave Table

sıkıştırma yöntemini kullanır. Şu anda mevcut olmayan kayıpsız gerçek renk ve saydamlık bilgilerini içeren

resim kalitesini internete taşımayı amaçlar. Bu saydamlık bilgileri alfa kanalında saklanmaktadır.

7. EPS (Encapsulated Postscript): Vektör ve pixel tabanlı görüntüler için kullanılan formattır. Çoğunlukla

matbaacılar tarafından kullanılır. QuarkXpress, Adobe Photoshop, Illustrator, Corel Draw vb. programlarda

kullanılırlar.

Bunların dışında karşılaşılabilecek resim formatları ise şunlardır: PDF, DCS, PICT, RAW, TARGA,

WBMP…

Photoshop araç kutusu ve işlevleri...

Rectangular Marquee Tool “,adobe photoshop ta kare, dikdörtgen

çizmek için seçili alan yaratir. Klavye kisa yolu gördügünüz gibi ” M ”

tusudur. Kare çizmek istersek, kare seklini seçip, klavyemizdeki Shift

tusuna basili tutarak imajimiz üzerinde mause muzu sürüklemeliyiz.

Aksi halde dikdörtgen alan seçer. Elliptical Marquee Tool , adobe

photoshop da Sayet Daire çizmek istersek, daire seklini seçip yine klavyemizdeki Shift tusuna basili tutarak

imajimiz üzerinde mause muzu sürüklemeliyiz. Aksi halde elips alan seçer.Digerleri, tek pixel olarak yatay (

Single Row Marquee Tool ) veya dikey ( Single Column Marquee Tool) alan seçmeye yarar.

Move Tool“, adobe photoshop ile seçilen bir alani veya Layer ( Katman )’i tasimaniza

yarar.Otomatik seçim özelligi oldugu gibi imajin üzeründe iken sag tus yaparsaniz hangi Layer de

oldugunuzu da belirtir. Klavuzluk görevi vardir. ( V )

Lasso Tool“ adobe photoshop ta kement Araci denir. Imajiniz üzerinde

serbestçe çizerek alan seçebilirsiniz. Resmin belli noktalarini tek tek

seçmenize Polygonal LassoToolile yapabilirsiniz.adobe photoshop Magnetic

Lasso Toolise kontrast ve renge duyarlidir.

Page 37: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

37

Magic Wand Tool“adobe photoshop ta Imaj üzerindeki benzer renkleri seçim aracidir. Benzer

renkleri veya tonlari seçebilirsiniz

Crop Tool“adobe photoshop ta kesme Araci denir. Imajinizdaki fazlaliklari kesmenize, fazlaliklari

temizlemenize ve imajinizi serbest olarak döndürmenize yarar

Slice Tool“adobe photoshop da Dilimleme Araci, imaj üzerinde dilimler yaratmaniza yarar.

Imajinizi dilimlere bölebilirsiniz. Slice Select Tool ise dilimleri seçmemize yarar.

Airbrush Tool“adobe photoshop ile Yumusak kenarli hat seklinde boyama yapmamizi saglar.

(Kalem hareketi saglar.)

Pencil Tool “adobe photoshop da Kalem Aracidir. Airbrush Tool aksine sert

kenarli çizgiler çekmeye yarar. Adindan da anlasilacagi üzere Kalem olarak

kullanilir.Paintbrush Toolise Firça etkisi saglar ve boyama yapmamiza yarar.

Clone Stamp Tool“adobe photoshop da Istampa Araci ile Imajin bir yerine

Alt tusu ile tikladigimizda buranin resim ve doku örnegini alir ve bu örnegi

istedigimiz yere tiklayarak yapistirmamizi saglar. Pattern Stamp Tool ise hafiza-sablon ( Pattern ) olarak

aldigimiz görüntüyü kullanmaya yarar.

History Brush Tool“adobe photoshop ta Imajin arkaplan rengini

kopyalayip imaj üzerine seçilen alani firça etkisiyle boyar. Art History

Toolise kullanilan seçili alandaki farkli boyama stillerine bakip onlari

taklit ederek, firça etkisiyle boyama yapar

Page 38: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

38

Eraser Tool “ adobe photoshop ta Silme Araci, imaj üzerinde

begenmediginiz yerleri siler ancak silerken alttaki Layerdeki rengin vaya

imajin görünmesini saglar. Background Eraser Tool , arkaplan rengini

silerek imaji transparent yapar. Magic Eraser Toolise tek tiklama ile imajin arkaplan rengini silerek imaji

tranparent yapar.

Paint Bucket Tool“adobe photoshop da Boya Kovasi ile seçili alani,

Foreground denen renk degistirme aracindaki üstteki renk ile

doldurabilirsiniz. ” Gradient Tool” ise iki yada daha çok rengin birbiri arasinda yumusak geçis yaparak seçili

alanin boyanmasini saglar.

Blur Tool“adobe photoshop ta Imaja kenarlardan disa dogru belirsizlik hissi verir,

Sharpen Tool , imajin kenarini disa dogru keskinlestirme hissi verir, Smudge Tool

, imajin rengini dagitmak, renkleri birbirine karistirma, leke hissi verir

Dodge Tool“adobe photoshop ile Imajda aydinlanmis-isiklanmis alan saglar,

Burn Tool , Imajda koyulasmis-kararmis alan saglar, Spone Tool, ise imajin

renk doygunlugunu azaltip, çogaltmaya yarar

Path Companent Selection Tool - Direct Selection Tool“, Pen

Tooladobe photoshop ile Imaj üzerinde herhani bir yerde seçim

yaptigimizda vaya bir parça seçtigimizde seçim noktalarini ve

kontrol hatlari ile kontrol noktalarini tespit ederler

Type Tool “adobe photoshop Imaj üzerinde yazi (text) yazmamizi saglar, Photoshop ‘un Yazi

Page 39: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

39

Editörüdür ( T ).

Pen Tool“adobe photoshop Etkili ve denetimli seçim alanlari saglar,

yapilacak imajin düzgün kenar rotalari-yönleri çizmemize izin verir.

Uygulamalarda daha genis açiklanacaktir

Rectangle Tool“adobe photoshop ta en üstte Rectangular Marquee

Tool bölümünde anlattigimiz islemleri yapar. Ancak bu araçin farki

Foreground denen renk degistirme aracindaki üstteki renk ne ise

uygulandigi yerde direkt o rengi kullanir ve maskeleme yapar.

Isterseniz daha sonra üzerine çift tiklayarak rengi degistirebilirsiniz.

Resimde de görüldügü gibi, köseleri yuvarlatilmis, elips, poligonal olarakta kullanilir.Herbirinin kenarliklari,

yariçaplari ” Tool Options Bar ” ‘dan ayarlanabilir. Line Tool , çizgi aracidir. Istenilen kalinlikta düz çizgiler

çizer. Custum Shape Tool , Photoshop’un hazir sekiller listesini kullanmamizi saglar

Notes Tool“adobe photoshop imaja açiklayici yazi ve ses ekler. Ancak bu

eklentiler sadece PSD formatinda etkindirler.

Eyedropper Tool “adobe photoshop imaj için örnek renk seçmemizi

saglar. Imajin hangi rengine tiklarsaniz o rengi alir. Color Sampler Tool,

Info sekmesinde seçilen rengin degerini gösterir. Measure Tool , imajda

iki nokta arasindaki uzakligi ölçmemizi saglar

Hand Tool“adobe photoshop ekrana sigmayacak sekilde büyültülen imajlarda görünmeyen yerlere

Page 40: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

40

ulasmak için kullanilir.( H )

Zoom Tool “adobe photoshop imajin istenilen bölümüne yakinlasmayi veya uzaklasmayi saglar.

(Z )

Paletadobe photoshop(Renk Seçim Araci)”Foreground üstteki rengi, Background alttaki rengi

belirtir. Defaunt renk ( D ) resimdeki gibidir. ‘a tiklayarak da default ayarlara geçilebilir. ‘a

tiklayarak alttaki ve üstteki renkleri yer degistirebilirsiniz( X ). Ancak alttaki daima Background ,

üstteki daima Foreground olacaktir

Quick Mask Mode“adobe photoshop da Hizli maskeleme yapmaya veya maskelemeden çikmaya

yarar.( Q )

Full Screen Mode“adobe photoshop tam ekran yapar, eski hale gelir. ( F )

Jump to ImageReady“adobe photoshop ImageReady ‘ye atlama yapar. Herhangi bir imajiniz açiksa

dogrudan ImageReady ‘e gönderip ayni imajda bütün katmanlari, efektleri ve filitreleri ile

ImageReady ‘de kullanima hazirlar. ( Ctrl+Shift+M )

Photoshop araç kutusu ve işlevleri...

Rectangular Marquee Tool “,adobe photoshop ta kare, dikdörtgen

çizmek için seçili alan yaratir. Klavye kisa yolu gördügünüz gibi ” M ”

tusudur. Kare çizmek istersek, kare seklini seçip, klavyemizdeki Shift

Page 41: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

41

tusuna basili tutarak imajimiz üzerinde mause muzu sürüklemeliyiz. Aksi halde dikdörtgen alan seçer. Elliptical

Marquee Tool , adobe photoshop da Sayet Daire çizmek istersek, daire seklini seçip yine klavyemizdeki Shift

tusuna basili tutarak imajimiz üzerinde mause muzu sürüklemeliyiz. Aksi halde elips alan seçer.Digerleri, tek

pixel olarak yatay ( Single Row Marquee Tool ) veya dikey ( Single Column Marquee Tool) alan seçmeye

yarar.

Move Tool“, adobe photoshop ile seçilen bir alani veya Layer ( Katman )’i tasimaniza

yarar.Otomatik seçim özelligi oldugu gibi imajin üzeründe iken sag tus yaparsaniz hangi Layer de

oldugunuzu da belirtir. Klavuzluk görevi vardir. ( V )

Lasso Tool“ adobe photoshop ta kement Araci denir. Imajiniz üzerinde

serbestçe çizerek alan seçebilirsiniz. Resmin belli noktalarini tek tek

seçmenize Polygonal LassoToolile yapabilirsiniz.adobe photoshop Magnetic

Lasso Toolise kontrast ve renge duyarlidir.

Magic Wand Tool“adobe photoshop ta Imaj üzerindeki benzer renkleri seçim aracidir. Benzer

renkleri veya tonlari seçebilirsiniz

Crop Tool“adobe photoshop ta kesme Araci denir. Imajinizdaki fazlaliklari kesmenize, fazlaliklari

temizlemenize ve imajinizi serbest olarak döndürmenize yarar

Slice Tool“adobe photoshop da Dilimleme Araci, imaj üzerinde dilimler yaratmaniza yarar.

Imajinizi dilimlere bölebilirsiniz. Slice Select Tool ise dilimleri seçmemize yarar.

Airbrush Tool“adobe photoshop ile Yumusak kenarli hat seklinde boyama yapmamizi saglar.

(Kalem hareketi saglar.)

Page 42: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

42

Pencil Tool “adobe photoshop da Kalem Aracidir. Airbrush Tool aksine sert

kenarli çizgiler çekmeye yarar. Adindan da anlasilacagi üzere Kalem olarak

kullanilir.Paintbrush Toolise Firça etkisi saglar ve boyama yapmamiza yarar.

Clone Stamp Tool“adobe photoshop da Istampa Araci ile Imajin bir yerine

Alt tusu ile tikladigimizda buranin resim ve doku örnegini alir ve bu örnegi

istedigimiz yere tiklayarak yapistirmamizi saglar. Pattern Stamp Tool ise hafiza-sablon ( Pattern ) olarak

aldigimiz görüntüyü kullanmaya yarar.

History Brush Tool“adobe photoshop ta Imajin arkaplan rengini

kopyalayip imaj üzerine seçilen alani firça etkisiyle boyar. Art History

Toolise kullanilan seçili alandaki farkli boyama stillerine bakip onlari

taklit ederek, firça etkisiyle boyama yapar

Eraser Tool “ adobe photoshop ta Silme Araci, imaj üzerinde

begenmediginiz yerleri siler ancak silerken alttaki Layerdeki rengin vaya

imajin görünmesini saglar. Background Eraser Tool , arkaplan rengini

silerek imaji transparent yapar. Magic Eraser Toolise tek tiklama ile imajin arkaplan rengini silerek imaji

tranparent yapar.

Paint Bucket Tool“adobe photoshop da Boya Kovasi ile seçili alani,

Foreground denen renk degistirme aracindaki üstteki renk ile

doldurabilirsiniz. ” Gradient Tool” ise iki yada daha çok rengin birbiri arasinda yumusak geçis yaparak seçili

alanin boyanmasini saglar.

Blur Tool“adobe photoshop ta Imaja kenarlardan disa dogru belirsizlik hissi verir,

Sharpen Tool , imajin kenarini disa dogru keskinlestirme hissi verir, Smudge Tool

, imajin rengini dagitmak, renkleri birbirine karistirma, leke hissi verir

Page 43: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

43

Dodge Tool“adobe photoshop ile Imajda aydinlanmis-isiklanmis alan saglar,

Burn Tool , Imajda koyulasmis-kararmis alan saglar, Spone Tool, ise imajin

renk doygunlugunu azaltip, çogaltmaya yarar

Path Companent Selection Tool - Direct Selection Tool“, Pen

Tooladobe photoshop ile Imaj üzerinde herhani bir yerde seçim

yaptigimizda vaya bir parça seçtigimizde seçim noktalarini ve

kontrol hatlari ile kontrol noktalarini tespit ederler

Type Tool “adobe photoshop Imaj üzerinde yazi (text) yazmamizi saglar, Photoshop ‘un Yazi

Editörüdür ( T ).

Pen Tool“adobe photoshop Etkili ve denetimli seçim alanlari saglar,

yapilacak imajin düzgün kenar rotalari-yönleri çizmemize izin verir.

Uygulamalarda daha genis açiklanacaktir

Rectangle Tool“adobe photoshop ta en üstte Rectangular Marquee

Tool bölümünde anlattigimiz islemleri yapar. Ancak bu araçin farki

Foreground denen renk degistirme aracindaki üstteki renk ne ise

uygulandigi yerde direkt o rengi kullanir ve maskeleme yapar.

Isterseniz daha sonra üzerine çift tiklayarak rengi degistirebilirsiniz.

Resimde de görüldügü gibi, köseleri yuvarlatilmis, elips, poligonal olarakta kullanilir.Herbirinin kenarliklari,

yariçaplari ” Tool Options Bar ” ‘dan ayarlanabilir. Line Tool , çizgi aracidir. Istenilen kalinlikta düz çizgiler

çizer. Custum Shape Tool , Photoshop’un hazir sekiller listesini kullanmamizi saglar

Page 44: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

44

Notes Tool“adobe photoshop imaja açiklayici yazi ve ses ekler. Ancak bu

eklentiler sadece PSD formatinda etkindirler.

Eyedropper Tool “adobe photoshop imaj için örnek renk seçmemizi

saglar. Imajin hangi rengine tiklarsaniz o rengi alir. Color Sampler Tool,

Info sekmesinde seçilen rengin degerini gösterir. Measure Tool , imajda

iki nokta arasindaki uzakligi ölçmemizi saglar

Hand Tool“adobe photoshop ekrana sigmayacak sekilde büyültülen imajlarda görünmeyen yerlere

ulasmak için kullanilir.( H )

Zoom Tool “adobe photoshop imajin istenilen bölümüne yakinlasmayi veya uzaklasmayi saglar.

(Z )

Paletadobe photoshop(Renk Seçim Araci)”Foreground üstteki rengi, Background alttaki rengi

belirtir. Defaunt renk ( D ) resimdeki gibidir. ‘a tiklayarak da default ayarlara geçilebilir. ‘a

tiklayarak alttaki ve üstteki renkleri yer degistirebilirsiniz( X ). Ancak alttaki daima Background ,

üstteki daima Foreground olacaktir

Quick Mask Mode“adobe photoshop da Hizli maskeleme yapmaya veya maskelemeden çikmaya

yarar.( Q )

Full Screen Mode“adobe photoshop tam ekran yapar, eski hale gelir. ( F )

Page 45: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

45

Jump to ImageReady“adobe photoshop ImageReady ‘ye atlama yapar. Herhangi bir imajiniz açiksa

dogrudan ImageReady ‘e gönderip ayni imajda bütün katmanlari, efektleri ve filitreleri ile

ImageReady ‘de kullanima hazirlar. ( Ctrl+Shift+M )

Katmanlar

Page 46: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

46

Page 47: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

47

1.1. Flash Yazılımının Kullanım Alanları

Flash ile web üzerinden yayınlanabilen vektör grafikleriyle hazırlanmış durağan

resimler, etkileşimsiz ve etkileşimli canlandırmalar (animasyon) hazırlanabilir. Ayrıca sahip

olduğu dahili programlama dili (ActionScript) yardımıyla yeni başlayanların sıradan

etkileşim denetimleri eklemesini sağlayacak kadar kolay canlandırmalar hazırlanabilir.

Flash, ileri düzey programcılarsa ActionScript yardımıyla çok güçlü etkileşimlere

sahip uygulamalar hazırlama imkanı sağlamaktadır.

Flash, ses dosyası ekleme ve ses denetimi yapma özelliğini de kullanıcılara sunmuştur.

Böylece sesli karikatürler, Flash ile kolayca hazırlanabilir.

Page 48: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

48

1.2. Vektörel Grafikler

Vektörel grafikler, bilgisayar ekranında çeşitli çizimlerin oluşturulması için bir dizi

koordinat bilgisi ve matematiksel formüllerin kullanıldığı grafiklerdir

1.2. Vektörel Grafikler

Vektörel grafikler, bilgisayar ekranında çeşitli çizimlerin oluşturulması için bir dizi

koordinat bilgisi ve matematiksel formüllerin kullanıldığı grafiklerdir.

Vektör grafikleri ölçeklenebilir çizimlerdir. Bunun anlamını şöyle açıklayabiliriz:

Flash’la çizilmiş bir nesne ne kadar büyütülürse büyütülsün görüntüde bir bozulma meydana

gelmez.

Şekil 1.1: Noktasal ve vektörel doğrunun karşılaştırılması

Flash dosyalarına film (movie) adı verilir. Flash’la oluşturulan dosyalar, .fla

uzantısını alırken Flash Player (Flash oynatıcı) aracılığıyla oynatılan dosyalar .swf (‘svif diye

okunur) uzantısını alır. Flash oynatıcı yardımıyla .swf uzantılı filmler web tarayıcısı

üzerinden izlenebileceği gibi bağımsız olarak da çalıştırılabilir.

Page 49: ACCESS - E-RTM · işlemi sabit diskte birden fazla işletim sistemi kullanımı ,belgelerin ,programların,yazılımların,dosyaların düzenli bir şekilde kullanımını sağlar.Bölümleme

49

1: Zaman doğrusu (timeline). Kare kare canlandırma hazırlanırken zaman doğrusu

üzerindeki çerçeveler (frame) kullanılır.

2: Flash film dosyalarında kullanılan katmanlar (layer) gösterilir. Katmanlarla ilgili

işlemler buradan yapılır.

3: Flash’ta grafik çizimleri için gerekli olan araçların bulunduğu araç kutusudur.

4: Flash çalışma alanında ve panellerinde yer alan tüm nesne ve araçların sahip

oldukları özelliklerin gösterildiği Property Inspector (Özellik Sorgulayıcısı) panelidir.

5: Grafikler üzerinde çeşitli renk işlemlerinin yapıldığı Color Mixer (Renk

Karıştırıcısı) ve Color Swatches (Renk Pastelleri) panelleridir.

6: Radyo düğmesi, kaydırma çubuğu (scroll bar), kontrol kutusu (check box), buton

gibi kullanıcı hareketine duyarlı bileşenlerin çalışma sayfasına eklenmesini sağlayan

Components (Bileşenler) panelidir.