Uyarı Türk Bilişim Güçleri Grup

20 Temmuz 2010

Bu Bir Uyarıdır
Hostunuzda Açıklar Vardır :(
Lütfen Hostunuzu değiştirinizi
Türk Bilişim Güçleri Grup

Php’ de Değişkenleri Öğrenelim

20 Temmuz 2010

Değişkenler programlamada en önemli şeylerdir.Değişkenler tıpkı bir taksi gibi müşteri taşırlar.Siz kimi taşımasını istiyorsanız o değişken de o kişi taşır.PHP’de değişken yapabilmemiz için dolar işareti kullanırız.Mesela:
$degisken;
$degisken2;
Burada görüldüğü gibi bir dolar işaretinden sonra herhangi bir adla değişken tanımlayabiliriz.Değikenin içerisine değere atamak ise şöyle olur:
$il=”Rize”;
$ilce=”Kadıköy”;
$belde=”Büyükdere”;
Burada yine dikkat etmemiz gereken bir hususda oluşturduğumuz değişkenler de Türkçe karakter kullanmamalıyız.Değişkenin değerini istediğimiz şekilde yapmamız mümkündür.
$degisken=”Rize”;
$site=”capraz.net”;
$php=”Endüstri müh.”;
print “$site’i $degisken’den bir $php öğrencisi yapmıştır“;.
Bu yazdığımız kodu inceleyelim.İlk önce $degisken diye bir değişken oluşturduk ve içerisine Rize koyduk.Sonra $site diye bir başka değişken oluşturduk ve içerisine de Aspetonline Web Hizmteleri yazdık.Daha sonrada $php diye bir değişken oluşturduk içerisnede İktisat koyduk.En sonunda da bir print komutu ile Bu değişkenleri yazdırdık.Bu programı çalıştırdığımızda browsera ” Aspetonline Web Hizmetleri’ni Rize’den bir İktisat öğrencisi yapmıştır ” yazısı çıkacaktır.
Bazı durumlarda da dolar işaretini kullanmaız gerekecek.Mesela 100$’ın TL karşılığı 1999 yılında 540 000 idi diye bişeyi php de yazdırmamız gerekirse dolar işaretini anlamsızlaştırmamız gerekiyor.Yoksa bu cümleyi direkt print le yazdırırsak cümlemiz çıkmaz.Anlamsızlaştırmak için ters bölü işareti koyuyoruz.
print “100$’ın TL karşılığı 1999 yılında 540 000 idi”;

PHP’de Matematiksel ifadeler:

$sayi1=10;
$sayi2=15;
$sayi3=20;
$sayi4=50;
print ($sayi1+$sayi2+$sayi3+$sayi4);
print ($sayi4+$sayi1*$sayi2);

Burada ki ilk print browsera 95 yazacaktır.Yani PHP bu değişkenlerin hepsini toplayacaktır.Eğer parantezin içerisine birde tırnak koysa idik 10+15+20+50 yazılacaktı.İkinci print te ise browserda 200 yazısı çıkacaktır.Çünkü matematikte işlem sırası çarpmadan başladığı için 200 çıkacaktır.

$a=28;
$b=7;
print $a/$b;

Buda browserda 4′ü verecektir.Dikkat ettiyseniz bunu da parantez içine koymadık.Ama yine aynı işi yaptı.Tırnak içerisine koysaydık 28/7 yazısı çıkacaktı.Yine çift tırnak değil de tek tırnak kullansaydık browserda $a/$b yazacaktı.Çünkü tek tırnak içerisine değişken yapamıyoruz.

$dolar=1350000;
print “500 Dolar =”.($dolar*500);

Burada da $dolar değişkenimize 1350 bin değerini veriyoruz.Sonra print komutu ile tırnak içerisine 500 Dolar = yazıyoruz.Sonra aynı print komutunu kullanabilmemiz için tırnaktan sonra bir nokta koyuyoruz ve sonra çarpma işlemini yapan işlemi giriyoruz.Değişkenlerde en son olarak bazı örnekleri verelim.

print “İyilikleri “İYİLİKLERLE” analım”; //çift tırnağı anlamsızlaştırdık.
print “Adana
Adıyaman
Afyon
Ağrı
Amasya
Ankara
“; /*
işareti HTML kodunda bir alt satıra geçmek için kullanılır.Broweserda hiçbir fark yaşanmaz.*/

ARRAY “Dizi Değişkenlkeri”

Array yani dizi değişkenlerinin çok farklı kullanım alanları vardır.Öyle durumlar olurki değişken tanımlamaya değişken adı bulamazsınız.Mesela yılın aylarını değişken olarak tanımlayacaksınız.Bunun için tek tek $ocak, $şubat diye gitmek hiçde akıllıca değildir.İşte burada array işimizi kolaylaştırıyor.

$aylar = array (
1=> Ocak,
2=> Şubat,
3=> Mart,
4=> Nisan,
5=> Mayıs,
6=> Haziran,
7=> Temmuz,
8=> Ağustoz,
9=> Eylül,
10=> Ekim,
11=> Kasım,
12=> Aralık
);

Biz burada $aylar değişkenine yılın aylarını sıraladık.Peki Ocak vaya nisan yazdırabilmemiz için ne yapmalıyız?Şunu: $aylar[1] bu değişkentahmin ettiğiniz gibi ocak ayını vermektedir. $aylar[9] bu değişkende Eylül ayını temsil etmektedir.Birazdaha ileri düzeye giderek bir örnek verelim.

$kisiler=array (
array(adi=> “Mehmet”,soyadi=> “Şamlı”,cinsiyet=> “Erke”, yer=> “Rize”),
array(adi=> “Öner”, soyadi=> “Günaydın”, cinsiyet=> “Erkek”, yer=> “Eskişehir”),
array(adi=> “Merve”, soyadi=> “Deniz”, cinsiyet=> “Kız”, yer=> “İstanbul”),
array(adi=> “Aysu”,soyadi=> “Kara”,cinsiyet=> “Kız”, yer=> “İstanbul”)
);
print $kisiler[0][yer]; //Bu komut Rize yazdıracaktır.
print $kisiler[2][soyadi]; //Bu komut da Deniz yazdıracaktır.

Görüldüğü gibi PHP sıfırdan saymaya başlıyor.Array ile sıralanan bu dizi değişkenlerin tek tek yazdıracak komutları sıralayalım.

$kisiler[0][adi];
$kisiler[0][soyadi];
$kisiler[0][cinsiyet];
$kisiler[0][yer];

Burada verdiğimiz değişkenler tahmin ettiğiniz üzere ilk array da bulunan kişinin özelliklerini verecektir.Diğer kişilerin özelliklerini öğrenmek için sıfır rakamını değiştirmeniz gerekir.Üstte söylediğimiz gibi PHP sıfırdan saymaya başlar.Dizi değişkenlerde farklı bir örnek daha verelim:

$askadaslar[]=”Ahmet”;
$askadaslar[]=”Öner”;
$askadaslar[]=”İlker”;
$askadaslar[]=”Soner”;
print $arkadaslar[0];

Şimdi bu komut Ahmet yazdıracaktır.Köşeli parantezler içerisine bir değişkende konabilir.PHP’nin bize sunmuş olduğu kolaylık ileriki konularda işimize çok yarayacaktır.Şimdi bu değişkenleri bir döngü ile ekrana basalım.

$sayac=0;
while ($sayac <= 3){
print $askadaslar[$sayac]."
“;
$sayac++;
}

Burada görüldüğü gibi bir while döngüsü ile dizi değişkenleri ekrana basıyoruz.Sayacımızın sıfırdan başlatmamızın nedeni dizi değişkenleri belirten sayının sıfırdan başlamasıdır.Birde burada değişik bir şey kullandık print komutunda.Bu gibi durumlarda tırnak içerisine alınmayan değişkenlerden sonra yazı yazabilmemiz için değişkenden sonra bir nokta koyuyoruz ve sonra tırnaklı yazımıza devam ediyoruz.Eğer sonunda yine değişken koyacaksak yine nokta koyup değişkeni yazarız.Mesela: print $degisken.”Buraya yazı yazarız”.$degisken2; gibi.Birde dizi değişkenlerin sayısını öğrenmemiz için şu komuttan yararlanırız.

print “Brada “. count($askadaslar). “kişi var.”;

Burada count komutu sayı saymaya yarar.Yani $arkadaslar değişkeninden kaç adet olduğunu sayıyor.Bu komutu istediğiniz her yerde kullanmanız mümkün.

Php – MySQL – Apache – PhpMyadmin kurulumu

20 Temmuz 2010

Bir çok kişi kurulumları bilmediği için easyphp veya phptriad gibi otomatik olarak kurulumu ve ayarları yapan programlar kullanmak zorunda kalıyor. Tabi bu programların da dezavantajları var. Kurulumu istediğiniz gibi yapamıyorsunuz. İstediğiniz versiyonları yükleyemiyorsunuz. Ama bu dökümanı okuduktan sonra manuel olarak istediğiniz gibi kurulum yapabileceksiniz.

Öncelikle, şu an en güncel sürümler: Php 5.0.4 Mysql 4.1 Apache 2.0.54 Phpmyadmin 2.6.3pl1
Bu dosyaların kurulumlarını nasıl yapacağınızı anlatacam. Öncelikle bu dosyaları sitelerinden temin ediyoruz.

Php 5.0.4 => http://www.php.net/downloads.php (Hem phpinstaller ı hem de zip paketli olanı indirin)

Mysql 4.1 => http://dev.mysql.com/get/Downloads/M….zip/from/pick (Formu doldurmanıza gerek yok)

Apache 2.0.54 => http://apache.bilkent.edu.tr/dist/ht…x86-no_ssl.msi

Phpmyadmin => http://prdownloads.sourceforge.net/p…1.zip?download

Bu dosyaları indirdikten sonra kuruluma Apache sunucumuzdan başlıyoruz.

1. Apache kurulum dosyasını indirme

Öncelikle web server yazılımı olarak kullanacağımız Apache’nin kurulum dosyasını (apache_2.0.55-win32-x86-no_ssl.msi – 4.2MB) bilgisayarımıza indirmemiz gerek. Bunun için aşağıdaki adreslerden birini kullanabilirsiniz:

* Bilkent Üniversitesi Yansısı

* Bilgi Üniversitesi Yansısı

* Progen Web Hosting Yansısı

2. IIS’nin kapalı olduğundan emin olun

Eğer Windows XP Professional kullanıyorsanız IIS (Internet Information Server) adlı diğer bir web server yazılımı makinanızda çalışıyor olabilir. Apache’yi kurabilmek IIS’yi kapatmanız gerekmekte. Bunun için Control Panel (Denetim Masası) penceresine gidip oradan Administrative Tools (Yönetimsel Araçlar) altından Services (Hizmetler) adlı simgeye çift tıklayarak bilgisayarınızda yüklü olan servisleri görüntüleyebilirsiniz.

Karşınıza gelen hizmet listesinin sonlarına doğru gelip World Wide Web Publishing servisine sağ tıklayarak Stop’u seçelim. Böylelikle IIS kapanmış olacaktır.

3. Apache Kurulumu

İlk adımda indirmiş olduğumuz apache_2.0.55-win32-x86-no_ssl.msi dosyasını çalıştırıyoruz. Karşılama ekranını Next butonuna basarak geçtikten sonra karşımıza lisans sözleşmesi penceresi geliyor. “I accept the terms in the license agreement” seçeneğini işaretleyip tekrar Next butonuna tıklayarak bir sonraki ekrana geçiyoruz. Gelen ekranda Apache hakkında ayrıntılı bilgiler, web adresleri, vs. bulunmakta Next yapıp bunu da geçiyoruz. Karşımıza bu sefer Server Information penceresi geliyor.

Şekildeki gibi üst kısımda bulunan 3 tane metin kutusu dolu olarak gelecektir. Bunlar sırasıyla domaininiz, sunucu isminiz ve yönetici mail adresinizdir. Geliştirme amaçlı bir sunucu kurulumu yaptığımız için bu bilgilerin doğrulu o kadar fazla önemli değildir, bu yüzden olduğu gibi bırakıp Next butonu ile devam ediyoruz. Gelen ekrandaki Typical seçeneğinin işaretli olduğundan emin olup devam ediyoruz. Programın kurulacağı varsayılan yer olan C:Program FilesApache Group yolunu değiştirmeden devam ediyoruz. Install butonuna basmamızla dosyalar kopyalanmaya başlıyor.

Eğer bilgisayarınızda Windows XP Service Pack 2 yüklü ve dahili Firewall açık ise karşınıza aşağıdaki uyarı ekranı gelecektir. Apache’nin çalışabilmesi için bu pencereyi Unblock butonuna basarak kapatıyoruz

En son Finish butonuna basarak kurlumu tamamlıyoruz. Eğer her şey düzgün gitti ise ekranımızın sağ alt köşesinde üzerinde yeşil bir ok bulunan Apache simgesi bize web sunucumuzun çalıştığını gösteriyor olacaktır. Yine de çalıştığını gözlerimizle görmek istersek bir web tarayıcısı açarak adres çubuğuna http://localhost/ yazarak kurulum ile gelen Apache Test Sayfasını görebiliriz.

Not: http://127.0.0.1/ veya http://test/ adresleri de bizi aynı sayfaya, yani web sunucumuzun kökünde bulunan varsayılan sayfaya götürecekti. Burdaki 127.0.0.1 makinemizin IP adresi, test ise makinemizin ismidir.

4. Sunucu kök dizinini değiştirme

Apache kurulumu böylelikle tamamlanmıştır. Web sunucunuzun kök dizini varsayılan olarak C:Program FilesApache GroupApache2htdocs olacaktır. Sıkça bu dizin ile işimiz olacağından böyle uzun bir yol zorluklar çıkaracaktır. Bunu daha ulaşılabilir bir klasör yapmak için Apache konfigürasyon dosyası olan C:Program FilesApache GroupApache2confhttpd.conf dosyasını Notepad gibi bir metin editörü ile açıyoruz. Dosyada CTRL+F tuş kombinasyonunu kullanarak DocumentRoot “C:/Program Files/Apache Group/Apache2/htdocs” metnini aratıyoruz veya CTRL+G yapıp 228. satıra gidiyoruz. Eğer web sunucumuzun yeni kök dizinini C:Apache yapmak istiyorsak bu satırı DocumentRoot “C:/Apache” yapıyoruz ( yerine / kullandığımıza dikkat edin). Bu satırın biraz daha aşağısında (253. satır) bulunan ifadesini de benzer bir şekilde yapıyoruz. Bu dosyada yaptığımız herhangi bir değişikliğin aktif olması için Apache’yi yeniden başlatmamız gerek.

5. Apache’yi yeniden başlatma

Apache’yi yeniden başlatmak için ekranın sağ alt köşesinde bulunan Apache simgesine çift tıklıyarak Apache Service Monitor penceresini açıyoruz.

Apache’yi yeninden başlatmak için sağ taraftan Restart butonuna basıyoruz. Eğer bir hata aldıysak httpd.conf dosyasında yaptığımız ayarların doğruluğunu kontrol edip yeniden

1. PHP kurulum dosyasını indirme

http://www.php.net/downloads.php adresine gidip Windows Binaries başlığı altından PHP 5.1.4 zip package linkine tıklıyoruz. Bulunduğunuz coğrafi bölgeye en yakın yansı karşınıza gelecektir, tr.php.net gibi. Bağlantıya tıklayarak dosyayı indirmeye başlıyoruz.

2. PHP kurulumu

Dosyayı indirdikten sonra herhangi bir dosya sıkıştırma/açma programı ile (WinRAR, WinZip, vs.) dosyayı C:php dizinine açıyoruz. Daha sonra bu klasörde bulunan php.ini-dist dosyasının ismini php.ini şeklinde değiştiriyoruz ve Notepad ile açıyoruz. Dosyadaki doc_root = satırına (464. satır) gidip bu satırı doc_root = “C:Apache” şeklinde değiştiriyoruz. Biraz aşağıda da (471. satır) extension_dir = “./” satırını da extension_dir = “C:phpext” şeklinde değiştiriyoruz.

3. PHP’yi Apache’ye tanıtma

Apache PHP’yi iki farklı şekilde çalıştırabilir, ya CGI binary şeklinde (php-cgi.exe dosyası ile) ya da Apache Module DLL şeklinde (php5apache2.dll dosyası ile). Daha iyi performans almak için PHP’yi Apache’ye DLL Module şeklinde tanıtacağız. Apache’ye kurmuş olduğumuz PHP’yi tanıtmak için C:Program FilesApache GroupApache2confhttpd.conf dosyasına bazı satırlar eklememiz gerek. Bu dosyayı Notepad ile açıp CTRL+F tuş kombinasyonu ile LoadModule diye bir arama yapıyoruz. LoadModule kelimesinin ilk bulunduğu yerin biraz altında LoadModule ile başlıyan bir sürü satır göreceksiniz. Bunların en sonuna gidiyoruz (173. satır) ve aşağıdaki 3 satırı oradaki boşluğa ekliyoruz:

LoadModule php5_module “c:/php/php5apache2.dll”
AddType application/x-httpd-php .php
PHPIniDir “C:/php”

Değişiklikten sonra dosya şu şekilde görünmeli:

Dosyayı kaydedip Apache’yi yeniden başlatıyoruz. Bu değişiklik ile Apache’ye PHP’yi tanıtmış olduk. Eğer bir sorun yok ise hiç bir hata mesajı almadan aşağıdaki ekran gelir. Pencerinin altındaki PHP/5.1.4 Apache’nin PHP’yi tanımış olduğunu doğrular.

4. PHP’nin çalıştığından emin olma

PHP’nin gerçekten çalıştığını görmek için web sunucumuzun kök dizininde, C:Apache, index.php diye bir dosya oluşturun ve içine aşağıdaki PHP kodunu yazın ve kaydedin.

phpinfo();
?>

Daha sonra web tarayıcınızı açarak http://localhost/index.php adresine gidin. Karşınıza aşağıdaki gibi bir ekran çıktı ise PHP kurulumunuz başarılı bir şekilde gerçekleşmiştir.

5. Apache’ye index.php dosyasını varsayılan olarak tanıtma

http://localhost/ adresine gittiğimizde dosyamızın ismi index.php olmasına rağmen Apache bu dosyayı açmaz, bu dizin altındaki tüm dosyaların listesini gösterir. Eğer index.php ismine sahip dosyaların varsayılan olarak açılmasını istiyorsak httpd.conf dosyasında bunu belirtmemiz lazım. Bunun için dosyayı açıyoruz ve DirectoryIndex index.html index.html.var satırına (327. satıra) gidiyoruz. Satırı şu şekilde değiştiriyoruz, dosyayı kaydediyoruz ve Apache’yi yeniden başlatıyoruz.

DirectoryIndex index.html index.html.var index.php

Artık http://localhost/ adresine gittiğimizde otomatik olarak index.php dosyası açılıyor.

1. MySQL kurulum dosyasını indirme

http://dev.mysql.com/downloads/mysql/4.1.html adresine gidip Windows downloads başlığı altındaki Windows Essentials (x86) satırının sağından Download bağlantısına tıklıyoruz. Eğer karşımıza kayıt formu gelirse isteğe bağlı olarak kayıt olabilir veya en aşağıdan bir yansı (mirror) seçerek kurulum dosyamızı (mysql-essential-4.1.18-win32.msi) indirebiliriz.

2. MySQL Server kurulumu

mysql-essential-4.1.18-win32.msi dosyasını çalıştırıyoruz. Windows altında alışık olduğumuz bir kurulum sihirbazı geliyor karşımıza. Next diyelim ve kurulum türü olarak Typical seçip Next yapalım. Daha sonra Install diyelim ve kurulumu başlatalım. Kurulum tamamlandıktan sonra MySQL.com Sign-Up penceresinden en alttaki Skip Sign-Up seçeneğini seçerek devam edelim. MySQL Server’ı konfigüre etmek için Finish butonuna basalım.

3. MySQL Server konfigürasyonu

Gelen sihirbazda Next butonuna basalım ve Detailed Configuration seçeneğini seçerek devam edelim. Sırayla Developer Machine, Multifunctional Database seçeneklerini seçelim. Kurulumun yapılacağı yeri de değiştirmeden Next butonuna basalım. Decision Support (DSS)/OLAP seçeneğini seçelim ve bir sonraki ekranda da bir değişiklik yapmadan devam edelim. Character Set olarak ortadaki Best Support For Multilingualism seçeneğini seçelim. Sonraki ekranda da bir değişiklik yapmadan devam edelim. Bir sonraki ekranda belirlediğimiz root şifresini iki metin kutusuna da girelim ve devam edelim. Son olarak Execute butonuna basarak konfigürasyonu tamamlayalım. Eğer bir hata almaz isek MySQL kurulumunuz başarılı bir şekilde tamamlanmış olacaktır.

Not: Son adımda belirlemiş olduğunuz tüm ayarlar kaydedilecek ve MySQL hizmeti başlatılmaya çalışılacaktır. Bu esnada bilgisayarınızda çalışmakta olan bir firewall var ise uyarı verebilir. MySQL’in çalışması için gerekli olan 3306 numaralı porta erişime izin vermelisiniz. MySQL kurulumuna başlamadan firewall yazılımınızı kapatarak kurulum esnasında çıkabilecek olası bir problemin önüne geçebilirsiniz.

4. PHP’ye MySQL’i tanıtma

Şu ana kadar yaptıklarımızın hiç birinden PHP’nin haberi olmadı. PHP’ye MySQL’i tanıtmak için C:phpphp.ini dosyamızı açıp ;extension=php_mysql.dll satırına (589. satıra) gidiyoruz ve başındaki noktalı virgül karakterini silip satırı extension=php_mysql.dll haline getiriyoruz ve dosyayı kaydedip kapatıyoruz.

Bir sonraki adım için 2 seçeneğimiz var, bunlardan sadece birini yapmanız yeterli olacaktır. Birincisi, C:php klsaöründe bulunan libmysql.dll dosyasını sistem klasörünüze, yani C:WINDOWSsystem32 altına kopyalamanız. İkinci seçenek ise Windows’un PATH ayarlarına C:php klasörünü eklemek. Bunun için masaüstündeki Bilgisayarım simgesine sağ tıklayıp Özellikler seçeneğine giriyoruz. Buradan Gelişmiş sekmesi altındaki Ortam Değişkenleri butonuna tıklıyoruz. Gelen pencerede alttaki listeden Path isimli değişkeni seçip Düzenle butonuna basıyoruz. Karşımıza gelen küçük pencerede alttaki metin kutusunun sonuna gelip eğer bir noktalı virgül karakteri yok ise bir noktalı virgül karakteri koyup daha sonra C:php yazıyoruz. 3 kere Tamam butonuna basarak açmış olduğumuz pencereleri kapatıyoruz. Bu 2. seçenek biraz daha karışık olmasına rağmen libmysql.dll dosyası C:php klasöründe kaldığından dolayı PHP ile ilgili dosyalarınızın bir yerde bulunmasını sağlıyor.

Son olarak Apache’yi yeninden başlatıyoruz ve http://localhost/index.php adresine giderek çıkan sayfada mysql sözcüğünü aratıyoruz. Eğer sayfada mysql sözcüğü bulunuyor ise PHP MySQL ile tanışmış demektir.

Not: Eğer sayfada mysql bulunmuyor ise bilgisayarınızı yeniden başlatıp tekrar deneyin. Böylece Windows yeni eklediğimiz PATH ayarının farkına varacaktır.

PHP Nedir?

20 Temmuz 2010

PHP’ yi kısaca, HTML kodları arasına gömülmüş server tabanlı script dili olarak tanımlayabiliriz. Bu tanımda dikkat etmemiz gereken üç önemli nokta vardır. Birincisi HTML kodları arasına gömülmüş olması. İkincisi server tabanlı olması ve son olarak script dili olması. Şimdi bu üç unsurun ne anlama geldiğine ters sırada bakalım.

Daha önceden basic veya daha farklı bir dilde program yazmış arkadaşlar bilirler. Yazdığımız programın çalıştırılabilmesi için o program diline özgü derleyici tarafından derlenerek exe veya com uzantılı dosya oluşturulması gerekmektedir. Derleme sonucu oluşan exe veya com uzantılı bu dosyaları bir metin editörü ile açtığımızda bir çok anlamsız karakterden oluştuğunu görürüz. Bunun sebebi yazdığımız kodların derlenerek makine diline çevrilmiş olmasıdır. Programcılar arasında bu tarz programlama dillerine gerçek program adı verilmektedir. Gerçek program dillerinde derleme işlemi bir kez yapılır ve bundan sonra derlenen program derleyiciden bağımsız olarak çalışır. Oysa script dili tarzında yazılmış bir program açık koda sahip olmakla ( encode edilmiş php dosyaları hariç metin editörü ile baktığımızda kodu her zaman görebiliriz ) birlikte derleme işlemi programın her çalıştırılmasında yeniden yapılır. Bu nedenle script dili ile yazılmış bir program derleyicisi olmadan hiçbir işe yaramayacaktır. Buda bize şunu gösteriyor ki uygulamalarımıza başlamadan önce PHP derleyicisine sahip olmalıyız. Tamamen ücretsiz olarak dağıtılan derleyicinin son sürümünü http://www.php.net/ adresinden indirebilirsiniz.

Hatırlarsanız PHP’ nin tanımını yaparken diğer bir özelliğinin server tabanlı olması demiştik. Internet tabanlı diğer dillerde olduğu gibi PHP dosyalarını çalıştırabilmek için bir server diğer adıyla sunucuya ihtiyacımız olacaktır. Aslında bu server ihtiyacı dile özgü olmayıp internet alt yapısının server mimarisi üzerine kurulmuş olmasından kaynaklanmakta. Günümüzde server mimarisini bilgisayarlarımızla tanıştırmak için yazılmış bir çok program mevcuttur. Bunların bir kaçına örnek vermek gerekirse Apache , ISS , Xitami, PWS (Personal Web Server) diyebiliriz. Apache, Unix ve türevi Linux işletim sistemi için IIS, NT ve Windows 2000 işletim sistemi için, Xitami ve PSW Windows 9X işletim sistemi için yazılmış sever programlarıdır. Bu tarz programları bilgisayarlarına kurmak istemeyen arkadaşlar internet üzerinde ücretli veya ücretsiz bir çok hazır server bulabilirler. Tabi PHP desteğine sahip olmak koşuluyla. Bunlardan ücretsiz olanlardan http://www.datablocks.net/’ i örnek gösterebiliriz. Ama unutulmamalıdır ki yapacağımız uygulamaları denemek amacıyla internete bağlı kalmak hem zamandan hem de paradan müsriflik demektir. Siz iyisi mi işletim sisteminize uygun server programı nasıl kurulur onu öğrenin. Egemen arkadaşım bunu daha önceden düşünerek sizler için PWS’ nin Kurulumu adı altında bir yazı hazırlamış. Aynı şeyleri tekrarlamanın anlamsız olduğunu düşündüğümden kurulumla ilgili yapmanız gerekenleri PWS’ nin Kurulumu bölümden lütfen okuyunuz.

PHP’ nin bu kadar kolay kullanılabilir bir dil olmasındaki en önemli unsurlardan biri de HTML kodları arasına gömülebilir olmasıdır. PHP kodları ayraçları arasında yer alır. Frontpage veya başka bir editör kullanarak oluşturduğumuz web sayfamızın HTML kodları arasına PHP kodlarını kolaylıkla ekleyebiliriz. Bir browser php uzantılı dosyamızı görüntülemek istediğinde server bunun PHP derleyicisi tarafından derlenmesi gerektiğini anlayarak bu dosyayı PHP derleyicisine gönderir. Php uzantılı dosya yorumlayıcı tarafından okunarak ayraçları arasındaki kodlar değerlendirilir ve bir sonuca bağlanır. Ayraçlar dışında kalan kısımlar hiç bir şekilde işlem görmeden browsera yollanır. Sanırım ne demek istediğimi PHP ile bir iki örnek çalışma yaptıktan sonra daha iyi anlayacaksınız.

PHP’ yi TEST edilim?

Sabırsız arkadaşların , Personel Web Server’ı anlatıldığı biçimde kurarak PHP derleyicisini download ettiklerini biliyorum. Php derleyicisinin kurulumunda bir sorun olmadığını da tahmin ediyorum. Zira kurulum gayet kolay. Download ettiğiniz setup dosyasını çift tıklayarak kuruluma başlayabilirsiniz. Kurulum sonunda bilgisayarınızı yeniden başlatarak PHP’ nin tam anlamıyla çalışmasını sağlayabilirsiniz. Benim gibi şüpheci bir insansanız PHP’ yi test etmeye ne dersiniz? Öncelikle notpad veya başka bir metin editörünü açarak aşağıdaki PHP kodunu olduğu gibi yazalım. Aynı zamanda ilk PHP programımızı yazdığımızın farkında mısınız bilemiyorum.

phpinfo();
?>

Şimdi bu kodu test.php adında kaydedelim. Uzantı çok önemli. Muhakkak php olmalı. (Server üzerinde farklı tanımlamalarla uzantı değişik adlar alabilmektedir.) Yoksa derleyicimiz bunun bir php program dosyası olduğunu anlayamaz. Test.php dosyamızı serverımızın root’ una kopyalamalıyız. PWS’ nin kurulumu sırasında bir değişiklik yapmadıysanız C:Inetpubwwwroot dizinine kopyalayacağınız her dosya serverın rootunda yer alacaktır. Root dizinine yayınlama hakkını verdikten sonra ( PWS’ nin Kurulumu bölümünde anlatılmakta.) Browserımızı açarak adres çubuğuna http://localhost/test.php yazıp Enter’a tıklayalım. Eğer browserımızda aşağıdaki görüntüyü alıyorsak PHP derleyicimiz doğru olarak çalışmaktadır.

TARİH VE SAAT (DateTime) FONKSİYONLARI

04 Haziran 2010

Delphi her türlü tarih fonksiyonu içeren DateUtils unitini içerir. Aşağıda bu fonksiyonlardan en çok ihtiyacınız olacağınızı düşündüklerimi açıkladım. Her fonksiyondan sonra, bir örnek ve örneğin döndüreceği değeri yazdım. Böylelikle konu daha açık anlaşılacaktır.

Günün tarihini “03/09/2002″ Salı, saatini ise “11:05:03″ olarak kabul ettim. Bu fonksiyonları kullanırken uses kısmına DateUtils’i eklemeyi unutmayın.

- CompareDate : verilen iki tarihi karşılaştırır. 1. tarih büyükse 1, küçükse -1, eğer iki tarihte aynı ise 0 değerini döndürür.

CompareDate(Date -2 , Date) = -1

NOT : Tarihler üzerinde direk toplama ve çıkarma işlemi yapabilirsiniz. “Date -2″ iki gün öncesinin tarihini verecektir.  

- CompareDateTime : verilen iki tarih ve saat içeren datetime değerini karşılaştırır. 1. değer büyükse 1, küçükse -1, her iki tarihsaat değeri aynı ise 0 döndürür. Burada değerin aynı olması demek yıl’dan başlayark saliseye kadar tüm değerlerin aynı olması demektir.

- CompareTime : verilen iki saat değerini karşılaştırır. 1. değer büyükse 1, küçükse -1, iki değerde aynı ise 0 döndürür.

- CurrentYear : Geçerli yıl bilgisini 4 karakter olarak döndürür. 2002 gibi.

CurrentYear = 2002

- Date : Geçerli tarihi döndürür.

Date = 03/09/2002 ;

- DateOf : Bir datetime değerini alarak bunun sadece tarih kısmını döndürür. Aslında burada saat bilgisi silinmez, “00:00:00″ yani geceyarısını gösterecek şekilde değiştirilir. Yani tarih ve saat ayrılmaz ikilidir. Sürekli beraberdirler.

DateOf ( Now ) = 03/09/2002

- DateTimeToStr : Verilen bir DateTime değerini string’e çevirir.

DateTimeToStr ( Now ) = ’03/09/2002 11:05:03′

- DateTimeToString : Verilen bir DateTime değerini istediğiniz formatta string’e çevirir.

var
Str : String;
 
DateTimeToString(Str, ‘d mmmm yyyy dddd, hh:nn’, Now);
  ShowMessage ( Str ); = 3 Eylül 2002 Salı, 11:05

- DateToStr : verilen bir DateTime değerini string’e çevirir. Sonuçta sadece tarih verisi bulunur, saat olmaz.

DateToStr ( Date) = ’03/09/2002′

- DayOf : Verilen bir DateTime değerindeki günü döndürür. Yani sonuç 1 ile 31 arasında bir değer olabilir.

DayOf ( Date ) = 3

- DayOfTheMonth : DayOf fonksiyonu ile tamamen aynıdır.

DayOfTheMonth ( Date ) = 3

- DayOfTheWeek : Haftanın kaçıncı günü olduğunu döndürür. Pazartesi ise 1, Salı ise 2, … Pazar ise 7 döndürür.

DayOfTheWeek ( Date ) = 2

- DayOfTheYear : Yılın kaçıncı günü olduğunu döndürür.

; DayOfTheYear ( Date ) = 246

- DayOfWeek : Haftanın kaçıncı günü olduğunu döndürür. Bu fonksiyonun farkı Pazar günü ilk gün sayılır. Yani Pazar ise 1, Pazartesi 2 … Cumartesi ise 7 döndürür.

; DayOfWeek ( Date ) = 3

- DaysBetween : verilen iki DateTime arasındaki geçen gün sayısını döndürür. Bu fonksiyonda saatte önemlidir. 24 saat geçmiş olmalıdır. Yani “02/09/2002 11:54:00″ ile “03/09/2002 11:53:59″ arasındaki gün sayısı 24 saat dolmadığı için 0 dır.

- DaysInAMonth : Verilen yıl ve aydaki gün sayısını döndürür.

DaysInAMonth (2002, 5) = 31

- DaysInAYear : Verilen yılda kaç gün olduğunu döndürür.

DaysInAYear ( 2002 ) = 365

- DaysInMonth : Verilen tarihteki ayın kaç gün olduğunu hesaplar. Yani yıl ve ay değerini verdiğiniz tarihten alır.

DaysInMonth ( Date ) = 30

- DaysInYear : Verilen tarihteki yılda kaç gün olduğunu döndürür. Yani yıl değerini verdiğiniz tarihten alır.

  DaysInYear ( Date ) = 365

- DaySpan : Verilen iki DateTime değeri arasındaki gün farkını bulur. DaysBetween fonksiyonundan farkı, küsratlı değerler döndürür. Yani iki tarih arasında 1 gün 23 saat ve 58 dakika fark varsa DaySpan : “1,998611″ değerini döndürür, DaysBetween gün tamamlanmadığı için 1 değerini döndürür.

- DecodeDate : Verilen DateTime değerini yıl, ay ve gün değerlerini döndürür.

var
Yil, Ay, Gun : word;

DecodeDate ( Date, Yil, Ay, Gun);

- DecodeDateDay : Verilen DateTime değerinin yıl ve verilen tarihinde yılın kaçıncı günü olduğunu döndürür. 2002 ve 246. gün gibi.

- DecodeDateTime : Verilen DateTime değerinin yıl, ay, gün, saat, dakika, saniye, salise değerlerini döndürür.

var
  yil, ay, gun, saat, dakika, saniye, salise : Word;

  DecodeDateTime ( Now, yil, ay, gun, saat, dakika, saniye, salise);

- DecodeDateWeek : Verilen DateTime değerinin yılını, yılın kaçıncı haftası olduğunu ve haftanın kaçıncı günü olduğunu döndürür.

- DecodeTime : Verilen DateTime değerinin saat, dakika, saniye ve salise değerlerini döndürür.

var
saat, dakika, saniye, salise : Word;

DecodeTime ( Now, saat, dakika, saniye, salise);

- EncodeDate : Verilen yıl, ay, gün değerlerini birleştirip oluşan tarih değerini döndürür.

var
Tarih : TDateTime;

Tarih := EncodeDate (2002, 10, 5); = 05/10/2002

- TryEncodeDate : Verilen yıl, ay, gün değerlerini birleştirip oluşan tarih değerini döndürür. Eğer yanlış değerler verilmişse fonksiyon False değerini geri döndürür, tarih başarıyla birleştirilmişse True değerini döndürür.

var
; Tarih : TDateTime;

if TryEncodeDate(2002, 10, 5, Tarih) then
ShowMessage (‘ tarih başarıyla birleştirildi!’);

- EndOfAMonth : Verilen yıl ve ayın son günü ve son anını döndürür.

  EndOfAMonth (2002, 5) = 31/05/2002 23:59:59

- FormatDateTime : Verilen DateTime değerini istediğiniz formatta göstermek için kullanılır.

FormatDateTime (‘d mmmm yyyy’, Date) = ’3 Eylül 2002′

- HourOf, HourofTheDay : Verilen DateTime değerinin saatini döndürür. Yani sonuç 0 ile 23 arasındadır.

; HourOf (Now) = 11

- HoursBetween : Verilen iki DateTime değeri arasında geçen saati döndürür. Fonksiyon 60 dakika tamamlanınca değeri arttırır. Yani 12:00:00 ile 12:59:59 arasındaki fark 0 (sıfır) dır, ancak 13:00:00 olduğunda 1 döndürür.

- HourSpan : Verilen iki DateTime değeri arasında geçen saati döndürür. Yukarıdaki fonksiyondan farkı saat tam olmasa bile değeri küsuratlı olarak döndürür. Mesela 12:00:00 ile 12:59:59 arasındaki saat farkı 0,9998 saat gibi.

- IncMonth : Verilen tarihi, istenilen ay kadar artırır veya azaltır.
o Eğer parametre – verilirse önceki ayları döndürür. Örneğin -1 verilirse bir ay önceki tarihi döndürür.
o Eğer parametre 1 den büyük bir değer verilirse o kadar ay sonrasını döndürür.
o Eğer tarih arttırıldığı zaman verilen gün o ay içerinde yoksa, o ayın son günü döndürülür. Mesela 31/01/2002 tarihini bir ay artırırsanız şubat ayında 31. gün olmadığı için sonuç 28/02/2002 olacaktır.

IncMonth ( Date ) = 03/10/2002

- IncDay : Verilen tarihi istenilen gün kadar artırır veya azaltır. Parametre + verilirse artırır, – verilirse azaltır.

IncDay ( Date ) = 04/09/2002
IncDay ( Date, 3 ) = 06/09/2002
IncDay ( Date, -1) = 02/09/2002

- IncHour : Verilen DateTime değerinin saatinin istenilen değer kadar artırır veya azaltır. Benzer şekilde IncMinute, IncMilisecond, IncSecond fonksiyonları da vardır.

- IncWeek : Verilen tarihi istenilen hafta sayısı kadar artırır veya azaltır. Parametre + verilirse artırır, – verilirse azaltır.

IncWeek ( Date ) = 10/09/2002

- IncYear : Verilen tarihin senesini istediğinz kadar artırır veya azaltır. Parametre + verilirse artırır, – verilirse azaltır.

IncYear ( Date ) = 03/09/2003
IncYear ( Date, -2) = 03/09/2000

- IsInLeapYear : Verilen tarihin artık bir senede (Şubat’ın 29 gün olduğu) olup olmadığını test eder.

  if IsInLeapYear (Date) then
ShowMessage (‘ 2002 senesi artık yıl olmadığı için, bu mesajı asla göremezsiniz!’);

- IsLeapYear : Verilen senenin artık sene (Şubat’ın 29 gün olduğu) olup olmadığını test eder.

if IsLeapYear ( CurrentYear ) then
  ShowMessage (‘ Bu sene Şubat ayı 29 gün çekiyor’);

- IsToday : Verilen tarihin bugünün tarihi olup olmadığını test eder. Aynı gün ise True döndürür.

  if IsToday ( Date ) then
ShowMessage ( ‘Date bugünün tarihini verdiği için bu mesajı görürsünüz’);

- IsValidDate : Verilen yıl, ay, gün değerlerinin geçerli bir tarih olup olmadığını test eder. Örneğin ay 2 ve gün 30 ise, Şubat hiç bir zaman 30 gün olamayacağı için False döndürür.

  if IsValidDate (2002, 10, 1) then
ShowMessage (‘geçerli bir tarihtir’);

- IsValidDateTime : Verilen yıl, ay, gün, saat, dakika, saniye, salise değerlerinin geçerli bir DateTime değeri olup olmadığın test eder. Geçerli ise True, değilse False döndürür.

if not IsValidDateTime ( 2002, 13, 5, 11, 11, 11, 11 ) then
ShowMessage (‘ ay hiç bir zaman 13 olamaz, 1 ile 12 arası bir değer olamlıdır!’);

- IsValidTime : Verilen saat, dakika, saniye, salise değerlerinin geçerli bir saat değeri olup olmadığın test eder. Geçerli ise True, değilse False döndürür.

if not IsValidTime (30, 11, 10, 1) then
ShowMessage (‘ saat 23” ten büyük olamayacağı için geçersiz bir tarihtir’);

- MinutesBetween : Verilen iki tarih arasındaki dakika farkını verir. Dakika tam olduğu zaman değeri artırır. Örneğin 9:00:00 ile 9:00:59 arasındaki farkı 0 (sıfır) olarak döndürür.

- MinuteSpan : Verilen iki tarih arasındaki dakika farkını verir. Dakika tam olmasa bile küsuratlı olarak değeri döndürür. Örneğin 9:00:00 ile 9:00:59 arasındaki farkı 0,998 dakika gibi döndürür.

- MonthOf : Verilen tarihin ayını döndürür. Yani sonuç 1 ile 12 arasında bir değer olmalıdır.

MonthOf ( Date ) = 9

- MonthsBetween : Verilen iki tarih arasındaki ay farkını verir. Ayların uzunlukları eşit olmadığı için bir ay 30.4375 gün olarak belirlenmiştir. Her 30.4375 gün için değer 1 arttırılır.

- MonthSpan : Verilen iki tarih arasındaki ay farkını verir. 1 ay yine 30.4375 gün olarak belirlenmiştir. Süre tamalanmasa bile küsuratlı olarak değeri döndürür.

- Now : Geçerli tarih ve saati döndürür.

Now = 03/09/2002 11:05:03

- NthDayOfWeek : Verilen tarihteki günün, o ay içindeki kaçıncı iş günü olduğunu döndürür. Mesela gün Salı ve ayın ikinci Salısı ise 2 döndürür.

NthDayOfWeek ( Date ) = 1

- StartOfAMonth : Verilen yıl ve aydaki ilk günün ilk anını döndürür.

StartOfAMonth (2002, 5) = 01/05/2002 00:00:00

- StrToDate: Verilen stringi tarih değerine çevirir.

StrToDate (’01/01/2002′) = 01/01/2002

- StrToDateTime : Verilen stringi DateTime değerine çevirir.

StrToDateTime (’01/01/2002 05:22:00′) = 01/01/2002 05:22:00

- Time : Geçerli saati döndürür.

Time = 11:05:03

- TimeToStr : Verilen saat değerini stringe çevirir.

TimeToStr ( Time ) = ’11:05:03′

- Today : Bugünün tarihini döndürür.

  Today = 03/09/2002

- Tomorrow : Ertesi günün (yarın) tarihini döndürür.

  Tomorrow = 04/09/2002

- YearOf : Verilen tarihin yılını döndürür.

  YearOf ( Date ) = 2002

- YearsBetween : Verilen iki tarih arasındaki yıl farkını döndürür.

- Yesterday : Bir önceki günün (dün) tarihini döndürür.

Yesterday = 02/09/2002

DateUtils uniti içinde bunun en az iki katı daha fonksiyon var. Ben en çok kullandıklarımı ve lazım olabileceğini düşündüklerimi burada açıkladım. Listenin tamamını görmek için, Help’ten “date/time routines” kısmına bakın.

DELPHI (DELPHOI) Adı Nereden Geliyor? Nedir?

04 Haziran 2010

DELPHI (DELPHOI)

Antikçağ Yunanlılarının en ünlü kahinlik tapınağı…

Eski Yunan inançlarına göre, tanrılar tanrısı Zeus’ün oğlu Apollon, yılan-canavar Python’un bekçilik ettiği bu tapınağı onu öldürerek ele geçirmiş. Pythia adlı kahin-büyücü kadını buraya yerleştirmiş, bu kadın gelecekten haber soranlara babası Zeus’ün sözcüsü olan Apollon’dan aldığı karşılıkları bildirirmiş. Yarışma yeri Olympia’nın karşısında bir düşünme ve duyma yeri olan Delphoi’nin ortasında kutsal taş Omphales varmış, onun durduğu yer, dünyanın tam ortasıymış.

Gelecekten haber verme alanında ünlü eski Yunan kentlerinin sınırlarını çok aşan ve hemen o çağın bütün uygarlığına yayılan Delphoi tapınağı gerçekte, geleneğin hukuksal bir düzene dönüşmesini gerçekleştirmiştir. Apollon’un yetkesi, Zeus’ün sözcüsü olarak, düzenin sağlanması yolunda tanrılık yasalar oluşturmuştur. Delphoi antikçağ Yunanlılarının bir çeşit kilisesidir. Yunan tarihinde rastlanan ilk mezhep olan Pythagorasçılıkta bu kilisenin ürünüdür.

KAYNAK : Dünya İnançları Sözlüğü – Orhan Hançerlioğlu – Remzi Kitabevi

Delphi’ye Giriş

04 Haziran 2010

NASIL PROGRAMCI OLUNUR

Bana en çok sorulan sorulardan birisi de nasıl programcı olurum. İyi bir programcı olmak için neler yapmam gerekir tarzı sorular. Aşağıya görüşlerimi sıraladım. Eklemek istediğiniz şeyler olursa lütfen bana gönderin.

1. Öncelikle Windows’u çok iyi bilmeniz lazım. Windows’u en ince noktalarına karıştırın. Elinizdeki kitapları okuyun, dergilerin verdiği ipuçlarını deneyin, registry’i karıştırın… öyleki windows’un girmediğiniz köşesi kalmasın.

2. Programcılık tecrübe işidir. Öncelikle bir kaç kitap okuyarak baslamanız iyi olur. Kitapları okuyarak programlama ortamı, Object Pascal’ın yapısı, ve veritabanlarının genel yapısı hakkında bilgi sahibi olabilirsiniz.

3. Delphi ile daha çok veritabanı programcılığı yapılmakta. Veritabanını etkin kullanmak için de SQL’i iyi bilmeniz lazım. Bunun için SQL bilmiyorsanız en kısa zamanda öğrenmelisiniz. Sitemde veritabanı bölümünde SQL ile ilgili yazılar bulabilirsiniz.

4. Artık tüm programlar internet yönüne doğru kaymakta. Bunu da göz önünde bulundurmak lazım.

5. Bundan sonrası tamamen tecrübe işi. Artık program yazarken karşınıza çıkan problemleri çözerek, bilgi haznenizi genişleterek yola devam.

Kolay gelsin. Programcılık yolunda size başarılar dilerim.

Katmanlara Dosya Ekleme (addChild – addChildAt)

28 Nisan 2010

Action Script 3.0′da oluşturduğunuz movie clipleri root’a eklemek için F9′a basarak açacağımız kod ekranından addChild veya addChildAt’i kullanabiliriz.

Aslında yapmaya çalıştığımız şey Actionscript 2.0′da loadMovieNum ile levellere dosya almaya benziyor, yani farklı katmanlara dosya yerleştireceğiz.

Eğer bir oyun yazıyorsak farklı katmanlara farklı objeler koymamız gerekir. Oyunun arka planı daha alt bir seviyede, oyunun karakteriyse daha üst bir seviyede bulunması gerekir.

addChild ve addChildAt Arasındaki fark şudur:

addChild (nesne_ismi) yazdığınızda direk olarak sahnenizde en üste ekler.

Ancak addChildAt(nesne_ismi,0) yazdığınızda nesnenizin hangi katman sıralamasında (dept) olmasını istediğinizi belirtirsiniz, nesneden sonraki 0 rakamı bunu göstermektedir.

Ancak addChildAt kullanırken dikkat etmeniz gereken nokta; yazmış olduğunuz dept numarası sıra ile gitmektedir. Yani eğer dept 1′de herhangi bir nesne yoksa siz addChildAt(nesne_ismi,2) diye bir ekleme yapamazsınız, bu durumda hata alırsınız.

addChild(my_mc);

“addChild(my_mc)” ile de oluşturulan movieclip display list’e eklendi. Artık görsel bir nesne durumunda sahnede görülebilir.

adChildAt’de ekrana eklenecek nesnenin, hangi level’e ekleneceğini belirtmek için kullanılır. En düşük sıra numarası 0′dır. Numarası sıfır olan ekranda en altta görünecektir.

Kullanım şekli şu şekildedir:

addChildAt(my_mc, 10);

COBOL PROGRAMLAMA DİLİ

28 Nisan 2010

COBOL PROGRAMLAMA DİLİ

COBOL: Common Business Oriented Language ticari uygulamaya yönelik yüksek seviyeli bir dildir.

COBOL 1959 senesinde Amerika Birleşik Devletleri hükümetinin de işbirliği ile o zamanın bilgisayar üreticileri ve kullanıcıları tarafından üretildi. İngilizce’ye benzer bir dil olan COBOL 1960 senesinde CODASYL tarafından geliştirilerek COBOL 60 adı altında piyasaya çıktı. COBOL’un çıkış tarihinde bu zamana bir çok COBOL türleri oluşturuldu.COBOL 68,COBOL 74 (Ansi COBOL) vs. Bu gün mikro bilgisayarlar için yapılmış birçok COBOL türleri mevcuttur. Level II COBOL, Microsoft COBOL (MS-COBOL) vs. Bizim burada anlatacağımız ise MS-COBOL dur. MS-COBOL’da neler yapabiliriz, sorusuna ise kısaca şöyle cevap verebiliriz, örneğin Muhasebe, Personel, Stok, Emlak ve akla gelen her türlü ticari programı yazmak mümkündür. MS-DOS programı olduğundan insanlarımız Windows tabanlı programları tercih etmeye başladılarsa da COBOL hala sağlamlığını korumaktadır.

COBOLDA DOSYA YAPISI

Yapı bakımından COBOL da 3 türlü dosya vardır.

a) Sıradan (SEQENTIAL) dosyalar. (Sicil numarası olmayan)

