nedir

Diziler programcılığın konularından biridir. Bu sayfada öğrenecekleriniz, diğer programlarda da aynen veya benzer şekilde yer almaktadır. Bu sayfayı hemen değişkenlerden sonra anlatmayı düşünüyordum ama daha önce hiçbir yazılım dili bilmeyen arkadaşlara Pencere Metin kodları gibi somut derslerin daha öncelikli olduğuna verdim. Şimdi diziler konusuna geçebiliriz.

Dizi mlama
Dizileri değişkenler kümesi şeklinde mlayabiliriz. Bellekte aynı isim altında saklanan değerleri ifade eder; değerler new Array(…) kodu kullanılarak girilir. Dizilerin iki yazım türü vardır:

var hafta = new Array("pazartesi", "salı", "çarşamba", "perşembe", "cuma", "cumartesi", "pazar")
veya,
var hafta = new Array(6)
hafta[0] = "pazartesi"
hafta[1] = "salı"
hafta[2] = "çarşamba"
hafta[3] = "perşembe"
hafta[4] = "cuma"
hafta[5] = "cumartesi"
hafta[6] = "pazar"
Buradaki hafta isimli değişken 7 değerli bir dizidir. İlk değer 0. sırada sayılmaktadır. hafta[0] değişkeninin değeri "pazartesi", hafta[3]'ün değeri "perşembe"'dir. Değişkenlerden tek farkı, aynı ismi taşımaları. Değerleri yazılım boyunca değişebilir, birbirlerine değerlerini aktarabilirler.

Aşağıdaki uygulamada kullanıcının girdiği 10 sayı küçükten büyüğe doğru sıralanmaktadır.

<>
<head>
<title>Sıralama</title>
<script language="">
function sirala()
{
var kelime = new Array(9)
var i, j, k, m, ara
for (i=0; i <=9; i++)
{
kelime[i] = prompt("Metinsel bir ifade girin lütfen…","Buraya,")
}
//Sayıları sıralıyoruz.
for (j=0; j <=9; j++)
{
for (k=0; k <=8; k++)
{
if (kelime[k] > kelime[k+1])
{
ara =kelime[k]
kelime[k] = kelime[k+1]
kelime[k+1] = ara
}
}
}
for (m=0; m <= 9; m++) document.write(m + 1 + ". kelime = " + kelime[m] + "<br>")
}
</script>
</head>
<body>

<>
<p>Düğmeye basarak 10 tane yazıyı alfabetik sıraya sokabilirsiniz.</p>
<input type="button" value="Sırala" onclick="sirala()">
</>

</body>
</>

Bu uygulama için söylemek istediğim birkaç şey var. prompt kodunun yazılanları metinsel ifade olarak gördüğünü unutmayalım, bu nedenle bu yazılım alfabetik sıraya sokuyor. Yani "245" değerini, "3" değerinden küçük sayıyor. Bir diğer nokta, İngilizce karakterleri esas aldığı için çe karakterler sonda yer alıyor. Yani "z" değeri, "ş" harfinden önce geliyor. Sayısal bir sıralama yapmak isterseniz, metinsel ifadeleri sayısal ifadeye çevirmelisiniz ki, bunu henüz öğrenmediniz; yakında öğreneceksiniz.

Çok Boyutlu Diziler
Diziler tek boyutlu olmak zorunda değil. Şu ana kadar tek boyutlu dizileri gördük, oysa çok boyutlu diziler kullanmamız gerekebilir. 'te çok boyutlu dizi yok aslında ama bu bizim için bir engel değil: Tek boyutlu bir dizinin her elemanını yeni bir dizi haline getirip, iki boyutlu dizi haline getirebiliriz:

var hafta = new Array (6,1)
for(var i=0; i<=6;i++) hafta[i]= new Array()
hafta[0][0] = "pazartesi sabahı"
hafta[0][1] = "pazartesi akşamı"
hafta[1][0] = "salı sabahı"
hafta[1][1] = "salı akşamı"
hafta[2][0] = "çarşamba sabahı"
hafta[2][1] = "çarşamba akşamı"
hafta[3][0] = "perşembe sabahı"
hafta[3][1] = "perşembe akşamı"
hafta[4][0] = "cuma sabahı"
hafta[4][1] = "cuma akşamı"
hafta[5][0] = "cumartesi sabahı"
hafta[5][1] = "cumartesi akşamı"
hafta[6][0] = "pazar sabahı"
hafta[6][1] = "pazar akşamı"
Burada 7 x 2 = 14 tane değer söz konusudur iki değer grubunun (haftanın günleri, gün vakti) aralarında bir ilişki vardır. Bu örneğe 7 x 2'li bir matris de diyebiliriz, zira diziler bir matris ifadesidir. Matris bilgisi olmayan arkadaşlarımız kendi kendilerine yaptıkları denemelerle bazı bilgileri edinebilirler. Küçük bir uygulama yapalım:

<>
<head>
<title>Sıralama</title>
<script language="">
function rehber()
{
var kayit = new Array()
for (var i=0; i<=100; i++)
{
kayit[i] = new Array()
kayit[i][0]=prompt("Arkadaşınızın ismini girin lütfen","İsim")
if (kayit[i][0]==null || kayit[i][0]=="") break
kayit[i][1]=prompt(kayit[i][0] + " isimli arkadaşınızın telefonunu girin lütfen", "")
}
document.write("Rehbere kaydedilmiş isim numaraları:<br>")
for (var j=0; j<=i;j++)
{
document.write(kayit[j][0] + ": " + kayit[j][1] + "<br>")
}
}
</script>
</head>
<body>

Aşağıdaki düğmeye basarak numaralarını öğrenebilirsiniz.<br><br>
<>
<input type="button" value=" Rehberi" onclick="rehber()">
</>

</body>
</>

Diziler Üzerinde İşlemler
Diziyi yazılım içinde değer vermişsek, o dizinin kaç değeri olduğunu biliriz değer sayısını bulmaya çalışmayız. Ama eğer diziye girilecek değer sayısını kullanıcıya bırakmışsak, dizinin taşıdığı değer sayısını yazılım içinde ifade etmek isteriz. Dizilerin taşıdığı değer sayısını ifade etmek için length komutu kullanılır.

kaynak: ordan burdan

Doküman (document) nesnesi dokümanının tamamını ifade etmektedir 'de kullandığımız <p>, <h1>, <div>, vb. gibi tüm komutları içerir. Doküman nesnesini 'deki <body> ü olarak düşünebilirsiniz.

Aslında ilk dersinden başlayarak, document.write() komutu ile dokümanlarına yazı eklemeyi öğrenmiştik.

Doküman Nesnesinin İçeriğini Değiştirmek
Doküman nesnenin içeriğini değiştirmek için innerHTML kullanılır. Önce doküman id="…" parametresi ile mlanır. mlanan doküman dokümantanımı.innerHTML ile içerik değiştirilir:

<>
<head>
<title>InnerHTML</title>
<script language="">
function cikis()
{
ilan.innerHTML="Barımızdan çıkış 50 milyon TL!!!"
ilan.style.color="blue"
}
function giris()
{
ilan.innerHTML="Barımıza giriş bedavadır."
ilan.style.color="black"
}
</script>
</head>
<body>

<h1 id="ilan" onmouseover="cikis()" onmouseout="giris()" >Barımıza giriş bedavadır.</h1>

</body>
</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Doküman Başlığını Belirlemek
'de <title> komutu ile sayfa başlığını belirliyorduk. Sayfa başlığını değiştirmek için document.title komutunu kullanacağız.

document.title komutu, sayfa başlığı değerini taşıyor. Bu değeri değiştirdiğimizde sayfa başlığı da değişir.

<>
<head>
<title>Sayfa Başlığını Değiştirmek</title>
</head>
<body>
<p>Sayfa başlığı: <b><script language="">document.write(document.title)</script></b></p>
</body>
</>

[Sayfayı göster] [Temizle] [İlk haline getir]

Bu örnek biraz basit oldu ama document.title komutunun ne işe yaradığını gösteriyor. ları sayfasından sonra sayfa başlığını ziyaretçiye yazdırabiliriz. Veya saat bilgisini başlığa yansıtabiliriz.

