WEBMASTERLERE ÖZEL

Renk Kod Oluşturucu Css Oluşturma Html Kontrol ve PHP Dönüştürücü HTML Java Dönüştürücü
Banner Hazırlama Bedawa Web Alanı Animasyonlu gif Resimler Banner Kaldırma
Sitenizin hitini arttırmanın yolları Sitenizi Kaydedin Kaynak Kodu Gizleme Html Asp Dönüştürücü
Kayan Çubuk Oluşturucu Diğer Javalar için Tıklayın    

HAZIR JAVA SCRIPTLER

Örneklerimize geçmeden önce JavaScript'i yüzeysel de olsa biraz öğrenelim. JavaScript HTML sayfalarına ek olarak çalışan, bir Internet Programlama dilidir diyebiliriz. HTML sayfalarımızda;

<script>
</script>

tagları arasına yazılırlar. JavaScript'ler sayfalarımızı tasarlarken bize çok yardımcı olurlar. Mesela sayfamıza normal bir saat veya düzenli bir tarih eklemek istiyoruz. Bunu en kolay JavaScript sayesinde yapabiliriz. Sizin için bir çok JavaScript örnekleri topladık. Bunları en kısa yoldan denemek için, NotePad'e yapıştırıp, htm veya html uzantısıyla kaydetmeniz yeterli olcaktır. Yazdığınız kodları html kontrol bölümümüzde test edebilirsiniz.Html kodlarını java kodlarına dönüştürmek için tıklayın.

Browser Bilgileri
İsteğe Göre Background
Sağ Tuş Kilidi
Üste Doğru Kayan Yazılar
Takvim
İlginç Bir Script
Saat
Güzel Bir Yazı Efekti
E-Mail
Kutu İçinde Kayan Yazı
Buton Şeklinde Saat
Renk Linkleri
Renk Kodları
Search Menüsü
Status Bar'da Yazı
Güzel Bir Hareketli Yazı
Status Bar'da Değişen Yazılar
Ziyaretçiyi Selamlama
Sayaç
Yönlendirme
Çözünürlük Ayarı
Hesap Makinesi
Büyüyüp Küçülen Yazı
Renk Kodu Belirleme
Deprem Scripti
Hareketli Buton
Hareketli Yazı
Kronometre
Link Menüsü
Hareketli Background
Buton Üzerinde Kayan Yazı
Hareketli Menü
Renk Değiştiren Text
HERGÜN AYRI LİNK SCRİPTİ
Bu kısım <head> </head> tagları arasına yerleştirilecek.
Kopyala - Yapıştır şu şekilde yapılır:

  Öncelikle "Hepsini Seç" yada Fare ile kodları seçin.
  Daha sonra "Ctrl+C" tuşlarına aynı anda basınız.
  Daha sonra not defterini açın ve "Ctrl+V" tuşlarına basarak kodları yapıştırın.
  Not: + tuşuna basmayacaksınız. sadece Ctrl ve C(yada V) tuşlarına basacaksınız.

 

Tam Sayfa Resim Açma kodu: <body topmargin=0 leftmargin=0 onload="document.body.innerHTML='<img width=100% height=100% src="https://www.neleryokki.com.tr/webmaster/metin_anat.jpg"></img>';">

Tam Sayfa Açma Kodu:
  <script language="JavaScript1.2">
<!--
window.moveTo(0,0);
if (document.all) {
top.window.resizeTo(screen.availWidth,screen.availHeight);}
else if (document.layers||document.getElementById) {
if (top.window.outerHeight<screen.availHeight||top.window.outerWidth<screen.availWidth){
top.window.outerHeight = screen.availHeight;
top.window.outerWidth = screen.availWidth;}}
//-->
</script>

CGI Ortam Değişkenleri

