Php İle Sözlük Yapımı

Bu dersimizde php aracılığıyla Türkçe - İngilizce ve İngilizce - Türkçe sözlük yapacağız.

Herkese merhaba !

Bu dersimizde php aracılığıyla basit bir sözlük sitesi yapmayı göstericem.Dersimiz sonunda Türkçe - İngilizce ve İngilizce - Türkçe sözlüğü yapıcaz.

1)İlk önce index.php içerisinde aşağıdaki gibi bir form hazırlıyoruz ;


<style type="text/css">

<!--

.style1 {

    font-size: 12px;

    font-family: Arial, Helvetica, sans-serif;

}

.style2 {

    font-family: Arial, Helvetica, sans-serif;

    font-size: 10px;

}

-->

</style>

<form id="form1" name="form1" method="post" action="">

  <label>

  <span class="style1">Kelimeyi Buraya yazın :</span> 

  <input name="kelime" type="text" id="kelime" />

  </label>

  <label>

  <input type="submit" name="Submit" value="Gönder" />

  </label>

  <br />

  <span class="style2">Sözlük <strong>büyük</strong> -<strong> küçük</strong> harf ayrımı yapmaz  </span>

</form>




2)Formumuzu tagları arasına aldıktan sonra formumuzu tek tırnak ile (Tek tırmak kullanmamızın sebebi , form içerisinde çift tırnakların bulunmasıdır) $form değişkeni içine atıyoruz (örnek : $form = 'form kodları';).Görümtü aşağıdaki gibi olmalıdır.


<?php 





$form 
'<style type="text/css">

<!--

.style1 {

    font-size: 12px;

    font-family: Arial, Helvetica, sans-serif;

}

.style2 {

    font-family: Arial, Helvetica, sans-serif;

    font-size: 10px;

}

-->

</style>

<form id="form1" name="form1" method="post" action="">

  <label>

  <span class="style1">Kelimeyi Buraya yazın :</span> 

  <input name="kelime" type="text" id="kelime" />

  </label>

  <label>

  <input type="submit" name="Submit" value="Gönder" />

  </label>

  <br />

  <span class="style2">Sözlük <strong>büyük</strong> -<strong> küçük</strong> harf ayrımı yapmaz  </span>

</form>'
;





?> ?>



3)Şimdi Türkçe - İngilizce | İngilizce - Türkçe diye iki kategori belirliyoruz ve echo nun yukarısında index.php?dil=turkce ve index.php?dil=ingilizce olmak üzere iki tane string değişken tanımlıyoruz(Türkçe - İngilizce = index.php?dil=turkce | İngilizce - Türkçe = index.php?dil=ingilizce).Bu kodlarıda menu değişkeni içerisinde (yine tek tırnak ile) taglarının arasına yerleştiriyoruz ;

<?php 





$menu 
'<style type="text/css">

<!--

.style2 {

    font-family: Arial, Helvetica, sans-serif;

    font-size: 12px;

}

-->

</style>

<span class="style2"><a href="index.php?dil=turkce">Türkçe - İngilizce</a> | <a href="index.php?dil=ingilizce">İngilizce - Türkçe</a></span>'






$form '<style type="text/css">

<!--

.style1 {

    font-size: 12px;

    font-family: Arial, Helvetica, sans-serif;

}

.style2 {

    font-family: Arial, Helvetica, sans-serif;

    font-size: 10px;

}

-->

</style>

<form id="form1" name="form1" method="post" action="">

  <label>

  <span class="style1">Kelimeyi Buraya yazın :</span> 

  <input name="kelime" type="text" id="kelime" />

  </label>

  <label>

  <input type="submit" name="Submit" value="Gönder" />

  </label>

  <br />

  <span class="style2">Sözlük <strong>büyük</strong> -<strong> küçük</strong> harf ayrımı yapmaz  </span>

</form>'
;





?> ?>



4)$menu ve $ form değişkenlerimizin altına dil isimli string değişkenimizi çağırıyoruz ve bir if kontrolü yapıyoruz (Bunları $menu ve $form değişkenleri altına alıyoruz) .Aşağıdaki kodun anlamı,dil string değişkeni boşsa ekrana $menu değişkeni gelsin;

$dil=$_GET["dil"];



if (empty($dil)) {





echo $menu;





}



5)Form değişkenimizi kendi altına kopyalıyoruz ve birinin ismini $form_tr diğerinin ismini $form_ing olarak ayarlıyoruz ve aşağıdaki gibi bir if kontrolü yapıp kod satırımızın en altına yazıyoruz (?> php kapama tagının üstüne);

if($dil == "turkce"){



echo $form_tr;



}elseif($dil == "ingilizce"){



echo $form_ing;



}



6)$form_tr de action="" satırı tırmaklarının içine tr.php , $form_ing ninkine ise ing.php yazın.İndex.php dosyamızın kodlaması bukadar.Şimdi index.php dosyamızın bulunduğu klasöre tr.php ve ing.php diye iki tane php sayfası oluşturun.Şimdi tr.php sayfamızın kodlamasına geçebiliriz.Bunda ilk olarak yapmamız gereken,sözlükte büyük küçük harf ayrımının olmamasını sağlamaktır,bunun için bir fonksiyon tanımlamamız gerekir.taglarımızı açıyoruz ve arasına fonksiyonumuzun kodlarını yazıyoruz.Ben harf adında bir fonksiyon tanımaldım,fonksiyonun ilk parantezine $harf isimli bir değişken giriyoruz sonra , $buyuk ve $ kucuk olmak üzere iki tane dizi değişken tanımı yapıyoruz.değişkendeki her bir indiste harflerin karşılıklarını yazıyoruz.Kodlama aşağıdaki gibi olmalıdır