Doküman Nesnesini Türünü Belirlemek
Daha önce belirttiğimiz gibi doküman nesnesi 'in herhangi bir doküman nesnesi olabilir: <p>, <h1>, <div>, vb. Nesne ne olursa olsun id parametresiyle isimlendirerek o nesne içeriğine dilediğimiz komutları verebiliriz.

Peki elimizde id ile verdiğimiz ismi kullanarak, nesnenin ne olduğunu sayfada gösterebilir miyiz? (Bazen oldukça işe yarıyor.) O nesnenin ne olduğunu bilmek istersek getElementById().tagName komutunu kullanırız.

<>
<head>
<title>getElementById() Kullanımı</title>
<script language="">

function bul(metin)
{
var x=document.getElementById(metin)
alert("Ben bir <" + x.tagName + "> elemanıyım")
}
</script>
</head>
<body>
<h1 id="eleman1" onclick="bul('eleman1')">Bana tıklarsanız, hangi nesnesi olduğumu görürsünüz!!!</h1>
<h2 id="eleman2" onclick="bul('eleman2')">Bana tıklarsanız, hangi nesnesi olduğumu görürsünüz!!!</h2>
<h3 id="eleman3" onclick="bul('eleman3')">Bana tıklarsanız, hangi nesnesi olduğumu görürsünüz!!!</h3>
<h4 id="eleman4" onclick="bul('eleman4')">Bana tıklarsanız, hangi nesnesi olduğumu görürsünüz!!!</h4>
<p id="eleman5" onclick="bul('eleman5')">Bana tıklarsanız, hangi nesnesi olduğumu görürsünüz!!!</p>
<div id="eleman6" onclick="bul('eleman6')">Bana tıklarsanız, hangi nesnesi olduğumu görürsünüz!!!</div>
</body>
</>

[Sayfayı göster] [Temizle] [İlk haline getir]

Arka Plan Rengini Değiştirmek
Arka plan rengini değiştirmek için document.bgcolor komutunu kullanırız.

<>
<head>
<title>Arka Plan Renkleri</title>
<script language="">

function renklendir(n)
{
switch(n)
{
case 1: document.bgColor="red"
break
case 2: document.bgColor="yellow"
break
case 3: document.bgColor="blue"
break
case 4: document.bgColor="orange"
break
case 5: document.bgColor="green"
break
case 6: document.bgColor="crimson"
break
default: document.bgColor="white"
break
}
}
</script>
</head>

<body>
<a href="#" onclick="renklendir(1)">Kırmızı</a><br /><br />
<a href="#" onclick="renklendir(2)">Sarı</a><br /><br />
<a href="#" onclick="renklendir(3)">Mavi</a><br /><br />
<a href="#" onclick="renklendir(4)">Turuncu</a><br /><br />
<a href="#" onclick="renklendir(5)">Yeşil</a><br /><br />
<a href="#" onclick="renklendir(6)">Bordo</a><br /><br />
<a href="#" onclick="renklendir(7)">Beyaz</a><br /><br />
</body>
</>

kaynak: ordan burdan

Tablo Biçimi

sayfasında sınır çizgileri ile ilgili öğrendiğimiz parametreleri kullanabiliriz. Örnek olması açısından bu parametrelerin bir kısmını içeren bir uygulama geliştirelim:

<>
<head>
<title>Tablo parametreleri özellikleri</title>
<script language="">

function cerceve(x,y)
{
switch(x)
{
case 1: tablo.frame=y;yazi1.innerHTML="frame: "+y; break
case 2: tablo.rules=y;yazi2.innerHTML="rules: "+y; break
tablo.x
}
}

</script>
</head>
<body>

Tablonun hücrelerine tıklayarak istediğiniz parametre değerini atayın<br><br>
<table id="tablo" border="1" bordercolor="black" cellspacing="0" cellpadding="0" width="720">
<tr>
<td onclick="cerceve(1,'above')"><b>frame=</b><em>"above"</em></td>
<td onclick="cerceve(1,'below')"><b>frame=</b><em>"below"</em></td>
<td onclick="cerceve(1,'vsides')"><b>frame=</b><em>"vsides"</em></td>
<td onclick="cerceve(1,'hsides')"><b>frame=</b><em>"hsides"</em></td>
</tr><tr>
<td onclick="cerceve(1,'rhs')"><b>frame=</b><em>"rhs"</em></td>
<td onclick="cerceve(1,'lhs')"><b>frame=</b><em>"lhs"</em></td>
<td onclick="cerceve(1,'box')"><b>frame=</b><em>"box"</em></td>
<td onclick="cerceve(1,'border')"><b>frame=</b><em>"border"</em></td>
</tr><tr>
<td onclick="cerceve(1,'void')"><b>frame=</b><em>"void"</em></td>
<td onclick="cerceve(2,'rows')"><b>rules=</b><em>"rows"</em></td>
<td onclick="cerceve(2,'cols')"><b>rules=</b><em>"cols"</em></td>
<td onclick="cerceve(2,'all')"><b>rules=</b><em>"all"</em></td>
</tr><tr>
<td onclick="cerceve(2,'groups')"><b>rules=</b><em>"groups"</em></td>
<td onclick="cerceve(2,'none')"><b>rules=</b><em>"none"</em></td>
<td> </td>
<td> </td>
</tr></table><br><br>
<a id="yazi1">frame:</a><br>
<a id="yazi2">rules:</a>
</body>

</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Bu uygulamayla frame rules parametre kombinasyonlarını oluşturabiliyoruz. CSS derslerinde bunun gibi daha birçok parametre stil özelliği görmüştük. Hepsini; DHTML dersindeki DOM başlığı altında anlatıldığı gibi, uygulayabiliyoruz.

Satır Dizisi Satır Komutları
Tablo satırlarını tabloismi.rows(satır no) dizisi ile bir mlayabiliyoruz. Örneğin beyaztablo.rows(0) komut ifadesiyle beyaztablo isimli tablonun birinci satırını belirtmiş oluyoruz. Satırların yüksekliğini height komutu ile, satırların yatay hizalama şeklini align komutu ile belirleyebiliriz. (Bunu daha önce olduğu gibi, <tr> koduna id parametresi ile isim verdikten sonra parametre atayarak da yapabiliriz.)

<>
<head>
<title>rows dizisi</title>
<script language="">

function satir()
{
var x=document.forms.form_satir.yuksek.selectedIndex
var y=document.forms.form_satir.hiza.selectedIndex
var z=document.forms.form_satir.satir_no.selectedIndex
tablo.rows[z].height=document.forms.form_satir.yuksek.options[x].text
tablo.rows[z].align=document.forms.form_satir.hiza.options[y].text
}

</script>
</head>
<body>

Aşağıdaki komutları bu komutları uygulayacağınız satır numarasını seçin düğmeye basın:<br>
< name="form_satir">
height:
<select name="yuksek">
<option>10
<option>25
<option>50
<option>75
<option>100
</select>

align:
<select name="hiza">
<option>left
<option>center
<option>right
</select>

Satır no:
<select name="satir_no">
<option>1
<option>2
<option>3
<option>4
<option>5
</select><br><br>
<input type="button" value="bas" onclick="satir()"><br>
</>
<table id="tablo" border="1" cellspacing="2" cellpadding="2" width="500">
<tr><td>satır1sütun1</td><td>satır1sütun2</td></tr>
<tr><td>satır2sütun1</td><td>satır2sütun2</td></tr>
<tr><td>satır3sütun1</td><td>satır3sütun2</td></tr>
<tr><td>satır4sütun1</td><td>satır4sütun2</td></tr>
<tr><td>satır5sütun1</td><td>satır5sütun2</td></tr>
</table><br><br>
</body>

</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Uygulamada height align komutlarını kullandık, ancak rows dizisine bgcolor, width, vb. parametreleri komut olarak atayamazsınız, sonuç vermez.

Tabloya satır eklemek tablodan satır çıkarmak için deleteRow(satır no) (satır sil) insertRow(satır no) (satır ekle) komutlarını kullanırız. beyaztablo.deleteRow(2) kodu ile beyaztablo isimli tablonun 3. satırını sileriz. beyaztablo.insertRow(2) komutu 3. satırın yukarısına satır eklemeye yarar.

<>
<head>
<title>rows dizisi</title>
<script language="">

