Categories
You are currently browsing the Webmaster Araçları blog archives for the year 2009.
Archive for 2009
Deniz Kabacalı Yeni Makaleleriyle Geliyor Çok Yakında…
Salı, Kasım 17th, 2009Deniz Kabacalı Peyzaj Teknikeri Zonguldak
Pazartesi, Temmuz 6th, 2009Deniz Kabacalı Peyzaj Teknikeridir
Çok sayıda makalesi vardır.
http://keskinzeka.com/index.php/2008/11/01/ahir-gubresi-hazirlamak/
http://keskinzeka.com/index.php/2008/11/01/kompost-nedir-nasil-hazirlanir/
http://keskinzeka.com/index.php/2008/11/01/organik-nedir/
http://keskinzeka.com/index.php/2008/10/26/kan-tozu-ne-ise-yarar/
Bunlardan sadece bazıları…
Zonguldak Merkez
Başarılı Arama motoru optimizasyon için en önemli 5 Madde
Çarşamba, Mayıs 6th, 2009Burada denemiş ve başarıya ulaşmış olduğum seo arama motoru için optimizasyon yöntemi ile ilgili açıklama yapacağım bir sitemde bu sadece aşağıda yazdığım maddeleri uygulayarak çok iyi sonuç elde ettim.
Title:Konu Başlığıyla ilgli bir title olabilir her zaman title yazılmalı.
Html linkler:Linkler konu başlığıyla aynı ve html uzantılı yapılmalı.Örnek basarili-arama…icin-en-onemlibasarili-arama-motorlari-optimizasyon-icin-en-onemli-5-madde.html gibi
Aynı Kelimede Çok yazıya Sahip olmak:Sitenizde örnek olarak elma ile ilgili bir yazı ,video,oyun yada her neyse bi içerik var ise değişik kollardan aynı konuya hitap eden birden çok yazınız olmalı.
Başta çıkması gereken Kelimeden diğer siteleri haberdar etmek.:Eğer seo kelimesi ile ilgili birden çok yazınız varsa seo kelimesi için diğer siteler size link vermiş olmalı.Nekadar çok kişi seo kelimesi için link verirse okadar sayfa prestijiniz artar.Sitenizden az link çıkışı yapın.Kesinlikle herşey için diğer sitelere ink vermeyin.
Siteyi Güncel Tutmak:Hedef kelimelerinizle ilgili sürekli içerik ekleyin.Ve bunu her gün yapın.
Ve Özgün İçerik Kullanmak:Yayınladığınız içerik sadece sizde olsun.
Php kodlamada güvenlik
Pazartesi, Mayıs 4th, 2009Arkadaşlar bir sitede PHP de alınması gereken güvenlik önlemleri ile ilgili bir makale okudum ve burada sizlerle paylaşmak istedim.
————–
Basit PHP Güvenliği:
PHP script’lerinizin güvenli olduÄŸundan emin olmanız için ilk olarak temel kuralları yerine getirmeniz gerekiyor: kullanıcı girdilerinin (input) filtrelenmesi ve çıktıların (output) kontrolü. EÄŸer bu ikisini doÄŸru olarak yapmıyorsanız script’leriniz her zaman güvenlik problemleri ile karşı karşıya olacaktır. Bu makale’de bu iki iÅŸlem ile ilgili yapılması gerekenler anlatılıyor.
Bütün Girileri Filtreleyin:
Script’leriniz harici bir kaynaktan girdi okuduÄŸunda, bu verinin tehlikeli olduÄŸu varsayılmalı ve güvenilmemelidir. Güvenilmemesi gereken deÄŸiÅŸkenlerden bazıları: $_POST, $_GET, $_REQUEST ve hatta pek mümkün görünmese de önemli veriler içerebilecek olan $_SERVER .
Tehlikeli bir deÄŸiÅŸkenden gelen veriyi iÅŸlemlere tabi tutmadan önce ilk olarak önce onaylanamanız ve filtrelemeniz gerekmektedir. Onaylama iÅŸlemi ile sadece sizin istediÄŸiniz verileri içerdiÄŸinden emin olabilirsiniz. ÖrneÄŸin bir eposta adresi bilgisi bekliyorsanız, onay fonksiyon’unuz girilen verinin doÄŸru bir eposta adresi olup olmadığını kontrol etmeli.
Hemen basit bir örnekle açıklayalım. Aşağıdaki kodda ilk olarak $_POST değişkeninden e-posta adresini alıyorum ve sonra veriyi onaylama işlemine sokuyorum:
<?php
$eposta = $_POST['eposta']; # Burada veri hala TEHLİKELİ durumda
// Validate e-mail
if (valid_eposta($eposta) == false) {
// Geçerli bir adres değil
die(‘Geçerli bir eposta adresi deÄŸil!’);
}
?> Verimiz daha güvenli olsa da iÅŸimiz daha bitmedi çünkü hala veriyi MySQL veritabanına yerleÅŸtirmek istiyoruz ve bu iÅŸlemden önce de bazı kontroller yapmamız gerekiyor. PHP tüm önemli karakterlerin escape edildiÄŸi mysql_real_escape_string() standart fonksiyon’unu sunar. DiÄŸer bir yöntem ise SQL sorgusunda veriyi her zaman kesme imleri arasına yerleÅŸtirin.
Önceki örneğimize devam edelim:
<?php
$eposta = $_POST['eposta']; # Burada veri hala TEHLİKELİ durumda
// Validate e-mail
if (valid_eposta($eposta) == false) {
// Geçerli bir adres değil
die(‘Geçerli bir eposta adresi deÄŸil!’);
}
// eposta’nın veritabanı için güvenli hale getirilmesi
$eposta = mysql_real_escape_string($eposta);
// Artık güvenli!
?> <?php
$t_eposta = $_POST['eposta']; #Â Tehlikeli
// Onay işlemi
$g_eposta = mysql_real_escape_string($d_eposta);
?> Çıktıların filtrelenmesi
Girdilerde olduğu gibi dışarıya sunulan tüm verilerin de (güvenli olarak filtreleyip veritabanına işlediğiniz verilerin dahi) filtrelenmesi gerekmektedir.
Filtrelenmesi gereken en önemli ÅŸey probleme yol açabilecek olan HTML tag’leridir. Bunu yapmanın en kolay yolu bütün HTML’i escape iÅŸlemine sokan htmlentities() fonksiyon’udur:
<?php
echo htmlentities($_GET['eposta']);
?> <?php
echo htmlentities($_GET['eposta'], ENT_QUOTES, ‘UTF-8′);
?> EÄŸer bütün HTML tag’lerini filtrelemek istemiyorsanız, bazı tag’lere izin vermek istiyorsanız strip_tags() fonksiyon’unu kullanabilirsiniz. Fakat bu, <script> tag’lerini filtreleseniz dahi Javascript ekleme açıklarına karşı bir güvenlik problemi içerebilir. ör ( <div onclick=”alert(’Hi!’);”> .
DiÄŸer bir yöntem de sadece sizin istediklerinizi filtrelemenize yarayacak kendi fonksiyon’unuzu yazmanız (veya internet’teki yüzlerce hazır fonksiyon’dan birini kullanmanız). Bu bazen en iyi yöntem olabilir fakat herhangi bir ÅŸeyi unutmanız durumunda güvenlik problemlerine yol açabilir.
Son olarak, çıktıyı filtrelemenin en iyi yolu, üç argümanı ile birlikte htmlentities() fonksiyonunun kullanımı fakat bununda iÅŸlevi sınırlı (ör: formatlama olmaması) kalabilir. Buna çözüm olarak verileri format’lamanızda kullanılabilecek olan kendi HTML kodunuzu yaratabilirsiniz. Kendi HTML kodunuzu yaratma ile ilgili olarak Create your own BBCode, using PHP dokümanına göz atabilirsiniz.
Sonuç :
Bu makalede PHP programlamının iki temel ilkesi olan girdi filtreleme ve çıktı filtreleme’den bahsettim. EÄŸer bu ikisini doÄŸru olarak yapabilirseniz çok güvenli bir PHP script’ine doÄŸru yola çıkmışsınız demektir.
VerdiÄŸim örnekler çok basit ve hantal. Escape iÅŸlemini otomatikleÅŸtirmeniz iyi olabilir. Bunun için iyi bir yöntem gerekli iÅŸlemleri yapan bir class veya fonksiyon’lar yazmanız.
PHP güvenliği ile ilgili daha fazla bilgiye ihtiyaç duyuyorsanız aşağıdaki sitelerine göz atabilirsiniz:
- PHP Security Consortium - Çok sayıda bilgi içeren mükemmel bir güvenlik rehberi. Mutlaka okunmalı.
- Essential PHP Security - Chris Shiflett’in Essential PHP Security kitabından bilgiler. Kitabın bir kaç bölümü ücretsiz
- Hardened PHP - Güvenlik bültenlerine yer veriliyor
——-
Html Nedir ?
Pazartesi, Mayıs 4th, 2009HTML (Hyper Text Markup Language) başka bi deyişle Hareketli-Metin İşaretleme Dili internet üzerinde web sayfası oluşturmak için kullanılan bir betik dilidir.Betik dilidir bir programlama dili değildir.Zira html ile kendi başına bir program yazılamaz.
Temel özelliği  yazı, görüntü, video gibi değişik verileri ve bunları içeren sayfaları birbirine basitçe bağlamaktan ibarettir. W3C tarafından standartlaştırılmaktadır.Resmen tanınması 1990 yılında olmuştur.Bu günümüz anlamında webin doğuş tarihidir.Tabiki daha öncesi de var.
eskiden mesela iki bilimadamının arasında veri transferi olması için bilgisayarlarının sürekli birbirine bağlı olması gerekmekteydi.Yani bağlantının gerçek zamanlı olması gerekmekteydi.Veri transferinde bi aksaklık oldumu bunun hata kontrolü sadece server client arasında gerçek zamanlı bir bağlantı olduğunda mümkündü..HTTP (Hyper Text Transmission Protocol) ise bu olguyu ortadan kaldırdı.
HTTP ni standart olması 1990 yılında gerçekleÅŸti dedik.1989 yılında Tim Berners-Lee (Cern’de görevli bir bilgisayar programcısı) ÅŸebekeler arası bilgi transferinde HTML in bir standart dil olmasını önerdi ve bu dili geliÅŸtirmesi ile bugünkü web kavramının doÄŸmasına neden oldu.
Günümüzde ise hepimizin bildiği gibi html dili teknolojinin gelişmesi ve ihtiyaçların artması ile yetersiz kalmış,kullanıcı ile iletişime geçebilen dillerin ihtiyacı doğmuştur.
Bu kategori altında dilim döndüğünce bildiklerimi paylaşmak istedim.Bence html web mimarisi inşa etmenin temelini oluşturmaktadır.Nasıl matematik temeli sağlam olmayan bir öğrencinin matematiği çözmesi ezberci bir zihniyetten öteye geçemeyeceği gibi html e hakim olunmadan yapılacak bir web mimarisinin de sağlıklı olmayacağını düşünmekteyim.Günümüzde derleyicilerin gelişmesi ile html kodları kendiliğinden oluşturulur oldu.Ancak hangi tagın ne tarif ettiğini bilmeden hareket etmenin yolda kör yürümek gibi olacağını düşünüyorum.Birazcık olsun bu konu hakkında gerek bildiğim bir kaç şeyi gerekse faydalı bir takım linkleri paylaşarak yolun biraz aydınlanmasını sağlamak istiyorum
Html de Temel Kavramlar
Pazartesi, Mayıs 4th, 2009Temel yapısı
html in genel yapısı <html></html> tagları arasındaki tagların işlenmesidir.
Åžu ÅŸekilde;
<html>
<head>
–>döküman içeriÄŸi dışında kalan karakterler tanımlanır.
</head>
<body>
—>dökümanın asıl içeriÄŸi burdadır.
</body>
</html>
Bu kısımdan sonra bazı tagları tanıtmak istiyorum.
< h1 > Başlıklar
Yazılarn başlık şeklinde yazılmasında kullanılır.6tane başlık vardır.
<h1> başlık1 </h1>
<h2> başlık2 </h2>
…..
….
bu başlıkları deneyerek görebiliriz.
<br> Blt satıra geçme
<body>
ocak <br>ÅŸubat ———–> altsatıra geçmek için kullanılır
</body>
<hr> Çizgi çizmek
<body>
<hr color=red size 5 width=300 align=left>
</body>
Herşey gayet açık sanırım.Size burada kalınlık veriyor.
<marquee> Kayan yazı
<body>
<marquee>merhaba</marquee>
</body>
<marquee direction =right> up,down –> kayma yönünü gösterir.
<marquee behavior=alternate> —>Yazılarn ekranda kayarken kaybolmadan bi uçdan bi uca gitmesi.
<marquee bgcolor=ff00cc> —–>arka plan rengi
<body bgcolor=FF0000> —>arkaplan rengini deÄŸiÅŸtirir.
yazı yapısı
<center> —> yazıyı ortalar
<b> —> kalın yapar
<i> —-yazıyı italic yapar
<u> —–> altı çizgili yapar
<font> yazı tipi boyutu
<font face arial size=5 colour ff00ff>yazı</font>
face:yazı stili
size:karakter büyüklüğü
colour:rengi
link vermek
<a href=”siteadı” target =”_blank”>link</a> —> yapısı itibari ile link yazısına tıklayınca href deÄŸerine yönlendirme olur
target ise farklı bir pencerede sayfa açılır.
<background> body tagının parametresi
<body background = resim.jpg > –> arka plana reim alır.
<title> browser başlığı
<title> bloÄŸuma hoÅŸgeldin</title> —browser baÅŸlığında görüntülenen metini içerir.
<meta> tagı ve sayfanın türkçeleştirlmesi
Meta tagı ile sayfamız hangi yazi tipinde ise o karakter seti kullanılır.Ama sadece bu iş için kullanılmaz.
Daha sonra değincem.örnek kullanım:
<html>
<head>
<meta http-equiv=”content-type” content=”text/html”:charset=iso-8859-9″> —>türkçe karakter seti -9
<title>
</title>
</head>
<img src> resim eklemek
<img src=resim.jpg alt=”benim resmim” border=1 width=200 hight=200>
burada alt resim üzerine gelindiğinde çıkan alt bilgi border kenarlık width height değerleri malum.
bu kısımda bu kadar tabki html tagları bununla sınırlı değil.başka bi yazıda tablolar frame form oluşturma bu bu başlık altında form elemanlarından
bahsedicem.
Bu konuda faydalanılacak en güzel kaynak olarak şu adresi gösterebilirim.
Html Tablo yapısı
Pazartesi, Mayıs 4th, 2009<table> tablolar:
htmlde tablo oluşturuken <table></table> tagları kullanırız.Tabo içinde satır açmak için <tr> sütun açmak için <td> tagı kullanılır.
<table border =1 width=500 height=300>
<tr>
<td>
hücre1
</td>
<td>
hücre2
</td>
</tr>
</table>
tablo parametreleri;
<table border=1> —> çerçeve
<table width=300 height=500> ——>ebatlar
<table cellspacing=2> –>tablo içindeki hücrelerin birbirlerine ve tablo sınırlarından olan uzaklıkları
<table cellpadding=5> —> hücre içinde resim metin gibi elemanların hücre sınırlarına uzaklıkları
<table align=left> –>right,center hizalama
<table background=resim.gif> —>arkaplan resmi
<table bgcolor=ffff00> —> arka plan rengi
<td> takısının parametreleri
align–>hizlama
bgcolor–> arka plan rengi
width,height —> boyutlar
background=resim.gif –> arkaplanresmi
bunların dışında;
<td colspan= 2> –> geniÅŸlik iki sütun geniÅŸliÄŸinde
<td rowspan = 2> —>yükseklik 2 satır yüksekliÄŸinde
bu konuda şu linkde try it yourself i tıklayarak tablo yapısını uygulamalı olarak görebilirsiniz.Şimdilik tablo konusu bu kadar.
CSS (Cascading Style Sheet)
Pazartesi, Mayıs 4th, 2009CSS HTML’ E göre daha çok stil
özelliğine sahip ve yazması daha kolay dökümanlarımızın stilini
ayarlayabileceÄŸimiz bir stil ÅŸablonu dilidir.
css in yapısı
p {
color:red;
background:yellow
}
bu dizimde p seçicidi {} arasıda koddur.Yani
seçtiğimiz html nesnesine uygulanacak kod.Şimdi önce seçicilerden sonra da kod
kısmından bahsetmek istiyorum.
seçiciler hmtl elementkerini 1-class
2-id
tanımlamarından seçebilirler.Ama bundan önce
genel seçicilerden bahsedeyim
p,h3{
font-size:3;
font-wieght:bold;
}
bu tabir ile bütün paragraf ve h3
balşlıklarını seçmiş ve büyüklüğünü 3 türünüde kalın yaptık.
*{
color:red;
}
bu kodla classlı veya id ile tanımlanmış
bütün elemanların rengini kırmızı yaptık
class seçiciler
aşağıdaki kodları notdefterine yapıştırıp
cssdeneme.html olarak kaydedelim ve çalıştıralım
<html>
<head>
</head>
<style type=”text/css”>
.mavi{
background:blue;
}
.kirmizi{
background:red;
}
</style>
<body>
<p class=”mavi”><b>bu renk
mavidir</b></p>
<p class=”kirmizi”><b>bu renk
kırmızıdır</b></p>
</body>
</html>
gördüğümüz gibi class ı mavi olan paragraf
elementini .mavi şeklinde seçtik
class seçiciler önlerine “.” alarak
tanımlama yapılır.
id seçiciler
aynı örneğin id seçiler ile yapılışı
aşşağıda;
<html>
<head>
<style type=”text/css”>
#mavi{
background:blue;
}
#kirmizi{
background:red;
}
</style>
</head>
<body>
<p id=”mavi”><b>bu renk
mavidir</b></p>
<p id=”kirmizi”><b>bu renk
kırmızıdır</b></p>
</body>
</html>
burda da id seçerken başına # koyarız vve
tanımlamamızı yaparız.
CSS’in sayfaya
eklenmesi
1-
kod içinde in-line;
css tanımlaması html tagları içerisinde
tanımlama yapılabilir
<div
style=”color:red”>deneme</div>
2-
style elementi kullanılarak;
<style type=”text/css”>
div{
color:red;
}
</style>
3-
dışardan import ederek.
<style type=”text/css”>
@import “ornek.css”;
</style>
burda aynı dizindeki ornek.css i çağırdık.Ben
en çok 3. seçeneği tercih ediyorum yani css çalıştığım sayfamla html sayfamı
ayırıyorum.
Bu konu şimdilik giriş için yeterli.Seçici
kısmını tanıdığımıza göre artık özellik kısmına yani kod kısmına
geçebiliriz.Bidaha ki yazıda bu özelliklerden bahsedicem.
Css En Önemli Özellikler
Pazartesi, Mayıs 4th, 2009Özellikler
.zemin
.knearlık
.font
.lise
.margin
.padding
.metin
.floating ve positing
.tablo
css-zemin özelikkleri
+background-color:p{background-color:#ddd;}
+background-image:body{background-image:url(/images/deneme.gif);}
+background-repeat:
body{
background:white url(deneme.gif);
background-repeat:repeat-x; —-> x yönünde resim kendini yeniliyor.
}
+background-attachment:
body{
background:white url(deneme.gif);
background-attachment:fixed —->resmin sayfa ile scroll edilip edilmeyeceÄŸi
}
+background-poistion:
body {
background-image:url(deneme.gif);
background-repeat:no-repeat;
background-position:center —>yüklenen resmin balangıç noktasını belirler.
}
css -font özellikleri
+color:Â p {color:red}
+font-family:
p{
font-family:Verdana,Arial,Helvetica,san-serif;
}
p{
font-family :”Times New Roman”; —-> birden fazla kelime içeriyorsa font bu ÅŸekilde kullanılır.
}
+font-size:Â td{font-size:12px;}
+font-weight: p{font-weight:bolder;} –> kalınlık incelik 100 -900 arası veya bold bolder normal deÄŸerleride alır.
+font-style: p {font-style:italic;} –> italic ,normal,oblique,inherit deÄŸerleri alır.
+font-variant: span{font-variant:small-caps} –>normal ,small-caps deÄŸerlerini alır.
css-liste özelliği
+list-style-type:disc,circle,square,decimal,lower-roman,upper-roman değerleri alır.
ul.arabalar
{
list-style-stype:none;
}
ol ol ol {
list-style-type:lower-roman —-> i-ii-iii-iv-v gibi
}
+list-style-image
ul{
list-style-image:url(ornek.gif);
}
+list-style:
ul { list-style:disc outside}
ol{ list-style:decimal inside}
+white-space : normal–>birden fazla boÅŸluÄŸu tek boÅŸluk sayar.
pre—> birdenfazla boÅŸluÄŸu birleÅŸtirmez.
nowrap—-> <br> etiketi hariç alt satıra geçirmez.
p{
white-space:pre;
}
css-border özelliği
+border-style:none,hidden,dotted,dashed,solid,double,groove,ridge,inset,
outset,{1,4},inherit
p.icerik{
border-style:solid;
}
+border-width:kenarlık kalınlığı
p{
border-style:solid;
border-width:1px;
}
+border-color:
p{
border-style:solid;
border-color:red;
}
css-margin ve padding

margin-elementin kenarlara olan boÅŸluÄŸu
p{
margin-right:5px; —> saÄŸa olan uzaklığı 5px demek.
}
margin-top,margin-left,margin-right,magin-bottom diÄŸer deÄŸerleri
padding-içerik alanı ile kenarlık arasındaki mesafe
p{
pading:12px;
}
padding-top,right,left,bottom diÄŸer deÄŸerleri
css-görünüm
+overflow:
.visible:kutu sınırları dışına taşan alanı gösterir.

.hidden:kutu sınırları dışına taşan alanı gizler

.scroll:kutu sınırları dışına taşan alana kaydırma çubuğu ile ulaşmamızı sağlar.
.auto:srcoll ile aynı özelliğe sahiptir.

+clip:kırpma
.resim{
position:absolute;
clip:rect(50px 130px 153px 40px)
}
html kodu;
<div class=”resim”>
<img src=”resim.jpg”> alt=”avatar” />
</div>
Bu kısımda burda bitti.Tabiki özellikler bunlarla sınırlı değil.İlerledikçe önümüze gelen diğer özelliklerden de bahsedicem.