<?php 



function Harf($harf){



$buyuk = array('Q','W','E','R','T','Y','U','I','O','P','Ð','Ü','A','S','D','F','G','H','J','K','L','Ş','İ','Z','X','C','V','B','N','M','Ö','Ç');

$kucuk = array('q','w','e','r','t','y','u','ı','o','p','ğ','ü','a','s','d','f','g','h','j','k','l','ş','i','z','x','c','v','b','n','m','ö','ç');



}





?> ?>




7)Sonra,yine fonksiyon içerisinde en alta $cevir diye bir değişken tanımlayıp str_replace fonksiyonu ile büyük harfleri küçük harflere çeviriyoruz,ve return ile döndürüyoruz;


<?php 



function Harf($harf){



$buyuk = array('Q','W','E','R','T','Y','U','I','O','P','Ð','Ü','A','S','D','F','G','H','J','K','L','Ş','İ','Z','X','C','V','B','N','M','Ö','Ç');

$kucuk = array('q','w','e','r','t','y','u','ı','o','p','ğ','ü','a','s','d','f','g','h','j','k','l','ş','i','z','x','c','v','b','n','m','ö','ç');





$cevir str_replace($buyuk,$kucuk,$harf);

return 
$cevir;



}





?> ?>



8)Şimdi fonksiyonun altında index.php den gelen kelime isimli formumuzu çekiyoruz ve altına $kelimecevir diye bir değişken tanımlayıp verisini Harf($kelime); olarak tanımlıyoruz.Sonra echo ile çağırıyoruz.Kodlar şöyle olmalıdır;


$kelime = $_POST["kelime"];

$kelimecevir= Harf($kelime);

echo "Girdiğiniz türkçe kelime : <b>".$kelimecevir."</b><br>";



9)Sözlükteki kelimeleri belirlemek için kodlamanın en altına (?> üstüne) swich kontrolü yapıyoruz (ben bağzı örnek kelimeler belirledim,kodtaki kelimeler küçük ahrfle yazılmalıdır) ve birde ana sayfaya ve türkçe - ingilizce sözlüğe tekrar döne bilmek için en alta linkler eklememiz gerekiyor .Kodlar aşağıdaki gibi olalıdır;

echo "Kelimenin ingilizce karşılığı : <b>";

switch($kelimecevir){



case "kim";

echo "Who";

break;



case "araba";

echo "Car";

break;



case "siyah";

echo "Black";

break;



case "bilgisayar";

echo "Computer";

break;



default;

echo "Sözlük verisinde böyle bir kelime bulunmuyor";

break;



}

echo "</b><br><br>";



echo "<a href=index.php>Ana Sayfa</a> | <a href=index.php?dil=turkce>Türkçe Sözlük</a> | <a href=index.php?dil=ingilizce>İngilizce Sözlük</a>";



10)Son olarak ing.php sayafasınada aynı kodları yerleştirip bağzı yazıları değiştiriyoruz.ing.php dosyasıda aşağıdaki gibi olmalı;

<?php 



function Harf($harf){



$buyuk = array('Q','W','E','R','T','Y','U','I','O','P','Ð','Ü','A','S','D','F','G','H','J','K','L','Ş','İ','Z','X','C','V','B','N','M','Ö','Ç');

$kucuk = array('q','w','e','r','t','y','u','ı','o','p','ğ','ü','a','s','d','f','g','h','j','k','l','ş','i','z','x','c','v','b','n','m','ö','ç');





$cevir str_replace($buyuk,$kucuk,$harf);

return 
$cevir;



}







$kelime $_POST["kelime"];

$kelimecevirHarf($kelime);

echo 
"Girdiğiniz ingilizce kelime : <b>".$kelimecevir."</b><br>";



echo 
"Kelimenin türkçe karşılığı : <b>";

switch(
$kelimecevir){



case 
"who";

echo 
"Kim";

break;



case 
"car";

echo 
"Araba";

break;



case 
"black";

echo 
"Siyah";

break;



case 
"Computer";

echo 
"Bilgisayar";

break;



default;

echo 
"Sözlük verisinde böyle bir kelime bulunmuyor";

break;



}

echo 
"</b><br><br>";



echo 
"<a href=index.php>Ana Sayfa</a> | <a href=index.php?dil=turkce>Türkçe Sözlük</a> | <a href=index.php?dil=ingilizce>İngilizce Sözlük</a>";



?> ?>




İyi çalışmalar...

  • Etiketler;
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Bir de çalışsa çok daha güzel olacağına inanıyorum
Yüz binlerce kelime için case yapısı kullanmak saçma sağlam bir veritabanı lazım.
__cx__ ; aynen katılıyorum [b]veritabanı[/b] lazım.
Mysql ile Yapılsa Çok Güzel Olur Ama Binlerce Satır Case Sayfayı Yorar
mysql ile yapmak daha basit , dreamweaver kullanın youtube ta onlarla ilgil videolar var.

Yukarı Git