function satir_sil()
{
var x=tablo.rows.length - 1
if (x != 0) tablo.deleteRow(x)
}
function satir_ekle()
{
var y=tablo.rows.length
tablo.insertRow(y)
}

</script>
</head>
<body>

<>
<input type="button" value="Satır Ekle" onclick="satir_ekle()">

<input type="button" value="Satır Sil" onclick="satir_sil()"><br>
</><br>
<table id="tablo" border="1" cellspacing="2" cellpadding="2" width="500">
<tr><td>satır1sütun1</td><td>satır1sütun2</td></tr>
<tr><td>satır2sütun1</td><td>satır2sütun2</td></tr>
<tr><td>satır3sütun1</td><td>satır3sütun2</td></tr>
<tr><td>satır4sütun1</td><td>satır4sütun2</td></tr>
<tr><td>satır5sütun1</td><td>satır5sütun2</td></tr>
</table><br><br>
</body>

</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Uygulamada da görüldüğü üzere insertRow() ile sadece satır ekleriz ama satırların içine hücre ekleyemeyiz.

Hücre Dizisi Hücre Komutları
Tabloda önce satırlar, sonra satırların içinde hücreler mlanır. Tablodaki satırları rows dizisi ile ifade edilebileceğini görmüştük, şimdi de satırlardaki hücreleri cells dizisi ile ifade edeceğiz. cells dizisi rows dizisindeki hücreleri ifade ediyor: tablo_adi.rows[1].cells[0] kodu ile tablodaki ikinci satırın ilk hücresini belirtmiş oluruz.

rows dizisine align height parametrelerini komut olarak atayabiliyorduk, cells dizisine komut olarak atanabilen parametreler şunlardır: align, valign, colSpan rowSpan. Aşağıdaki uygulama ile colspan parametresinin cells dizisine komut olarak atandığını göreceğiz:

<>
<head>
<title>Colspan Parametre Komutu</title>
<script language="">

function hucre()
{
var x=document.forms.form_hucre.secenek.selectedIndex
tablo.rows[0].cells[0].colSpan=document.forms.form_hucre.secenek.options[x].text
tablo.rows[0].cells[1].colSpan=document.forms.form_hucre.secenek.options[4-x].text
}

</script>
</head>
<body>

< name="form_hucre">
Hücre1 için <b>colspan</b>:
<select name="secenek">
<option>1
<option>2
<option>3
<option>4
<option>5
</select>
<input type="button" value="bas" onclick="hucre()"><br>
</>
<table id="tablo" border="1" cellspacing="2" cellpadding="2" width="500">
<tr><td colspan="3">hücre1</td><td colspan="3">hücre2</td></tr>
<tr>
<td>hücre3</td><td>hücre4</td>
<td>hücre5</td><td>hücre6</td>
<td>hücre7</td><td>hücre8</td>
</tr></table>

</body>
</>
[Sayfayı göster] [Temizle] [İlk haline getir]

kaynak: ordan burdan

Sayfadaki nesnelerini, name parametresiyle mladığımız isimler aracılığıyla çağırabiliriz: document.forms.yeniform gibi. komutlarını da bu kök üzerine yerleştiririz. komutlarını topluca listeledim.

action Formun işlem sayfasına girmesini sağlar.
method Formun metodunu girer (post/get).
reset() bilgilerini siler (resetler).
submit() bilgilerini girer.
acceptCharset İstemcinin (server'ın) desteklediği karakter listesini girer.
elements elemanlarını bir dizi haline getirerek girer.

Bu komutlar üzerinde şimdilik fazla durmayalım, çünkü henüz bu tip bir uygulama yapmaya bilgilerimiz yeterli değil. ASP CGI derslerimizde bu komutları fazlasıyla kullanacağız. Yine de bazılarının işlevini sizler anlamışsınızdır. Çoğu okuyucunun Ziyaretçi Defteri, Bilgi Giriş Formu, Forumu, Arama Motoru yapmak için sabırsızlandığını hatta için için henüz göstermediğim için bana kızdığını biliyorum. :) Ama şunu belirtmeliyim ki bu tip ları sadece ile yapamazsınız. bilgileri saklamaz, depolamaz, veri tabanı oluşturmaz; sadece sayfa yüklüyken değişkenlerinde veri tutabilir. Herşeyi hemen yapmak isteyen arkadaşlar birazcık sabretsin bu sayfanın altındaki bilgileri öğrenmeye çalışsınlar. CGI ASP derslerinde acısını çıkaracağız ama önce bir script dilini çok iyi öğrenmek gerekir.

Bilgi Giriş Elemanları
Bilgi giriş elemanlarının (düğme, metin kutusu, kontrol kutusu,vb.) yapısını derslerimizde görmüştük. O sayfada larının parametreleri de tılmıştı. İstersek o parametreleri koduyla mlayabiliriz. Örneğin metin kutusunun uzunluğunu karakter cinsinden belirleyen size parametresini kodlarıyla mlayalım:

<>
<head>
<title>Size Parametresi,</title>
<script language="">

function uzunluk(x)
{
document.forms.Form1.mesaj.size=x
}

</script>
</head>
<body>

< name="Form1">
Notunuz:<input name="mesaj"><br><br>
<table cellpadding="0" cellspacing="0" border="0" width="400"><tr>
<td><input type="button" onclick="uzunluk(10)" value="Kısa Not"></td>
<td><input type="button" onclick="uzunluk(40)" value="Orta Not"></td>
<td><input type="button" onclick="uzunluk(70)" value="Uzun Not"></td>
</tr></table>
</>

</body>
</>
[Sayfayı göster] [Temizle] [İlk haline getir]

size parametresi öğrendiklerimizden sadece bir tanesi. Diğer parametreleri de bu şekilde kullanabiliriz. Örneğin maksimum karakter girişini belirlemek için document.forms.Form1.mesaj.maxlength kodundan yararlanabiliriz. Gerisini sizlerin yaratıcılığına bırakayım.

Hatırlarsanız, bir de value parametresi vardı. Bu parametreyle metin kutusuna yazı yazdırabiliyorduk. kodlarıyla bu parametreyi, metin kutusuna yazılı olan ifadeyi değişkenlere aktarmak için kullanabiliriz:

<>
<head>
<title> Sayfası,</title>
<script language="">

function gir()
{
bilgi1.innerHTML=document.forms.kimlik.veri1.value
bilgi2.innerHTML=document.forms.kimlik.veri2.value
bilgi3.innerHTML=document.forms.kimlik.veri3.value
bilgi4.innerHTML=document.forms.kimlik.veri4.value
bilgi5.innerHTML=document.forms.kimlik.veri5.value
}

</script>
</head>
<body>

< name="kimlik">
Adınız:<input name="veri1">
SoyAdınız:<input name="veri2"><br>
Yaşınız:<input name="veri3">
Cinsiyetiniz:<input name="veri4">
Telefonunuz:<input name="veri5"><br><br>
<input type="button" value="Bilgileri Tabloya Gir" onclick="gir()"><br><br>
<table cellpadding="5" cellspacing="0" border="1">
<tr><td width="100">Adı:</td><td id="bilgi1" width="300"> </td></tr>
<tr><td>SoyAdı:</td><td id="bilgi2"> </td></tr>
<tr><td>Yaşı:</td><td id="bilgi3"> </td></tr>
<tr><td>Cinsiyeti:</td><td id="bilgi4"> </td></tr>
<tr><td>Telefonu:</td><td id="bilgi5"> </td></tr>
</table>
</>

</body>
</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Bu uygulamayla bir Bilgi Giriş Formu yaptık aslında. Ama bir farkla, girdiğimiz bilgiler pencere kapatılınca yok oluyor. Buradan şu sonucu çıkartabilirsiniz: bilgileri aktarmaya dönüştürmeye yarar ancak o bilgileri saklamaya yaramaz. Bunun için veri tabanı gereklidir bu veri tabanını CGI ASP derslerimizde oluşturacağız. Sanırım şimdi daha iyi anlaşıldı.

Veri tabansız da birçok şey yapılabiliniyor. Son uygulamamızı anlayan arkadaşlar rahatlıkla basit bir hesap makinesi yapabileceklerdir. Normal metin kutusu düğmeler yerine resimler de kullanılabilinir. İsterseniz deneyin, zor bir tarafı yok. Ders sayfalarının sonunda yer alan Hesap Makineleri örneklerine de bakabilirsiniz.

