Webmaster Forumu - Webmaster Zone

Geri git   Webmaster Forumu - Webmaster Zone > Webmaster Zone > Programlama Dilleri > CGI / Perl
Şifrenizimi Unuttunuz? Bize Katılın!

Cevapla
Görüntüleme: 195 - Cevaplar: 2  
LinkBack Seçenekler Stil
  #1 (permalink)  
Alt 21-08-2008, 02:46:34
aLpamiS - ait Kullanıcı Resmi (Avatar)
aLpamiS aLpamiS isimli üyemiz çevrimdışıdır. (Offline)
Webmaster
Loading ..
 
Üyelik tarihi: 31/7/2008
Nerden: Web.Config
Mesajlar: 790
iTrader: (0)
Tecrübe Puanı: 46
Puanları: 1488
aLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of light
Standart C ile CGI Programlama

Internet Uzerindeki hemen hemen bütün kullanıcı arayüzleri, Common Gateway Interface (CGI), kullanılarak hazırlanmıştır. CGI www kullanıcılarının www sunucusunun çalıştığı makina üzerinde belirlenen programalrı çalıştırmasını sağlayan bir sistemdir. CGI ile hazırlanan kullanıcı arayüzlerinin başlıca avantajlarını aşağıdaki gibi sıralyabiliriz:
  • Kolay ve hızlı hazırlanabilmesi. CGI arayüzlerinde, diğer kullanıcı yüzlerindeki birçok çabaya gerek yoktur. Kullanıcıyla ilişkiyi www tarayıcısı (web browser) yaptığından, siz zaten web tarayıcısı için çoktan hazırlanmış karmaşık kullanıcı arayüzü işlemleriyle uğraşmak zorunda kalmazsınız.
  • Istediğiniz herhangi bir programlama dili kullanabilirsiniz. Biz uygulamamızda C kullandığımız için aşağıda CGI programlarını özelde C ile nasıl yazacağınız anlatılmıştır, ama deneyimli programcı herhangi bir programlama dili için gerekli ipuçlarını aşağıdaki açıklamadan çıkarabilir. CGI programlamada C'nin yanı sıra perl ve shell programları da sıkça kullanılır.
  • Kolay kullanılır, kullanıcının alışık olduğu arayüzler. CGI arayüzleri Internet kullanan herkesin alışık olduğu Netscape, Lynx, Mosaic gibi web tarayıcılarından yararlanır. Bu nedenle programınız kullanıcının çoktan alışık olduğu bir arayüz kullanmış olursunuz.
  • Değişik ortamlarda çalışabilir. Programınızın asıl çalıştığı sistem web sunucusunun çalıştığı sistem olmasına karşın, programınıza bilgisayar ağına bağlı herhangi bir bilgisayardan ulaşılabilir. Kullanabileceğiniz hemen hemen bütün işletim sistemleri ve ortamlar için web tarayıcısı bulabileceğiniz için, yazdığınız tek program birçok farklı ortamdan kullanılabilir.
  • Dağıtık ortamlarda kullanılabilme olasılığı. Programınızın kullanıcı arayüzü (web tarayıcısı) başka bir ortamda, web html formlarınız başka bir sistemde, CGI programlarınız başka bir sistemde olabilir.
Bu avantajların yanında sayılabilecek birkac dezavantaj,
  • Dikkatsiz yazılmış CGI programları güvenlik açıklarına neden olabilirler.
  • Kullanıcı arayüzleri çok kolay ve hızlı oluşturulmalarına karşın, web tarayıcısının yetenekleriyle sınırlıdır.
En basit haliyle bir CGI programı, standard input dosyasına çıktılarını veren herhangi bir program olabilir. Tek farklilik, herhangi bir çıktıdan önce yazmanız gereken iki satir. Bu satirlardan ilki,
Content-type: text/htmlolmalı. İkincisi ise boş bir satır. Aşağıdaki C örneği bu konuda daha açıklayıcı olacaktır. Bundan sonra ekrana yazacağınız herşey web tarayıcısı tarafından HTML ile yazılmış bir döküman olarak degerlendirilecektir.

