Geri Git   ForumSinsi - 2006 Yılından Beri > Bilgisayar,Teknoloji & İnternet Dünyası > Program Anlatımları [Resim & Video]

Yeni Konu Gönder Yanıtla
 
Konu Araçları
dersleri, php

Php Dersleri

Eski 08-17-2012   #1
Prof. Dr. Sinsi
Varsayılan

Php Dersleri





PHP’nin IIS Üzerine ISAPI Modülü Olarak Kurulumu


Geçtiğimiz bir kaç yıl içinde PHP kurulumunu gerçekleştiren hatta apache ile bunu yapan arkadaşlarımıza imrenerek bakardık

Dünden bugüne çok şey değiştiArtık PHP teknolojisinde bir çok ilerleme kaydedildiWindows üzerinde PHP kendi kurulum dosyasıyla gelmekte, herşey hemen hemen otomatik gerçekleşmektedir


Fakat benim gibi default kurulumlara güvenmeden kendi sistem ayarlarını oluşturmak isteyen insanlar, işlemler nekadar kolaylaştırılırsa kolaylaştırılsın bütün sistemlerini kendileri manual olarak ayarlamak isteyeceklerdir


İşte böyle düşünenlere hitap etmeyi düşündüğüm bir yazı hazırladım size


Önce PHP nedir ona bir göz atalım


PHP’ nin en önemli özelliği açık kaynak lisansı ile dağıtılmasıdır Bunun anlamı PHP’ yi internetten ya da arkadaşınızdan rahatlıkla temin edebilirsiniz Bir yasal yükümlülüğü yokPHP en başta HTML içine gömülü olarak yazılan bir dildirDiğer script dilleri (ASP,CFM) gibi sunucu taraflıdır


PHP öğrenmek, eğer C ya da javascript gibi dillerden herhangi birine hakimseniz sorun olmayacaktır


KURULUM

Öncelikle PHP zip dosyasını temin etmeniz gerekmektedir wwwphpnet sitesinde gerekli dosyayı bulabilirsiniz


İndirdiğiniz dosyayı c:PHP klasorune açmakla işe başlayabilirsiniz PHP iki farklı şekilde kurulurSAPI modülü olarak ve CGI olarak Ben şu ana kadar SAPI modulu olarak çalıştım ve çok iyi sonuçlar aldım SAPI modulu yontemi yeni bir yöntemdir ve daha test aşamasındadır


İlk olarak, PHP klasoru altında yer alan “phpini-dist“ dosyasını gerekli ayarları yaptıktan sonra windows PATH altına phpini olarak kaydetmeliyiz


PHPini AYARLARI

error_reporting: PHP içinde bir hata oluştuğunda bu hatanın ekranda raporlama şekli phpini dosyası içindeki bu parametre ile belirlenir Güvenlik açısından, internet üzerinde yer alan bir sunucunun hata raporlaması kısıtlı olmalıdır Program içinde kullanılan değişken isimlerinin raporlanması istenmeyen sonuçlara neden olabilir


Alabileceği parametreler şunlardır



1: Normal Hatalar


2: Normal Uyarılar


4: Okuyuzu hataları


8: Kritik olmayan uyarılar





html_errors : Hata kodları içinde yer alan HTML etiketlerini kapatır


include_path: fopen_with_path() komutunun tarayacağı klasörü belirtir()Nokta geçerli klasör manasındadır


Ör:


include_path=";c:httpdocphp"



memory_limit: Bir php uygulamasının kullanabileceği maksimum belleği belirtir


upload_tmp_dir : Upload yapılırken kullanılacak temp klasorunun ismidir


upload_max_filesize:Upload edilecek dosyanın maximum boyutunu belirtir


safe_mode: PHP’ nin güvenli modda çalışıp çalışmayacağını belirtirTrue ya da False değeri alır


Buna benzer ayarları internetten rahatlıkla bulabilirsiniz Ama önemli olan phpini dosyasını Windows 9X/ME kullanıyorsanız '%WINDOWS%' klasörüne, Windows NT/2000/XP kullanıyorsanız '%SYSTEMROOT%' klasörü altına atmaktır


Bu klasörler windows versiyonuna bağlı olarak değişir Windows 9x/Me için c:windows NT/2000/XP sunucuları için c:winnt ya da c:winnt40


Bu işlemlerden sonra C:PHP klasoru altında yer alan 'php4tsdll' dosyasını aşağıda belirtilen klasörlere atmanız gerekmektedir Bu klasörler: Windows 9X/ME için c:windowssystem Windows NT/2000/XP için c:winntsystem32