Kontrol kutularını seçmek için checked parametresini true değeri verebiliriz veya bunu ile document.forms.form1.kontrolkutusu1.checked=true şeklinde ifade edebiliriz. Hatırlayacağınız üzere; radyo kutusunun işlevi gereği sadece birinin seçilmesi için, her kutuya aynı ismi veriyorduk. Bu durumda yukarıda yazıldığı gibi name özelliğini kullanamayız ama id parametresini kullanarak bu sorunu halledebiliriz. Aşağıdaki uygulamaya bakalım.

<>
<head>
<title>Bundylogy Sorusu,</title>
<script language="">

function cevap()
{
if (document.soru.rad3.checked==true) paragraf.innerHTML="En doğru cevabı işaretlediniz. Bravooo!"
else paragraf.innerHTML="Doğru ama en doğru değil, Al Bundy mantığıyla düşünün."
}

</script>
</head>
<body>

< name="soru">
<b>Al Bundy soruyor:</b>Marcy Darcy ? (Doğruluk derecesi en yüksek olanı işaretleyin lütfen…)<br>
<label for="rad1">
<input type="radio" id="rad1" name="radyo"> Part time çalışan bir paperboy'dur.
</label><br>
<label for="rad2">
<input type="radio" id="rad2" name="radyo"> Jefferson Darcy'nin kocasıdır.
</label><br>
<label for="rad3">
<input type="radio" id="rad3" name="radyo"> Bir tavuktur.
</label><br>
<label for="rad4">
<input type="radio" id="rad4" name="radyo"> Materyalist ruhu gelişkin bir banka çalışanıdır.
</label><br>
<label for="rad5">
<input type="radio" id="rad5" name="radyo"> Bundy'lerin komşusudur.
</label><br>
<input type="button" value="Değerlendir" onclick="cevap()">
<p id="paragraf">Doğru seçeneği işaretlediğinizden eminseniz, yukarıdaki düğmeye basın.</p> </>

</body>
</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Sözün özü, tüm parametreleri komut haline getirebiliyoruz. Bunun yanısıra Elemanları için kullanılan başka komutlar da var:

focus() mlanan bilgi giriş aracına odaklanmayı sağlar.
blur() mlanan bilgi giriş aracının odak halinden çıkmasını sağlar.
click() mlanan bilgi giriş aracını tıklamaya yarar.
select() mlanan bilgi giriş aracının seçili hale gelmesini sağlar..

Tüm bu komutların yer aldığı öğretici bir uygulama yapalım:

<>
<head>
<title>Bilgi giriş eleman komutları,</title>
<script language="">

function komut(x)
{
switch(x)
{
case 1: document.form1.metinkutusu.select()
break
case 2: document.form1.metinkutusu.focus()
break
case 3: document.form1.metinkutusu.blur()
break
case 4: document.form1.dugme.click()
}
}

</script>
</head>
<body>

< name="form1">
<input name="metinkutusu" value="metin kutusu">
<input type="button" name="dugme" value="uyarı düğmesi" onclick="alert('Alarm!!!')"><br><br>
<input type="button" value="Metin kutusuna odaklan" onclick="komut(2)"><br>
<input type="button" value="Metin kutusundaki yazıyı seç" onclick="komut(1)"><br>
<input type="button" value="Metin kutusunu seçili halden çı" onclick="komut(3)"><br>
<input type="button" value="Uyarı düğmesine bas" onclick="komut(4)"><br>
</>

</body>
</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Bu uygulamamızı irdeleyelim biraz: select() komutu aracını seçili hale getiriyor odaklıyor. Yani ayrıca odaklamamıza gerek kalmıyor, üzerine blur() komutunu uygularsak, odaklanma kalkıyor ama seçili hal devam ediyor tabi.

Seçenek Kutusu
derslerinde seçenek kutusunun görüntülendiği anlatılmıştı ama kullanıldığı üzerine birşey söylenilmemişti. Şimdi söyleyelim. Seçenek kutusunda kullanıcının işaretlediği seçeneği selectedIndex komutuyla indeks (sıra) numarası cinsinden ifade ediyoruz:

<>
<head>
<title>Seçenek Kutusu İndeksleri,</title>
<script language="">

function sec()
{
var x=document.sira_no.yazar.selectedIndex
alert(x+1)
}

</script>
</head>
<body>

< name="sira_no">
<select name="yazar"
<option>Mario Llosa Vargas
<option>Amin Maalouf
<option>John Steinback
<option>Ursula K. Leguin
<option>Panait Istrati
</select>

<input type="button" value="Kaçıncı Seçenek" onclick="sec()">
</>

</body>
</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Bu uygulama, kullanıcının seçtiği seçeneğin sıra numarasını gösteriyor. selectedIndex komutu ile seçeneğe 0 (sıfır) değeri verdiğinden, uygulamada sıra numarasını x+1 şeklinde ifade ettik.

Seçenek kutusundaki seçenekler options isimli bir dizi oluşturur. İlk seçenek options[0] şeklinde belirtilir. options[0].text ise, ilk seçeneği metinsel değer olarak ifade eder. Önceki uygulamada kullanıcının seçtiği seçeneğin sıra numarasını ifade ediyorduk. Sıra numarası yerine, seçeneği doğrudan ifade edebiliriz?

<>
<head>
<title>Seçenek Kutusu: Seçilen Seçeneği Gösterme,</title>
<script language="">

function sec()
{
var x=document.secenek.yazar.selectedIndex
var y=document.secenek.yazar.options[x].text
alert(y)
}

</script>
</head>
<body>

< name="secenek">
<select name="yazar"
<option>Mario Llosa Vargas
<option>Amin Maalouf
<option>John Steinback
<option>Ursula K. Leguin
<option>Panait Istrati
</select>

<input type="button" value="Hangi Seçenek" onclick="sec()">
</>

</body>
</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Ne yaptık? Kullanıcının seçtiği seçeneği sıra sayısı cinsinden ifade ettik. (selectedIndex ile) Sonra seçilen sıra numarasını options dizini text komutu sayesinde metinsel değere dönüştürdük. text yerine index komutu kullansaydık, yine sıra numarası elde edecektik.

Dilersek text komutunu seçeneklerin metnini değiştirmek için kullanabiliriz.

<>
<head>
<title>Seçenek Kutusu Seçenek Değiştirme,</title>
<script language="">

function secenekekle()
{
var x=document.forms.secenek.adsoyad.value
var y=document.secenek.yazar.selectedIndex
document.secenek.yazar.options[y].text=x
}

</script>
</head>
<body>

< name="secenek">
<select name="yazar"
<option>Mario Llosa Vargas
<option>Amin Maalouf
<option>John Steinback
<option>Ursula K. Leguin
<option>Panait Istrati
</select><br>
Yazar ismi:
<input name="adsoyad" size="80">

<input type="button" value="Seçeneği Değiştir" onclick="secenekekle()">
</>

</body>
</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Seçenek kutusunu düğmeyle beraber kullanmak zorunda değiliz. Seçenek kutusunda başka bir seçeneği işaretlediğimiz zaman işlem yapılacaksa onchange olayı kullanılmalıdır.

<>
<head>
<title>Seçenek Kutusu: OnChange Olayı,</title>
<script language="">

function degistir()
{
var x=document.secenek.yazar.selectedIndex
yazi.innerHTML=document.secenek.yazar.options[x].text
}

</script>
</head>
<body>

< name="secenek" onchange="degistir()">
<select name="yazar">
<option>Mario Llosa Vargas
<option>Amin Maalouf
<option>John Steinback
<option>Ursula K. Leguin
<option>Panait Istrati
</select><br>
<p id="yazi">Seçeneği değiştiriniz…</p>
</>

</body>
</>

kaynak: ordan burdan