Ortam değişkenleri CGI programı çalıştırılıdığı zaman browser'ınızın (ve web server'ınızın) programa gönderdiği bilgilerdir. Ortam değişkenleri %ENV isimli Hash değişkende saklanır.

 CGI Ortam Değişkenleri

 DOCUMENT_ROOT  Server'ınızın kök dizinini verir.
 HTTP_COOKIE  Eğer varsa ziyaretçinin "cookie"sini verir.
 HTTP_HOST  Server'ınızın "hostname"ini verir.
 HTTP_REFERER  Scriptin çağrıldığı sayfanın adresini verir.
 HTTP_USER_AGENT  Ziyaretçinin browser'ının tipini verir.
 PATH  Server'ınızın "system path"ini verir. (Genelde /bin, /usr/sbin vs.)
 QUERY_STRING  GET metodu ile yollanan bilgiyi verir.
 REMOTE_ADDR  Ziyaretçinin IP adresini verir.
 REMOTE_HOST  Ziyaretçinin "hostname"ini verir. (*)
 REMOTE_PORT  Ziyaretçinin web server'ınıza bağlandığı portu verir.
 REMOTE_USER  Ziyaretçinin kullanıcı adını verir. (.htaccess korumalı sayfalar için)
 REQUEST_METHOD  Bilgi gönderme metodunu verir. (GET ya da POST)
 SCRIPT_FILENAME  Scriptin tam yolunu verir.
 SERVER_ADMIN  Server'ınızın webadmin'inin e-mail adresini verir.
 SERVER_NAME  Server'ınızın tam domain adını verir. (Örn: cc.sau.edu.tr)
 SERVER_PORT  Server'ınızın dinlemede olduğu portu verir.
 SERVER_SOFTWARE  Serverdaki web server programını verir. (Örn: Apache 1.3)

(*) Eğer server'ınızda "reverse-name-lookups" yoksa REMOTE_HOST ziyaretçinin IP adresini verir.

Bazı server'larda bunlardan başka değişkenler de olabiliyor. Daha fazla bilgi için server'ınızın dökümanlarını inceleyiniz. Farketmişseniz bazı değişkenler server'la ilgili, bazıları ise ziyaretçi ile ilgili bilgileri içeriyor. Server'la ilgili olanların programa bildirdiği bilgiler o server'da çalışan bütün CGI programları için aynı olacaktır. Fakat ziyaretçi ile ilgili bilgiler program her çalıştırıldığında farklı olabilir.

Her CGI çalıştırıldığında bütün ortam değişkenleri atanmaz. REMOTE_USER değişkeni sadece .htaccess dosyası ile korunan dizin ya da altdizinler için atanır. Bu durumda REMOTE_USER değişkeninin alacağı değer .htaccess dosyasındaki kullanıcı adıdır.

%ENV değişkeni CGI çalıştırıldığında otomatik olarak atanır ve isterseniz tamamını isterseniz sadece belli değerleri kullanabilirsiniz. Mesela aşağıdaki kod ile ziyaretçinin IP adresini yazdırabilirsiniz.

    print "IP adresiniz: $ENV{'REMOTE_ADDR'}\n";

Şimdi bütün ortam değişkenlerini yazdıran bir CGI yazalım. Yeni bir dosya oluşturun, "ortam.cgi" adıyla kaydedin ve içine şunları yazın:

    #!/usr/bin/perl

    print "Content-type:text/html\n\n";
    print <<HTMLSonu;
    <html><head><title>Ortam Değişkenleri</title></head>
    <body>
    HTMLSonu
    ;

    foreach $anahtar (sort(keys %ENV)) {
       print "$anahtar = $ENV{$anahtar}<br>\n";
    }

    print "</body></html>";
     

Scripti kaydedin, erişim yetkilerini 755 olarak ayarlayın ve browser'ınızdan çağırın. Eğer hata mesajı alırsanız programı UNIX'te çalışmayı deneyip hatanın nerede olduğunu öğrenebileceğinizi hatırlayın.

Bu örnekte sort fonksiyonu kullanılarak %ENV değişkeninin anahtarları alfabetik sıraya koyduk. Perl'ün sort fonksiyonu karakter değerlerini karşılaştırdığı için sayıları düzgün bir şekilde sıraya koyamaz.

Basit Bir Sorgu Formu

Bir HTML formundan CGI'a bilgi göndermek için iki yol vardır. GET ve POST. Form bilgisinin server'a nasıl yollandığını bu metodlar belirler. GET metodunda formla gönderilen bilgiler URL'in bir parçası olarak gönderilir ve QUERY_STRING ortam değişkenine atanır. POST metodunda nasıl gönderildiğini bir sonraki bölümde anlatacağız.

QUERY_STRING değişkenine birkaç değişik yolla atama yapabiliriz. Birinci yöntem aşağıda görüldüğü gibidir.