Artık klasör ayarları yapıldı, sıra IIS üzerindeki ayarların yapılmasına geldi


Control Panel>Administrative Tools>Internet Services Manager programını çalıştıralımBu arayüz ile IIS üzerinde yönetim işlemlerini gerçekleştirebiliriz




Açılan ekranda sol tarafta yer alan “Internet Information Services” nodu altında yer alan bilgisayar isminin üzerinde çift tıklayıp alt listeyi açalım Burada yer alan “Default Web Page” seçeneğinin üzerinde sağ click yapıp “Properties” menünü seçelim




Açılan bu pencere bilgisayarınız üzerinde çalışan web sayfaları için ortak sayılacak ayarları gerçekleştirmenizi sağlar




Şimdi ayarlarımıza dönelim Baştan söylediğim gibi SAPI modulu olarak kurulum yapacağız Bunun için ilk yapmamız gereken “ISAPI Filters” tabı altında php için bir SAPI filtresi eklemektir




Bu ekranda bulunan “Add” butonuna basarak Filter Name olarak “php”,Executable olarak C:phpsapiphp4isapidll dosyasını seçelim Bu birden fazla SAPI moduluyle gelen php’nin benim kullandığım isapi modülüdürŞu ana kadar bu modulle çok rahat çalıştım




Sonra “Home Directory” tabının altında yer alan “Configuration” butonuna tıklayıp Add diyelim Burada yaptığımız ayarla uzantısı php olan dosyaların php modülü tarafından işlenmesini sağlayacağız Tabi isterseniz kendinize göre uzantı verebilirsiniz






Bu pencerede Executable olarak yine “C:phpsapiphp4isapidll” dosyasını seçelimExtension olarak, bu dosyaların uzantısını belirtir,”php” yazalım”Script Engine” seçeneğinin seçili olmasına dikkat etmeliyiz




Son ayarımız “Documents” tabı altına “indexphp” ifadesini eklemekBu web sitelerinde anasayfa olarak bilinen sayfanın default ismidir Buradaki sıralamaya göre web server’ınız proje klasörü içinde adı geçen dosyaları arayacaktırBu pencereleri onaylayarak çıkalım


Bilgisayar adı üzerinde sağ click yapıp restart IIS yapalım Eğer PHPini dosyasında yanlış bir ayar yaptıysanız ekranda hata mesajı çıkacaktır


Artık php kuruldu demektirÖrnek olarak uzantısı php olan bir dosya açıp aşağıdaki kodu ekleyelim


<?

phpinfo();

?>


phpinfo() php'nin özelliklerini bize verecektir


Alıntı Yaparak Cevapla

Php Dersleri

Eski 08-17-2012   #2
Prof. Dr. Sinsi
Varsayılan

Php Dersleri



Kuşkusuz PHP, Internet omurgasına bağlı sinir hücrelerinin en önemlilerinden biridir Bugün milyonlarca web sitesi PHP aracılığıyla ziyaretçileriyle etkileşimli bir çatı altında çalışabilmektedir PHP, Microsoft gibi bir yazılım devini, betik dilleri yarışında bir çok açıdan geride bırakmış, Perl'den doğmasına rağmen onu da geride bırakmış ve sanal dünyaya en hakim betik dili olmuştur

NET'in, Microsoft tarafından J2EE'ye karşı hamle olarak ileri sürülmesi, özgür yazılımcıları da heyecanlandırmış ve yeni arayışlara itmiştir İşte PHP-GTK bu yeni arayışın ilk ürünlerinden biridir


Tanım: PHP-GTK, GTK+ fonksiyonlarını kullanıp, tek başına çalışan, platform bağımsız, kendilerine ait GUI'lere sahip uygulamar geliştirebilmemiz için ortaya çıkarılmış yeni bir programlama teknolojisidir Her ne kadar bir PHP Eklentisi olarak adlandırılsa da yüklendiği görev üst düzeydir


Bu teknoloji ile C++ içinde GTK fonksiyonlarını kullanmak ile PHP içinde GTK fonksiyonlarını kullanmak artık çıktı üretimi açısından fark etmemektedir


Bununla beraber PHP-GTK istemci taraflı çalışması için tasarlanmıştır Web ortamında kullanılmaz Yukarıda ayrıntılandırdığımız gibi PHP-GTK'nın ortaya çıkış amacı masaüstünde, tarayıcıdan bağımsız, ‘standalone' programlar oluşturmaktır


Bu da nereden çıktı? Güzel güzel Delphi, Visual Basic kullanıyorduk Windows için program yazarken


Linux'ta gcc c derleyicisi neyimize yetmiyordu ki? C 'de yıllardır var olan süper bir dil Hele bir de Ansi C standartlarında yazarsak tam bir çoklu platform programcığına sahip oluruz, değil mi?