Gelişmiş programlarda (MS Office, Adobe Photoshop vb.) tıklamak ile shift'e basarak tıklamak arasında fark vardır. Eğer bu farkı web sayfalarınıza taşımak istiyorsanız event.shiftKey olay komutunu kullanabilirsiniz. Bu komut shift tuşuna basılıp, basılmadığını gösterir; eğer onclick durumunda event.shiftkey kodu kullanırsanız, kullanıcının tıkladığında shift'e basıp basmadığını kontrol etmiş olursunuz. Aynı şekilde bu kodu onmouseover durumunda kullandığınızda, fareyle nesnenin üzerine gelindiğinde shift'e basılıp, basılmadığını kontrol etmiş oluruz. Bu çeşit fare tuş kombinasyonları türetebiliriz.

<>
<head>
<title>Tuş fare kombinasyonları,</title>
<style>
table {visibility:hidden} </style>
<script language="">

function rubai()
{
if (event.shiftKey==0)
{
hayyam.style.visibility="visible"
yazi.innerHTML="Ey kör! Bu yer, bu gök, bu yıldızlar boştur boş!<br>Bırak onu bunu da gönlünü hoş tut hoş!<br>Şu durmadan kurulup dağılan evrende<br>Bir nefestir alacağın, o da boştur boş!"
}
else
{
var yenisayfa = window.open("", "Yeni_Sayfa", "toolbar=no,location=no,directories=no, status=no, menubar=no,scrollbars=no, resizable=no,copyhistory=no,width=400, height=120")
yenisayfa.document.write("Ey kör! Bu yer, bu gök, bu yıldızlar boştur boş!<br>Bırak onu bunu da gönlünü hoş tut hoş!<br>Şu durmadan kurulup dağılan evrende<br>Bir nefestir alacağın, o da boştur boş!")
}
}

</script>
</head>
<body>
<>
<p>Düğmeye normal tıklamakla, <b>Shift</b>'e basarak tıklamak arasında fark var.</p>
<input type="button" value="Ömer Hayyam" onclick="rubai()">
</>
<center><table id="hayyam" cellpadding="5" cellspacing="0" border="0" width="400" bgcolor="#D0BB82">
<tr><td id="yazi">Rubai</td></tr></table></center>
</body>
</>
[Sayfayı göster] [Temizle] [İlk haline getir]

Bu uygulamamızda onclick olayında event.shiftKey kodu kullandık, böylece fare ile shift tuşunun beraber basılmasına kod yazdık. event.shiftKey'e 1/0 gibi true/false değerleri verebiliriz. Benzer şekilde Alt Ctrl tuşları için şu olay kodlarını kullanabilirsiniz: altKey, ctrlKey.

kaynak: ordan burdan

<>
<head>
<title>Pencere koordinatları,</title>
<script language="">

İmlecin hangi yatay düşey koordinatlarda olduğunu belirlemek için clientX, clientY veya offsetX, offsetY veya x, y olay komutlarından yararlanılır.

function imlec()
{
var a=event.x
var b=event.y
yazi.innerHTML="Pencere Koordinatları = (" + a + ";" + b + ")"
}

</script>
</head>
<body onclick="imlec()">
<h3 id="yazi">Fareyle sayfanın üzerine tıklayınız.</h3>
</body>
</>

Bu kodların imlecin, pencerenin sol üst köşesine olan yatay düşey mesafeyi piksel cinsinden vermektedir. Eğer pencerenin değil de ın sol üst köşesine olan yatay düşey mesafeyi edinmek istiyorsak, screenX, screenY komutlarını kullanırız.

<>
<head>
<title> koordinatları,</title>
<script language="">

function imlec()
{
var a=event.screenX
var b=event.screenY
yazi.innerHTML=" Koordinatları = (" + a + ";" + b + ")"
}

</script>
</head>
<body onclick="imlec()">
<h3 id="yazi">Fareyle sayfanın üzerine tıklayınız.</h3>
</body>
</>

kaynak: ordan burdan

onclick Fareyle tıklamayı ifade eder.
ondblclick Fareyle çift tıklamayı ifade eder.
onmouseover Farenin imleciyle üzerine gelmeyi ifade eder.
onmouseout Farenin imlecini üzerinden çekmeyi ifade eder.
onmousedown Fare düğmesine basmayı ifade eder.
onmouseup Fare düğmesini bırakmayı ifade eder.
onload Sayfanın yüklenmesini ifade eder.
onunload Sayfanın kapatılmasını ifade eder.
onchange aracının değişmesini ifade eder.
onsubmit bilgilerinin gönderilmesini ifade eder.
onreset bilgilerinin silinmesini ifade eder.
onselect aracının seçilmesini ifade eder.
onblur aracının pasif hale geçmesini ifade eder.
onfocus aracının aktif hale geçmesini ifade eder.
accesskey İstenen karakterin girilmesini ifade eder.
tabindex Nesnelerin işlem sıralamasını numaralandırır.
onkeydown Tuşun basılmasını ifade eder.
onkeyup Tuşun salınmasını ifade eder.
onfocus Tuşun basılıp salınmasını ifade eder.

kaynak: ordan burdan

alert(…) Uyarı kutusuyla kullanıcıya mesaj gönderir.
alert("Bu sayfa henüz hazırlanmamıştır!")
confirm(…) Onay kutusuyla kullanıcı tarafından yönlendirilme olanağı r.
confirm("Sayfaya girmek istiyor musunuz?")
prompt(…) Yazı kutusuyla kullanıcıdan bilgi alır.
prompt("Yaşınızı girin lütfen!","Buraya…")
window.open(…) Özelliklerini belirleyebileceğiniz yeni bir sayfa açar.
window.open("http://www.imdb.com", "sinema", "toolbar=0, menubar=0, resizable=1")
location Sayfaya yönlendirmeyi sağlar.
location = "http://www.imdb.com"
location.reload() Sayfayı yeniden yüklemeye (refresh) yarar.
location.reload()
window.close Pencereyi kapatır.
window.close
window.status Pencere kutusuna yazı yazmayı sağlar.
window.status = "Sayfama hoş geldiniz."

pencere komutları bütün hızıyla devam ediyor…

Komutları
Kullanıcıların ı hakkında bilgiler almak isteyebiliriz. Bunun için aşağıdaki screen () komutları kullanılır.

screen.width Kullanıcının genişliğini piksel cinsinden ifade eder.
screen.width
screen.height Kullanıcının yüksekliğini piksel cinsinden ifade eder.
screen.height
screen.availWidth Kullanıcının kullanılabilir genişliğini piksel cinsinden ifade eder.
Penceremizin boyutlarını kodları kullanarak istediğimiz ölçüye getirebiliriz. Bunun için resizeTo(…, …) kodu kullanılır.

resizeTo ile pencerenin konumlarını istediğimiz değerlere getiriyoruz. Şimdiki kodumuz resizeBy(…, …) ise pencere boyutunu parantez içinde yer alan piksel değerleriyle artırmaya (negatif piksel değerleriyle azaltmaya) yarıyor. Önceki uygulamamızdaki resizeTo(x,y) yerine resizeBy(x,y) ifadesi koyarsanız, uygulama yürürlükteki pencereyi artırma (negatif değer koyarsanız azaltma) işlemi yaparsınız.

Penceredeki sayfa boyutu, pencereninkinden büyükse, kayma kutuları (scrollbars) kullanılır. kodlarıyla sayfayı kaydırmak istiyorsak scroll(…, …) komutunu kullanırız. Örneğin window.scroll(0,300) kodu ile penceredeki sayfanın, en tepeden 300 piksel aşağıya kaymasını sağlarız. Aynı işlevi gören scrollTo komutunu da kullanabiliriz. Sayfanın yürürlükteki konumundan aşağıya kaymasını istiyorsak, scrollBy komutunu kullanırız.

Pencere nesnesinin ekrana göre konumunu screenLeft screenTop kodları ile belirleyebiliyorduk. Peki pencereyi istediğimiz konuma kodlarıyla getiririz? Sorunun cevabı: moveTo moveBy kodları. moveTo komutu ile pencerenin sol üst köşesini istediğimiz koordinatlara getirebiliyoruz, moveBy ise pencerenin sol üst köşesini istenen miktarda hareket ettirmeye yarıyor.

screen.availWidth
screen.availHeight Kullanıcının kullanılabilir yüksekliğini piksel cinsinden ifade eder.
screen.availHeight
screen.colorDepth Kullanıcının kullandığı derinliğini bit (byte) cinsinden ifade eder.
screen.colorDepth