b) Anahtarlı (INDEXED) dosyalar. (Sicil numaralı ve fihrist mevcut)

c) İzafi (RELATİVE) dosyalar. (Sicil numaralı fihrist akılda)

Bundan dolayıdır ki, bir dosyayı yaratırken veya kullanırken bu dosyanın yapısını mutlaka belirmemiz gerekir.

&nbsp;

COBOLDA BİRKAÇ DOSYA KOMUTU

OPEN KOMUTU:

Anlamı: Dosyayı açmak. İlgili dosyayı kullanma izni.

Yazılımı:

INPUT dosya-ismi………….

OUTPUT dosya-ismi……….

INPUT : Okumak amacıyla açılır

OUTPUT : Dosyaya yazmak amacıyla açılır

CLOSE KOMUTU

Anlamı : Dosyayı gelecek sefere kullanabilecek şekilde kapatmak.

Yazılımı: CLOSE dosya-ismi WITH LOCK….

DELETE KOMUTU:

Anlamı : Dosyadaki bir kaydı yok et sil.

Yazılımı DELETE dosya-ismi RECORD

C Veri Tipleri

28 Nisan 2010

Veri tipi (data type) program içinde kullanılacak değişken, sabit, fonksiyon isimleri gibi tanımlayıcıların tipini, yani bellekte ayrılacak bölgenin büyüklüğünü, belirlemek için kullanılır. Bir programcı, bir programlama dilinde ilk olarak öğrenmesi gereken, o dile ait veri tipleridir. Çünkü bu, programcının kullanacağı değişkenlerin ve sabitlerin sınırlarını belirler. C programlama dilinde dört tane temel veri tipi bulunmaktadır. Bunlar:

char

int

float

double

Fakat bazı özel niteleyiciler vardır ki bunlar yukarıdaki temel tiplerin önüne gelerek onların türevlerini oluşturur. Bunlar:

short

long

unsigned

Bu niteleyiciler sayesinde değişkenin bellekte kaplayacağı alan isteğe göre değiştirilebilir. Kısa (short), uzun (long), ve normal (int) tamsayı arasında yalnızca uzunluk farkı vardır. Eğer normal tamsayı 32 bit (4 bayt) ise uzun tamsayı 64 bit (8 bayt) uzunluğunda ve kısa tamsayı 16 biti (2 bayt) geçmeyecek uzunluktadır. İşaretsiz (unsigned) ön eki kullanıldığı taktirde, veri tipi ile saklanacak değerin sıfır ve sıfırdan büyük olması sağlanır. İşaretli ve işaretsiz verilerin bellekteki uzunlukları aynıdır. Fakat, işaretsiz tipindeki verilerin üst limiti, işaretlinin iki katıdır.

NOT

Kısa ve uzun tamsayı tutacak tanımlayıcılar için int anahtar kelimesinin yazılmasına gerek yoktur.

short s; /* short int s; anlamında */

long k; /* long int k; anlamında */

Bir C programı içerisinde, veri tiplerinin bellekte kapladığı alan sizeof operatörü ile öğrenilebilir. İlgi cekici olan, bu alanların derleyiciye ve işletim sistemine bağlı olarak değişiklik göstermesidir. Program 2.1′de, sizeof operatörü kullanılarak, veri tiplerinin bellek uzunlularının nasıl ekrana yazdırılacağı gösterilmiştir. Programın çıktısı, farklı derleyiciler ve işletim sisteminde denendiğinde bu durum daha iyi anlaşılır. Lütfen inceleyin.