Tam olarak değil, hepimiz farkındayız ki Ansi C ile yazdığımız programcıklar bile bazen (benim gibi acemi programcıların bilgisayarında çoğunlukla) iki sistemde çalışmamazlık edebiliyor Bunda işlemci mimarisinden, bağlı kütüphanelerdeki bir virgülün farklılığına kadar bir çok etken söz konusu Bununla beraber Windows için C++ ile geliştirilen bir uygulamanın da ne kadar zor yazıldığını, ne kadar uğraş gerektirdiğini bu işle uğraşan her programcı az çok bilmektedir


PHP geliştiricileri, biz PHP programcıları gibi Windows ve Linux'ta birlikte çalışabilecek bir program yazmak için alt yapının tam olarak oturmadığının farkındaydılar Her ne kadar Ansi C gibi bir standart ile ya da Java gibi çoklu platform teknolojisi ile bunun altından kalkılmaya çalışılıyorsa da eminiz ki Ansi C standartlarında kod yazmak, ya da C++'a göre daha kolay olan fakat geliştirilen uygulamaların hantal çalıştığı Java teknolojisi Ömer Balyalı gibi bir lise öğrencisinin PHP kodlarken yaşadığı rahatlığı ona sunmayacaktı


Andrei Zmievski bunların farkında bir programcı olarak PHP'yi standartlaşan bir betik dili olmaktan çıkarıp tarayıcı bağımsız kullanıcı arabirimi bulunan bir dil haline getirmek için PHP-GTK'yı programlamaya başladı


Çok değil bir kaç yıl önce, Linux popülaritesinin zirvesine ulaşırken, kullanıcılar bir şeylerin eksik olduğunun farkına varmışlardı Penguenin sevimli görünüşü grafik ve kullanıcı arabirimindeki eksiklikler nedeniyle kullanıcıya bir soğukluk veriyordu Fanatikler –ki sisteme yararlıdırlar bence- dışında ki herkes bu gerçeğin farkındaydı


Bunun farkına varan linux topluluğu o sıralarda sisteme bir fotoğraf stüdyosunun dahil edilmesini düşünüyordu GIMP adı verilen projede herşey çok güzel başladı fakat işler düşünüldüğü kadar hızlı ilerlemeyecekti Bir süre aynı yolda devam eden topluluk bir standartlar kütüphanesinin GIMP'in araç kutusu için kesin bir gereklilik olduğu kanısına ulaştılar: GTK+ ( G IMP T ool K it)


GTK+ sadece GIMP ( G NU I mage M anipulation P rogram ) için oluşturulan bir standartlar kütüphanesiydi Fakat bu kütüphane, yazılım dünyasını şaşırtacak biçimde oldukça hızlı ilerledi ve linux dağıtımlarının en önemli iki kabuğundan GNOME'un merkezi bir parçası haline geldi


GTK+'nın hedefe yönelmiş olarak hareket ettiği, yukarıdaki gelişmelerin hemen ardından Windows ve BeOS sürümlerinin çıkması ile gayet anlaşılır hale geldi Bu hamlelerin ardından, Zmievski , PHP ile GTK'yı bir PHP eklentisinde toplayarak geleceğin çoklu platform teknolojisini oluşturmak için kolları sıvadı


ve Bugün Artık elimizde platform bağımsız, kullanıcı arabirimine sahip ve tek başına çalışabilen uygulamaları, Linux, Windows ve BeOS sistemlerinde çalıştıran bir programlama teknolojisinin ilk kararlı sürümü var: PHP-GTK 100


Bu teknolojiyi şu an bilgisayarınıza indirme ve deneme şansına sahipsiniz Benim bilgisayarımda PHP-GTK 10 kararlı sürümü yüklü şu an PHP-GTK şu aşamada GTK+ Sürüm 2x'i desteklemiyor Fakat PHP 5'in çıkmasının ardından bu alanda büyük bir atılım olacak ve PHP-GTK'nın çalışması için gerekli olan bütün teknolojiler birbirlerine entegre olarak aynı anda duyurulacak


>> PHP-GTK Sürüm 100 | http://gtkphpnet/downloadphp


Ben aşağıdaki test uygulamalarını Windows XP üzerine PHP-GTK 100 kurulu makinemde gerçekleştireceğim


Önce biraz kurulumdan bahsedeyim PHP-GTK 100 kararlı sürümünü bilgisayarınıza indirdikten sonra 3 dizin ile karşılaşacaksınız; (İşlemlere başlamadan önce PHP dizininizin yedeğini alın, ve onu ortadan kaldırın)