screenLeft (sola yatay uzaklık)
screenTop (sağa yatay uzaklık):

kaynak: ordan burdan

örnek bir tablomuz var

<table id=tablo>
<tr>
<td>
<a href=""><span>deneme yazızınız</span></a>
</td>
</tr>
</table>

şimdi css yazalım

<style>
#tablo td {background-color:red;font-size:12px}
#tablo td a{text-decoration:none}
#tablo td a span {color:blue}
</style>

sonuç

tablodaki her <td> nin bgcoloru red olacaktır
her <td>nin içindeki <a> altında çizgi olmayacaktır
her <td> nin içindeki her <a> nın içindeki <span> lardakiler blue yazılacaktır.

sayfadaki başka <td> ,<a> <span> lara bu uygulanmayacaktır

sadece ID ile belirlen <table> nin altındakilere uygulanacaktır

kaynak: ordan burdan

<?

$handle = opendir('klasor1');

while (false != ($file = readdir($handle)) {
$files[] = $file;
}

shuffle($files);
echo $files[0];
?>

kaynak: ordan burdan

önce forma
<input name=giriskodu type=hidden></input>

1-gizli bir input gireriz name adı sizin belirleyeceğiniz herhangibir ad olabilir.

2-bu inputun değeri boş olacaktır.

3-post veya get ettiğimiz sayfaya bu inputtaki değer boş olarak gelmesi gerekir.

4-eğer robotlar tarafından dolduruluyorsa robot bu alanın boş olacabileceğini tahmin edemeyeceğinden mutlaka dolu olarak gelecektir.

5-eğer alan dolu geliyorsa o zaman sonuçları çalıştırılmayacaktır.

kaynak: ordan burdan

<?

$mysql = mysql_query("select * from table ORDER BT rand() DESC LIMIT 10");
while($w = mysql_fetch_array($mysql)) {

echo "<a href=".$w['kolon'].">".$w['kolonadi']."</a><br>";

}

?>

kaynak: ordan burdan

<?
$rapid="http://.com/files/60078793/VT-AEF_RSF.part01.";
$=file_get_contents($rapid);
$cumle='<input type="submit" name="dl.start" value="Free">';
if(ereg($cumle,$))
{
echo "link sağlam";}
else{echo "link ölmüş";
}

?>

kaynak: ordan burdan

accesskey="karakter": denetimlerinde <a> (anchor) etiketlerinde, doküman öğesine erişim için kullanılabilen tek karakter.

align="metin": Bir dokümanın bir kısmındaki bilginin hizalanması.

alt="metin": Resimleri, formları, nesneleri bir dokümanın diğer kısımlarını mlayan alternatif metin.

char="karakter": Bir tablonun içeriği hizalanırken, bir hizalama ekseni olarak davranan karakter.

charoff="sayı": Tablo içeriğini hizalarken, eksen karakterinden itibaren bırakılacak boşluk sayısı.

class="metin": Doküman öğesine atanmak üzere birbirinden boşluklarla ayrılmış bir veya daha fazla sınıf ismi.

dir="metin": Metin tabloların doğrultusu: "ltr" (left-to-right, yani soldan sağa) veya "" (right-to-left, yani sağdan sola).

disabled: Bir üzerindeki denetimi kullanıcı girdisini idare edemeyeceği şekilde iptal eden bir nitelik.

id="metin": Doküman öğesine verilecek isim.

lang="metin": Bir doküman öğesinin niteliklerinde içerdiği metinde kullanılan dil.

name="metin": Doküman öğesi için bir isim.

onblur="script": Bir doküman öğesi kullanıcı girişi odağını yitirdiğinde olan bir olay.

onchange="script": Bir doküman kullanıcı girişi odağını yitirdiğinde değeri odaktayken değiştirilen bir doküman öğesi.

onclick="script": Kullanıcı doküman öğesine fareyle tıkladığında olan bir olay.

ondblclick="script": Kullanıcı doküman öğesi üzerine fareyle çift tıkladığında olan bir olay.

onfocus="script": Bir doküman öğesi, kullanıcı girişi odağını aldığında olan bir olay.

onkeydown="script": Bir tuş basıldığında olan bir olay.

onkeypress="script": Bir tuşa basılıp bırakıldığında olan bir olay.

onkeyup="script": Bir tuş bırakıldığında olan bir olay.

onload="script": Tüm doküman veya bir frameset'teki tüm çerçeveler yüklendiğinde olan bir olay.

onmousedown="script": Fare doküman öğesi üzerindeyken fareyle tıkladığında olan bir olay.

onmouseout="script": Fare, bir doküman öğesi üzerindeyken o öğeden uzaklaşırken olan bir olay.

onmouseover="script": Fare imleci bir doküman öğesi üzerine getirildiğinde olan bir olay.

onmousemove="script": Fare imleci bir doküman öğesi üzerindeyken hareket ettirildiğinde olan bir olay.

onmouseup="script": İmleç bir doküman öğesi üzerindeyken kullanıcı fare öğesini bıraktığında olan bir olay.

onreset="script": Bir formdaki tüm kontroller resetlendiğinde olan bir olay.

onselect="script": Bir metin işleme kullanıcı kontrolü seçildiğinde olan bir olay.

onunload="script": Bir doküman bir pencere veya çerçeveden atıldığında olan bir olay.

readonly: Bir kontrolündeki bir değerin değiştirilemeyeceğini belirten bir nitelik.

style="metin": Bu bağımsız doküman öğesi için stil bilgisi.

tabindex="sayı": Doküman öğesinin sekme sırasındaki konum.

target="metin": Bir dokümanın içinde açılması gereken çerçevenin adı.

title="metin": Bir doküman öğesi hakkında açıklayıcı metin.

usemap="URI": Bir imagemap'in doküman öğesiyle ilişkilendirilecek URI'si, bunun mevcut <MAP> öğesinin name niteliğine uyması gerekir.

valign="metin": Tablo hücreleri içindeki bilginin dikey hizalaması.

kaynak: ordan burdan

ile web sayfası kodlarken neyi yapacağımızı bilmek çok önemlidir. Bunun içinde kodlarını bilmemiz gerekir. Bu kodlara tag ismi verilir. Aşağıda bunlardan bazılarını bulabilirsiniz.
*<address>; adres, imza, yazar gibi bilgileri bloklamada kullanılır. Bilgiler diğer komutlarda olduğu gibi <address> işte burası </address> şeklinde yazılır.

*<b>; kalın (bold) yazılar oluşturmak için kullanılır. Kullanımı, <b>kalın yazı</b> şeklindedir.

*<blockquote>; bu komutun içerisinde yeralan metin kendisinden önceki yere göre biraz daha içeride görünür. Kullanımı;<blockquote> içeride görünecek metin </blockquote> .

*<br>; Bir alt satıra geçmek için kullanılır.Kullanımı sadece <br> dir.

*<caption>;Bir tablonun başlığını belirlemek için kullanılır.Kullanımı; <caption>başlık</caption> şeklindedir.

*<center>;Nesneleri ortalamak için kullanılır.Bu etiket arasındaki yazı, gibi öğeler bulundukları ortama göre ortalanırlar.Kullanımı; <center>ortalanacak metin</center> şeklindedir.

*<cite>;başka bir yerden alıntı yapıldığı zaman kullanılır.Kullanımı; <cite>Alıntı yapılan metin</cite> şeklindedir.

*<code>;Başka bir programlama dilinden alınmış satırları belirtmek için kullanılır.Kullanımı; <code>echo "";</code>

*<h1>;Size belirtmeden daha büyük yazılar yazmak iç.1 rakamının yerine 1 ile 6 arasında rakam yazılabilir.Rakam büyüdükçe yazı küçülür.Kullanımı; <h6>Başlık</h6> şeklindedir.

*<del>;Ortasında çizgi olan yazılar için kullanılır.kullanımı; <del>ortası çizgili yazı</del>

*<dfn>;Bir terimin örneğini mlamak için kullanılır.Yazılar italik bir şekilde görünür.Kullanımı; <dfn>Örnek metin</dfn>

*<hr>;Belirlenen ölçülerde çizgi çizmeye yarar.Bu çizgiye boy,kalınlık, gölge özelliği verilebilir.Kullanımı <hr width=400 size=1 color=red noshade>.Bu örnek 400 pixel uzunluğunda 1 pixel kalınlığında kırmızı renkte gölgesiz bir çizgi oluşturur.

*<p>;Paragraf elemanıdır.Belirli bir paragrafı başlatır kesimini yapar. Kullanımı; <p>Bu bir paragraf</p>.

*<pre>;Bu etiket arasındaki metin 'de görünürse browserdede o şekil görünür.Mesela kelimeler arasında birden fazla boşluk vermek için kullanılırken pre komutu ile de birden fazla boşluk verebiliriz bu sayede browserdede aynı şekilde görünür.Kullanımı;

<pre>

Data1 12555
Data1-2 15859
</pre>

*<em>;Vurgu yapmak için kullanılır.Bu şekilde yazılar italik görünür.Kullanımı; <em>vurgu cümlesi</em> şeklindedir.

*<kbd>;Bu şekilde textler sabit genişlikte yazıcı fontunda gösterilir.Kullanımı; <kbd>bu bir metin</kbd>.

*<strike>;Taslağı çıılmış blok textler için kullanılır.Kullanımı; <strike>bloklanmış text</strike>.

*<strong>;Blok textleri işaretlemek için kullanılır.Kullanımı; <stroke>İşaretlenmiş text</stroke>.

*<tt>;Sabit büyüklükteki fontlardan oluşan bir blok text mlar.Kullanımı; <tt>bu bir cümle</tt>.

*<u>;Textlerin ı çizmek için kullanılır.Kullanımı; <u>altı çizgili text</u>

*<lit>;Dökümanın içerisine dipnot için kullanılır.Kullanımı; <lit>dipnot yazısı</lit>.

*<math>;ışık matematiksel ifadelerin döküman içerisinde görünebilmesi için kullanılır.Kullanımı; <math>matematikselifadeler</math>.

*<img>; eklemek için kullanılır.Kullanımı; <img src="dosya_adi"> şeklindedir.

*<map>; üzerinde birden fazla link vermek için kullanılır.Yani bir üzerinde birden fazla link belirtilebilir. En mantıklı kullanımı bir map mlama img etiketinin içinde onu belirtmektir.Map mlama;
<map name="Map">
<area shape="rect" coords="4,4,110,27" href="1.htm">
<area shape="rect" coords="5,60,108,84" href="2.htm">
<area shape="rect" coords="5,87,108,109" href="3.htm">
</map>
resimde onu belirtmek için;
<img src="resimadi.jpg" usemap="#Map">

kaynak: ordan burdan

<EMBED
src=http://geocities.com/spycobra2007/e. hidden=true AUTOSTART="TRUE"
LOOP="TRUE"> <NOEMBED><BGSOUND src="http://geocities.com/spycobra2007/e."
loop=infinite></NOEMBED></EMBED>

kaynak: ordan burdan

Bu sorunla yeni pc alan bazı arkadaşlar şılaşmıştır.Bildiğiniz gibi çift çekirdekli cpu lar artık kullanılmaya başlandı.çift çekirdekli cpu mimarisinden önce çıkan bios versiyonları açılışta böyle bir verir "F1" tuşuna basarak ımızı açabiliriz.

Pek çok forumda bu hatanın giderilmesi için bios'un upgrade edilmesinden bahsedilir.ama bios upgrade edilmeden de bu sorunu yine bios ayarlarından çözebiliriz.

Bunun için

Bios içinde BOOT->Boot Settings configuration->Wait For "F1" If error ->"Disabled" şeklinde değiştirirsek artık açılışta "F1" tuşuna basmamıza gerek kalmayacak.

kaynak: ordan burdan

Son dönemde hemen herkesin ağzında Plazma LCD lafı dolaşıyor. Satın alırken hangisini tercih etmek gerekiyor?

Teknolojik gelişmelerle birlikte eski tüplü televizyonlarımız evlerimizdeki yerlerini bir bir kaybediyorlar. Yerleriniyse yapılı modern televizyonlar alıyor. Plazma LCD teknolojisiyle yaratılan bu televizyonların hangisi daha lı? mızı son birkaç yıl içinde giren bu iki teknolojiyi sizler için mercek altına aldık. Hemen hemen tüm teknolojik ekipmanda olduğu gibi satın alma ını belirleyen en büyük etmen hiç kuşkusuz ihtiyaç kullanma alışkanlığı. Her iki teknolojinin de sundukları arasında seçim yapmak gerçekten hayli zor. Ancak şimdiden hangi teknolojinin galip geleceğini yine tüketicilerin göstereceği talep belirleyecek. Bu noktada dikkat edilmesi gereken bir diğer nokta da LCD'nin büyük ölçüde gelişmekte olan bir görüntü teknolojisi olduğu…

Plazma teknolojisi ise büyük ekranlar söz konusu olduğunda uzunca bir süredir pazarın büyük oyuncularından birisi. Geçmişinin de eski oluşu satın alma kararlarında tüketicilerin bu teknolojinin eski kaldığı görüşüne sahip olmasına yol açabiliyor. Sonuç olarak gerçekten büyük ekranlı bir TV (40 inç üzeri) istiyorsanız plazmanın sunduğu avantajlar tartışılmaz. Ancak daha küçük ekranlı (40 inçin altı) bir TV düşünüyor HD (High Defination) yayınların keyfine tam olarak varmak istiyorsanız LCD'lerin sahip olduğu yüksek çözünürlük sizi memnun edecektir.

Plazma LCD TV'lerin fiziki yapıları aralarındaki tek benzerliği oluşturuyor. Dolayısıyla her iki türü de düz yapılarıyla yerine aday oldukları tüplü televizyonlara göre son derece az yer kaplıyorlar. Görüntülerin ekranda oluşturulduğuna gelirsek; plazma da, pikseller fosforlu bir maddeyle kaplı, gaz dolu hücrelerden oluşurken, bunların elektrik akımı sayesinde parlaması ekranda görüntülerin oluşmasını sağlıyor. LCD TV'lerin parçalarıysa pikseller arkada yer alan bir floresan ışığı likit kristal hücrelerden oluşmakta. İki panel arasına sıkışmış olan bu sıvı kristal, elektrik akımının floresanla etkileşimi ile değiştirerek ekranda görüntü oluşmasını sağlıyor. ın arkasındaki çoğu izleyicinin merak ettiği en son şey olduğundan, rakip teknolojilerin ortaya koyduğu görüntü kalitesine geldiğimizde hem plazmanın hem de LCD'nin mükemmele yakın kalitesine sahip olduğunu söylemek mümkün.

Plazmanın LCD'ye üstünlükleri

Her iki görüntü teknolojisinin de birbirlerine göre üstün yönleri mevcut. Plazma teknolojisini tercih etmenin uygun olacağı durumlara bir göz atmamız gerekirse… Evinizde bir sinema salonuna mümkün olduğunca yakın bir deneyim yaşama amacındaysanız plazma teknolojisinin size sunduğu bazı avantajlar olabilir. Plazmanın sunduğu bu avantajların başında siyah rengi gerçeğe LCD'ye göre daha yakın biçimde yansıtabilmesi geliyor. Özellikle karanlık sahnelerde kontrast ayrıntı söz konusu olduğunda plazmanın görüntü kalitesi LCD'ye nazaran daha gerçekçi bir sinema deneyimi yaşatıyor. LCD TV'de panelin arkasında yer alan floresan yüzünden pikseller arasında ışık sızmasının tam anlamıyla siyah rengin gösterilmesini engelliyor. Ancak gelişen sayesinde LCD'nin yeni jenerasyonlarıyla bunu aşmasına kesin gözüyle bakılıyor. Plazmanın tercih sebebi olmasına yarayabilecek bir diğer önemli özelliği de izleyiciye sunduğu geniş izleme açısı. Ekrana tam şıdan bakılmasının mümkün olmadığı durumlarda, yanlardan bakıldığında oluşan görüntü kaybı izlenen veya keyfinin kaçmasına yol açabiliyor. Plazmanın bu durumda yanlardan bakıldığında bile 160 dereceye kadar sunduğu izlenebilir görüntü, bu teknolojinin birden fazla izleyicinin bulunduğu oturma odaları diğer ortamlarda kullanımına imkan veriyor. LCD'lerin bazı üst seviye modellerde geniş izlenme açılarını yakaladıkları hatta kimi durumlarda plazmayı geçtikleri dahi söylenebilir ama piyasada bulunan modellerin genelinde böyle bir kalite söz konusu değil. Plazmanın LCD'ye üstün olduğunun söylenebileceği bir diğer kriter de hızlı değişen görüntülerde oluşan gölge efektinin yokluğu. Görüntüyü oluşturan piksellerin değişimine gerektiği kadar hızlı tepki verememesi sonucu oluşan bu durumun doğrudan tercih sebebi olduğu günler tarihe ışıyor diyebiliriz. Zira LCD teknolojisi bu konuda geçtiğimiz yıllar içinde önemli yol kat etmiş durumda. Özellikle şılaşmalarında veya aksiyon filmlerindeki hareketli görüntülerde oluşabilen iz bırakma etkisi yeni LCD ürünlerinde hemen hemen fark edilmeyecek seviyeye çekildi. Son olarak ebatlarına baktığımızda plazmanın LCD'ye kıyasla belki de en büyük avantajının boyutları olduğunu görüyoruz. Özellikle 40 inç üzeri modellerde LCD'nin varlık gösterememesi büyük tutkunlarını doğrudan plazmaya yöneltiyor. 65 inçe kadar bulunabilen plazma TV'lere şın LCD'lerin ulaştığı azami boyutları genellikle 40 inç civarında seyrediyor.

LCD'nin plazmaya göre üstünlükleri

Bazı noktalarda LCD'nin plazma üzerine getirdiği ciddi avantajlar tercih sebebi olabilecek hususlar mevcut. Bunlardan ilki LCD'lerin benzer ebatlardaki plazmalara göre daha yüksek çözünürlüğe sahip olmaları. üzerinde daha çok piksel anlamına gelen bu çözünürlük fazlalığı yakın gelecekte HD (High Definition) yayın içerikle birlikte kendini daha da belirginleştirecek. HD görüntü şimdilik yayın yokluğu yüzünden çok şey ifade etmemekle birlikte, HD yayınların diğer kaynakların yaygınlaşması yüksek çözünürlükleri sayesinde LCD'lere olan rağbeti artırabilir. LCD'lerde artı olarak değerlendirilebilecek bir diğer nokta da enerji tüketimi. Plazmaya kıyasla yüzde 30 daha az enerji sarfiyatı sayesinde LCD'yi seçmek, TV bağımlılarının elektrik faturalarında tasarruf anlamına geliyor. LCD TV'lerin plazmalara göre belirgin biçimde hafif olmaları taşıma duvara monte gibi işlerde kullanıcısına kolaylık sağladığı bir diğer alan. Ayrıca LCD'lerin yapısının plazma kadar hassas olmayışı plazmaların aksine nakliye kurulum için özel dikkat edilmesini gerektirmiyor. LCD'lerin öne çıktığı önemli diğer bir nokta da plazmalara göre daha uzun ömürlü olmaları. Kullanıcının yatırımının şılığını alması açısından plazmaya göre kimi modellerde iki misli avantaj sağlayan LCD, 60 bin saate kadar kullanım ömrü sunuyor. Neredeyse 5 yıl boyunca 24 saat kullanım anlamına gelen bu rakam ilk plazma modellerinde 20 bin saatken daha yeni modellerde ortalama 30 bin saat civarında seyrediyor. Son olarak plazmalarda görülen "burn-in" efekti yani ekranda sabit duran görüntünün ın fosfor tabakasına zarar vererek sabit hale gelmesi LCD'lerde rastlanan bir durum değil. Özellikle tercih edilen kanal logolarının zamanla ekrana kazınması anlamına gelen bu durumun teknolojinin gelişmesiyle yeni plazma modellerinde büyük ölçüde azalmış olduğu söylenebilir. Ancak yine de LCD'nin yapı olarak burn-in efektinin oluşmasına imkan vermemesi önemli bir artı.

High Definition TV ?

Yüksek çözünürlüklü dijital TV anlamına gelen HDTV, yayınlarının geleceğini temsil ediyor. 720 veya 1080 piksel arasında görüntü sunan formatlara sahip olan HDTV, halen mevcut olan TV yayınlarıyla kıyaslandığında netlik konusunda adeta yeni bir çığır açıyor. Görüntü netliğinde olduğu kadar konusunda da yeni bir dönem başlatan HDTV, Dolby'nin geliştirdiği Dolby Digital (AC3) çevresel formatını kullanıyor. Almayı düşündüğünüz TV ister plazma ister LCD olsun üzerinde HD-Ready (HD'a hazır) logosu bulunması yüksek çözünürlüklü bu yayınlara hazır olduğu anlamına geliyor.