CGI programları girdilerini HTML formlarından alırlar. HTML formları ayrı bir HTML dosyasında olabilecekleri gibi, bir CGI programının çıktısı olabilirler, hatta aynı program hem formu oluşturup, hem de çıktıyı degrelendirerek gerekli işlemi yapabilir. Aşağıda örnekleriyle formları nasıl oluşturulabileceğini, ve CGI programlarının nasıl yazılacağı konusunda ayrıntılı bilgi bulacaksınız.
__________________
* Çaresizseniz , Çare " Sizsiniz " ..
Alıntı ile Cevapla
  #2 (permalink)  
Alt 21-08-2008, 02:47:08
aLpamiS - ait Kullanıcı Resmi (Avatar)
aLpamiS aLpamiS isimli üyemiz çevrimdışıdır. (Offline)
Webmaster
Loading ..
 
Üyelik tarihi: 31/7/2008
Nerden: Web.Config
Mesajlar: 790
iTrader: (0)
Tecrübe Puanı: 46
Puanları: 1488
aLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of light
Standart Cevap: C ile CGI Programlama

From HTML2.0 standardıyla gelen bir kullanıcı arayüzü. Formlarda bir dizi değişik yöntemle kullanıcıdan girdi alınabilir. Bunları aşağıda maddeler halinde göreceğiz.

Bir html formu <form> ile başlayıp, </form> ile biter. <form> birkaç parametre alır. HTML'de parametreler <form p1=değer1 p2=değer2 p3> şeklinde verilir. Bu örnekte formun p1 ve p2 iki değer alan parametre, p3 adlı değer almayan bir parametresi var. forma verilebilecek ve verilmesi gerken parametreler,
  • METHOD Bu parametre, formun ne şekilde hangi html metodu kullanılacağını belirler. POST ya da GET değerini alabilir. POST daha çok karşı tarafta herhangi bir etkisi olan programlar için, GET ise sadece sonuç veren programlar için kullanılır. Ama yaygın işlem her ikisi için de post kullanmaktır. Biz uygulamamızda her iki durum için de POST kullandık.
  • ACTION Bu parametreyle, Formun çalıştıracağı CGI programı belirtilir. Verilen CGI programı aynı makinada olabileceği gibi Internet üzerindeki herhangi bir makinada da olabilir.
  • ENCTYPE Form'un sonuçlarının CGI programına ne şekilde gönderileceği bu parametreyle belirtilir. Belirtilmemesi durumunda standart 'application/x-www-form-urlencoded' kullanılır. Bizim önerimiz, bu seçeneğin belirtilmemesi ve standart kullanıma gidilmesi. Bu şekilde programınız hem heryerde çalışır, hem de bu kodlama biçimi için hazır kütüphanelerden yararlanabilirsiniz
formun içinde bir dizi değişik girdi tipi tanımalayabilirsiniz. Bunlar <INPUT> ile verilir. INPUT için bir dizi input tipi kullanılabilir. Bu tipleri aşağıdaki gibi sıralayabiliriz:
  • TEXT Bu tip tek satırlık text girdiler için kullanılır, birden fazla satır için <TEXTAREA> kullanmalısınız.
    Örnek:
  • PASSWORD Bu tipin TEXTten tek farkı, PASSWORD yazılan yazıyı ekranda göstermez.
    Örnek:
  • CHECKBOX Birden fazla seçim yapılabilcek bir dizi buton sağlar.
    Örnek:
  • RADIO Sadece biri seçilebilecek bir dizi buton sağlar.
    Örnek:
  • IMAGE Bir resim üzerinde, kullanıcının fareyle tıkladığı koordinatları almak için kullanılır.
    Örnek:
  • HIDDEN Formlar arasında bilgi aktarmak gibi amaçlarla kullanılır. Herhangi bir şekilde kullanıcıyla iletişimi olamadan bazı bilgilerin CGI programına aktarılmasını sağlar.
    Örnek:
    :-)
  • SUBMIT From'un bittiğinde gönderileceği bir buton sağlar.
    Örnek:
  • RESET Form'daki butun alanları temizler.
    Örnek:
Yukarıda belirtilen her bir INPUT tipi için verebileceğiniz ya da vermeniz gereken bir ya da birkaç parametre vardır. Bu parametrelerin ayrıntılarına burda yer vermiyoruz. Bu ayrıntıları www.w3.org'dan ulaşabileceğiniz birçok dökümandan ya da bu dokümanın kaynak kodu dahil olmak üzere Internet üzerinde bulacağınız birçok formun kaynak kodundan yararlanarak öğrenebilirsiniz.
__________________
* Çaresizseniz , Çare " Sizsiniz " ..
Alıntı ile Cevapla
  #3 (permalink)  
Alt 21-08-2008, 02:47:48
aLpamiS - ait Kullanıcı Resmi (Avatar)
aLpamiS aLpamiS isimli üyemiz çevrimdışıdır. (Offline)
Webmaster
Loading ..
 
Üyelik tarihi: 31/7/2008
Nerden: Web.Config
Mesajlar: 790
iTrader: (0)
Tecrübe Puanı: 46
Puanları: 1488
aLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of lightaLpamiS is a glorious beacon of light
Standart Cevap: C ile CGI Programlama

Bu dökümanın bundan sonraki kısmındaki örnekler C için hazırlanmıştır.
CGI programı yazmak için gereken daha fazla bilgi sadece, C (ya da ilgili dil) ve HTML bilgisine ek olarak sadece programınızın girdiyi nasıl alacağı. C için en sevdiğiniz C kitabını, HTML içinse Internet üzerinde bulacağınız dökümanları öneririz.
HTML Form'unun çıktısı 'ad=değer' şeklinde '&' ile ayrılmış tek satırlık bir karakter dizisinden oluşur. Bu dizideki boşluklar '+' ile ASCII setindeki alfa-nümerik karakterler dışındaki bütün karakterler (%, +, ç, Ö gibi) üç karakterlik '%XX' şeklinde bir ifadeyle gösterilir. Buradaki XX ifade edilen karakterin onaltılık sayı sistemindeki kodudur.
Form'un çıktısını, gets(), scanf() gibi herhangi bir C I/O fonksiyonuyla okuduktan sonra, eldeki karakter dizisinden istediğiniz bilgileri almalısınız. Bu diziyi isterseniz kendi yazdığınız programla isterseniz Internet üzerinde bulabileceğiniz hazır kütüphanelerle işleyebilirsiniz. Biz bu konuda kendi yazdığımız birkaç fonksiyonu kullandık. Bu fonksiyonları kullanmak isterseniz buradan alabilirsiniz. CGI programının çıktısı istediğiniz gibi bir HTML dökümanı olabilir. HTML bu dökümanın konusu dışında olduğundan burada söz etmeyeceğiz. Bu konuda hazırlamış olduğumuz örnek uygulama size yardımcı olabilir.

*Alıntıdır.
__________________
* Çaresizseniz , Çare " Sizsiniz " ..
Alıntı ile Cevapla
Cevapla



Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-KodlarıKapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık

Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Programlama Kaynak ferdikucuk Tanıtımlarınız 0 04-06-2008 11:47:14
Bash Programlama Nedir? Tahsin ALTAY Kabuk Programlama 0 11-02-2008 20:17:38
Perl ile CGI Programlama Alone CGI / Perl 2 10-10-2007 23:10:26
Programlama sitesine reklam [PR4] doronty37 Reklam Alım Satım 0 12-03-2007 19:17:34
Pc Programlama mezunları fuzuli Eğitim Genel 0 16-01-2007 06:06:58


oyun , kontör , türkçe dizin

Bütün Zaman Ayarları WEZ +2 olarak düzenlenmiştir. Şu Anki Saat: 19:11:31 .


Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
Zone Org | 2006-2008

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125