Yukarıdaki linklerin her birine tıklayın. QUERY_STRING değişkeninin değerinin soru işaretinden sonra gelen yazı olduğunu göreceksiniz. Bu örneklerde QUERY_STRING değişkeni "deneme1","deneme2" ve "deneme3" değerlerini alır.

Bir başka yöntem de aşağıdaki gibi basit bir form hazırlamaktır.

    <form action="http://www.neleryokki.com/cgi-bin/ornek/ortam.cgi" method="GET">
    Buraya birşeyler yazın: <input type="text" name="ornek_yazi" size=30><p>
    </form>

 

"Gönder" düğmesinin olmadığını farketmişsinizdir sanırım. GET metodu ile sadece enter'a basarsınız ve form gönderilir. (Bu yöntem sadece bir tane girdi alanı olduğu zaman işe yarar. Birden fazla girdi alanını göndermek için mutlaka "Gönder" düğmesi koymalısınız.)

Yukarıdaki kodları kullanarak bir HTML dosyası hazırlayın ve "get.html" adıyla kaydedip browser'ınızla açın. Daha sonra form alanına birşeyler yazın ve enter'a basın. QUERY_STRING değişkeninin değeri aşağıdaki gibi olur.

    $ENV{'QUERY_STRING'} = ornek_yazi=iste+yazdiginiz+yazi

Eşittir (=) işaretinin solundaki yazı form alanının adıdır. Sağındaki yazı ise formdaki kutucuğa yazdığınız yazıdır. FAKAT farkettiğiniz gibi boşlukların yerini artı (+) işareti almış. Hatta çeşitli noktalama işaretleri ve özel karakterlerin yerine %-kod şeklinde özel kodlar çıkmış.

Buna "URL Kodlama" denir ve ister GET metodu ister POST metodu kullanılsın, herhangi bir form ile bilgi gönderildiği zaman meydana gelir.

Perl scriptiniz bu bilgiyi eski haline getirebilir fakan uzun ve karmaşık bilgiler yollandığında POST metodunu kullanmak daha iyidir. GET metodu daha çok veritabanından bilgi aratma gibi tek alanlı formlar için elverişlidir. GET metodu ile birden fazla alanlı formları da gönderebilirsiniz.

    <form action="http://www.neleryokki.com/cgi-bin/ornek/ortam.cgi" method="GET">
    <pre>
       Adınız: <input type="text" name="ad" size=30><p>
    Soyadınız: <input type="text" name="soyad" size=30><p>
    </pre>
    <input type="submit" value="Gönder">
    </form>

Bo formla gönderilen bilgiler aşağıdaki gibi görünür.

    $ENV{'QUERY_STRING'} = ad=umut+baris&soyad=ruzgar

Değerler & işareti ile ayrılmıştır. Bu iki değeri birbirinden ayırmak için Perl'ün split fonksiyonunu kullanacağız.

    @degerler = split(/\&/,$ENV{'QUERY_STRING'});
    foreach $i (@degerler) {
         ($alanadi, $deger) = split(/=/,$i);
         print "$alanadi = $deger\n";
    }

split fonksiyonu bir karakter sırasını, belirtilen karakter ya da karakterlerden ayırarak bir dizi oluşturur. Örneğimizin ilk satırında QUERY_STRING değişkeninin değeri & işaretinden ikiye ayrılmıştır. & işaretinden önce \ kullanılmasının nedeni & işaretinin Perl'de özel bir anlamı olmasıdır. (Perl'de bazı özel karakterleri kullanırken başına \işareti koymamız gerekebilir). Bu ayırma işlemi sonucu @değerler dizisine iki değer atanır: ad=umut+bariş ve soyadı=ruzgar. foreach döngüsünde önce = işaretinden alan adı ve alanlara yazılan yazılar birbirinden ayrılarak $alanadi ve değer değişkenlerine atanır. Sonra da birbirinden ayrılmış olan bu değerler yazdırılır.

GET metodu hakkında bazı uyarılar: Bu metod bilgi göndermek için güvenli değildir. Bu yüzden şifre ve kredi kartı bilgileri gibi gizli bilgileri gönderirken asla bu metodu kullanmayınız. Gönderilen bilgi URL'in bir parçası olarak gönderildiği için server'ın log dosyalarında kaydedilir ve log dosyaları da server'daki bütün kullanıcılar tarafından okunabilir. Gizli bilgiler bir sonraki bölümde göreceğimiz POST metodu ile güvenli bir biçimde gönderilebilir.