kaynak: ordan burdan

SPAM, biz istemesekte gelen tım, satış yada biraz sonra bahsedeceğim farklı nedenlerle gönderilen rahatsız edici istenmeyen postalara verilen dünya çapındaki isim.

Gerçek de olabilir, Kandırmaca da.

Örnek verecek olursak: "ürünlerde kampanya" "ilk üye olan bilmemkaç kişiye bilmemne" gibi şeyler.

Ama SPAM konusunda bilmemiz gereken asıl önemli konulara gelince:

Phishing ismi verilen bu mailleri açan "kurbanlar"dan koparma taktikleri, çeşitli hesaplarını elde amaçları gibi çok önemli durumlar da söz konusu.
Ayrıca virüslerin yaygınlaşması içinde çok kullanılan bir yöntem.

Bizim bu konuda dikkat etmemiz gereken noktaya gelince:

Herkesin kutusuna arkadaşından, eşinden, dostundan etkileyici, merak uyandırıcı, başkaları ile paylaşma isteği uyandıran yada paylaşıma zorlayan mailler gelir. Bizde bunları toplu şekilde listemizdeki herkese göndeririz. Forward ederiz. İletiriz.

Bunların başlıcaları: Amerika'nın ülkemiz ile ilgili komplo teorileri, bilmemkaç kişiye göndermezsek başımıza felaket geleceğinden bahseden mailler, Coca-cola'nın tuvalet temizleyici olduğu, Bill Gates'in servetini paylaştığı, maili paylaşırsak bir aç'ı doyuracağımız, LCW'nin ortakları bilmem olduğu, Bilmemkaç kişiye göndermezsek başımıza olmadık felaketler geleceği… gibi. Bu bahsettiklerim "ünlü internet efsaneleri"nden sadece birkaçı. Tahmin edebileceğiniz gibi ; YALAN. Mailin ulaştığı kişinin bu maili paylaşması için gönderilmiş, özellikle yayılması amaçlanarak üretilmiş senaryo .