- Winnt dizinindeki phpini dosyasını kendi phpini dosyanızla değiştirin (Unutmadan: phpini dosyanıza çok fazla ayar girmişseniz readmetxt dosyasını takip edin ve geçerli phpini ayarlarınızı koruyarak nasıl PHP-GTK kuracağınızı öğrenin)


- PHP4 dizinindeki dosyaları X:PHP dizinine kopyalayın (X sürücü harfiniz olmak üzere)


İşlem tamam Şimdi bir test yapalım Aşağıdaki komutu sürücü harfini kendi sürücünüzünki ile değiştirerek girin




İşlem düzgün tamamlanmış ise karşınızda şunu bulacaksınız;




Ne kadar hoş, öyle değil mi? En sevdiğim betik dilinden böyle bir çıktı görmek inanın beni çok mutlu etti Evet, eminim ki kodları merak ediyorsunuz Bu programın kodlarını görmek için x:php esthellophp dosyasını açabilirsiniz Fakat bence şimdi açmayın


Çünkü bu yazının sonuna geldiğinizde orada gördüklerinizi anlıyor olacaksınız


Her ne kadar burada PHP-GTK'yı, -içinde PHP olan bir teknolojiyi- anlatıyorsakta bunun istemci taraflı bir teknoloji olduğunu tekrar ifade etmekte fayda görüyorum


Başa dönecek olursak, artık web için yazacağınız bir muhasebe uygulamasını istemci tarafında tek başına (standalone) çalışır olarak bulabileceksiniz


Başta diğer diller ile PHP-GTK'nın çoklu platform bağlamında bir karşılaştırmasını yaptık Şimdi de istemci taraflı diller bağlamında olaya yaklaşalım;


Visual Basic ve Delphi kolaylığı, hızlı çıktı üretimi ve görsel avantajları ile yeni bir programcının programlamaya ilk adımı atmasını sağlayan geliştirme ortamlarıdır Fakat bu diller ile ciddi projelere adım atmak ne kadar doğru, tartışılır C++ her açıdan üst düzey bir dil, fakat yukarıda da belirttiğim gibi bu dil ile windows uygulamaları geliştirmek ciddi anlamda çaba ve iyi bir ekip çalışması gerektiriyor


Java, C++'a göre daha kolay öğrenilir ve daha kolay kodlanır Fakat onun da hantallığı ayrı bir dert


Visual Studio ile yaptığımız projelerdeki sırt yükümüz framework ise programcının ortam seçmesinde olumsuz bir etkiye sahip


İşte bütün bu dillerin yanında PHP-GTK'nın niteliğini düşünecek olursak, PHP-GTK henüz tam anlamıyla bir standart değil Eksikleri var Fakat GTK+'nın gelişimi göz önüne alındığında hızlı ilerleyeceği kesin Ben PHP 5 ile PHP-GTK'nın da büyük bir atılım yapacağı kanaatindeyim Bunun yanısıra PHP-GTK'nın yapısal olarak PHP'den çıkan bir dil olması, şüphesiz PHP bilenlerin bu dile geçişini kolaylaştıracak bir etken


Tabii görsel arayüz oluşturmak için birkaç yeni şey öğrenmemiz gerekecek Sanılanın aksine PHP-GTK'ya başlayacak bir programcının PHP'yi biliyor olması kesin bir avantaj sağlar Örneğin PHP'de üst düzey bir programcı olan Ertuğrul Yıldırım (HunTER) dostumun PHP-GTK ile ortaya nasıl programlar çıkarabileceğini gerçekten çok merak ediyorum


Evet, temel noktaları bitirdik Buraya kadar PHP-GTK'nın ne olduğunu, hangi aşamalardan geçerek bugüne geldiğini ve ne olmadığını anladık ve onu bilgisayarımıza kurup küçük de bir uygulama çalıştırdık Sadece gelecekte ne olabileceğine değinmedik, fakat bu yazıyı okuduktan sonra gelecekte ne olabileceği kafanızda belirecektir

Alıntı Yaparak Cevapla

Php Dersleri

Eski 08-17-2012   #3
Prof. Dr. Sinsi
Varsayılan

Php Dersleri



PHP-GTK : TERİMLER

PHP-GTK hakkında birşeyler okurken ya da bir yerde konuşulurken duyma ihtimaliniz olan terimler var Bunlar aslında aşina olduğunuz şeylerin biraz farklı açıdan görünüşü olmakla birlikte PHP-GTK kodlarken algoritmanın kafanızda canlanması için bilmeniz gereken terimlerdir