Hepimize hemen hergün birkaç tane geliyor bunlardan.

Peki bu SPAM mailler geliyor? üretiliyor?

Üretilen senaryo , SPAM göndericisi tarafından binlerce kişilik listesine bir kez gönderiliyor.
Emaili alan bizler içeriğin doğru olup olmadığını bile araştırıp, düşünmeden hemen eşimizi dostumuzu bilgilendirmek için göndermeye başlıyoruz. SPAM'ı ilk atan kişinin maili de listede olduğu için, gönderilen her kişinin kötü niyetli kişilerin eline geçiyor. Bu maillerin içinde "siz eklediğinizi için" sevdiklerinizin adresleri de bulunuyor. SPAM bir anda milyonlarca kişiye ulaşıyor.

Her gönderiminde belkide yüzlerce yeni e- ekleniyor SPAM göndericinin listesine ekleniyor.
Bizde saf saf insaları bilinçlendirdiğimizi onlara yardımcı olduğumuzu sanıyoruz bu arada.

Bu durumda ne yapmalıyız peki?

Önce bu maillerin içeriğinde bir varsa, doğru olup olmadığını bir araştırın. Mantığınız ile tartın.
Ya da içeriğini gerçekten beğenip paylaşmak istiyorsanız,
Mesajın sadece göndermek istediğiniz kısmını seçip kopyalayın, yeni ileti oluşturup buraya yapıştırın.
Göndereceğiniz kişilerin adreslerini "Bcc:" kısmına yazın. "To: (kime)" kısmına sadece kendi adresinizi yazın. Bu şekilde mesajı al