Tanımların daha rahat aklınızda kalması için onlara Türkçe karşılıklar buldum Parantez içinde orijinal isimlerini görebilirsiniz Fakat ben elimden geldiğince bulduğum karşılıkları kullanacağım


En dıştan en içe doğru sırayla değinecek olursak;


A Parçacıklar (Widgets)

Parçacıklar bir GUI uygulama formuna bağlı tüm nesnelere verilen genel bir addır Düğmeler, kaydırma çubukları, listeler Bunlara Parçacık diyeceğiz


Bir Parçacık doğumundan ölümüne 5 adımda ilerler


• Oluşturma ( Yeni bir parçacık doğar [Nesne tanımlanır] )


• Yer belirleme ( Oluşturulan parçacık bir kutuya (container) bağlanır )


• Sinyal bağlantısı (Bu parçacığı sinyal bağlantısı ile bir fonksiyona tetikliyoruz Artık bu Parçacığın görevi fonksyionda ona yüklenen görevi yapmaktır )


• Görüntüleme (Parçacığın ekrana basılması)


• Yok etme (Programın kapatılması ile oluşturduğumuz parçacığın yok edilmesi)


B Kutular (Containers)

Kutular aslında birer parçacıktır Fakat bunlar programımızın sahip olması gereken parçacıklardır Diğer parçacıkları saklayan ev görevini üstlenmektedir Her insanın bir evi olduğu gibi her parçacığın da bir kutusu vardır Örneğin GtkWindow , GtkFrame ve GtkBox en çok kullanılan kutulardır


Kutuları program arabiriminizin daha güzel görünmesi için, daha çok kullanın Bu hem kullanıcının programı anlamasını hem de geliştiricinin daha rahat hareket etmesini sağlar Bir sistem basit olduğu sürece güvenlidir ve bir o kadar da yenilenebilirdir


Tüm kutular, GtkContainer adlı kutu sınıfı içinden çağırılı Bu sınıfa bağlanan tüm parçacıklar ise GtkWidget sınıfına bağlıdırlar


C Sinyaller (Signals)

Sinyaller parçacıklarımızın fonksiyonlara nasıl kilitleneceğini bildiren ara tetiklerdir Örneğin bir düğmenin çıkış sinyalini tek tıklama olarak belirtirsek, düğmeyi taşımaya çalıştığımızda fonksiyonumuz çalışmaz


Tüm parçacıkların bir kutuya sahip olması gerektiğini yukarıda görmüştük Sinyaller ise parçacıkların olmazsa olmazlarından değildir Çünkü bu yapcağımız işe göre değişen bir unsurdur Örneğin uygulamamıza bir çizgi eklemek istiyoruz; GtkHSeparator bu çizgi için bir sinyale ihtiyacımız yoktur


Çünkü bunu tıklayarak, veya taşıyarak yaptırabileceğimiz bir iş yoktur


D Geriçağrılar (Callbacks)

Bir parçacığımız olsun Örneğin bir kaydırma çubuğu Bu kaydırma çubuğunun bir sinyal fonksiyona tetiklendiğini biliyoruz Peki bu tetiklemenin ardından ne olur?


Kaydırma çubuğu hareket ettirildiğinde tetiklenmiş sinyal bizi istediğimiz fonksiyona yönlendirir Gelen bir sinyali alıp fonksiyona bağlayan bu yönlendirme yapılarını geriçağrılar olarak adlandırıyoruz Bir geriçağrı connect komutu ile gerçekleştirilir


Evet tanımlarımız bunlar Şimdi kafanızda birşeyler şekillenmiştir Fakat bu şekillenmenin monitörde de olması için aşağıya sistemin çalışması ile ilgili bir diyagram çizdim




* exec fonksiyonu örnek olarak yazılmıştır

Alıntı Yaparak Cevapla
 
Üye olmanıza kesinlikle gerek yok !

Konuya yorum yazmak için sadece buraya tıklayınız.

Bu sitede 1 günde 10.000 kişiye sesinizi duyurma fırsatınız var.

IP adresleri kayıt altında tutulmaktadır. Aşağılama, hakaret, küfür vb. kötü içerikli mesaj yazan şahıslar IP adreslerinden tespit edilerek haklarında suç duyurusunda bulunulabilir.

« Önceki Konu   |   Sonraki Konu »


forumsinsi.com
Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ForumSinsi.com hakkında yapılacak tüm şikayetlerde ilgili adresimizle iletişime geçilmesi halinde kanunlar ve yönetmelikler çerçevesinde en geç 1 (Bir) Hafta içerisinde gereken işlemler yapılacaktır. İletişime geçmek için buraya tıklayınız.