phpMyAdmin ‘in zorlandığı yerler için EMS MySQL Manager

.EMS MySQL Manager

Wndows tabanlı bir uygulama olan EMS MySQL Manager, kolay kullanımı, esnek araçları, virtual olarak bir çok sorunu kolaylıkla halletmesi  sayesinden web uygulamaları oluşturanların sağ kolu oluyor.

Tabloları birbiriyle ilişkilendirip bu ilişki neticesini diagram olarak görmek isteyenler için virtual database diagram aracı, projelerinizin içinde kaybolmadan projeksiyon yapıp geleceği görmenizi sağlıyor.

phpMyAdmin üzerinde SQL dili kullarak yarattığınız, trigger ve foreign keyleri sadece sürükle bırak şeklideki mouse hareketleri oluşturma yeteneği onu daha eşsiz kılıyor.

Sunucınıza SSH ile erişip virtual olarak hazırladığınız sorguları sunucu üzerinde çalıştırma imkanı ise harika. Profesyonel MySQL veritabanı yönetimi için bizzat kullanıyor ve tavsiye ediyoruz.

Data detaylı bilgi için tıklayınız.

A. Bahadır ÜGE

Tags: , , , , , , , ,

Bazen iki farklı form üzerindeki değerlerin birbirine atanmasına ihtiyaç duyulabilir.  Bunun için basit javascript kodu ile amacınıza ulaşabilirsiniz.

Formlarınızı oluştururken mutlaka forma ve form elementlerine ID atamayı unutmayın.  Bu ID'lerin eşsiz (Unique) olmasına dikkat edin. Bir DOM kodunda ID'ler asla çakışmamalıdır.  Ben genelde forma verilen name (Ad) ile ID alanını aynı değerde tutmayı tercih ederim.

<form method="post" action="" id="deneme1" name="deneme1">
    <input name="text1" id="text1" type="text" />
    <input name="Submit1" type="button" value="submit" onclick="bak(); return false;" />
</form>

"deneme1" adında bir form oluşturduk. 2 adet input mevcut bunlardan biri button diğeri text tipinde.  text1 alanına girilen değeri onclick olayı ile bak() adlı bir javascript'e gönderip, bunun "deneme2" formundaki "text2" input'una değer olarak atanmasını sağlayacağız.

<form method="post" action="" id="deneme2" name="deneme2">
    <input name="text2" id="text2" type="text" />
</form>

javascript ise ;

<script type="text/javascript">
function bak()
{
document.forms['deneme2'].text2.value = document.forms['deneme1'].text1.value;
return;
}
</script>

şeklinde olacak.

Sonuç :

Java Örnek 1 

Aynı işlemi aritmetik işlem uygulayarak örneklemenizi çoğaltabilirsiniz. Tüm Browser'larda çalıştığını göreceksiniz.

İyi  projelerinizde kullanmanız dileğiyle,
 

Bu yazı için etiket bulunamadı

PHP, Xajax kütüphanesi ile CSS ve Stillerle oynamak.

XAJAX, PHP ile geliştirilmiş bir AJAX kütüphanesidir. Javascript ile neredeyse hiç boğuşmadan PHP foksiyonlarının yetenekleri ile eşsiz uygulamalar geliştirilebilen bu kütüphaneyihttp://xajaxproject.org/ adresinden indirebilirsiniz.

XAJAX Kütüphanesi ile  CSS ve stillerde çalışmak adına aşağıdaki kodları incelemenizi tavsiye ediyorum.
Burada dikkat edilmesi gereken husus stilleri assign ederken, javascript syntaxlarında olduğu gibi "-" tire kullanmadan, 2. kelimenin baş harfi birinci kelimeye bitişik ve büyük harfle tanımlanmalıdır.

Bune göre aşağıdaki örneklere bakacak olursak;

bakcground-color – backgroundColor,
font-wieght – fontWeight
şeklinde yazılmıştır.

<?php 
// xajax kütüphanesini include ediyoruz.
include("config/xajax/xajax_core/xajax.inc.php");
$xajaxDeneme = new xajax(); // $xajaxDeneme adında bir xajax objesi oluşturuyoruz.

/* Değişik olaylar için oluşturduğumuz xajax
*  fonksiyonlarını register ediyoruz. 
*/
$xajaxDeneme->registerFunction("arkaPlanRengiDegistir");
$xajaxDeneme->registerFunction("textYazi");
$xajaxDeneme->registerFunction("kalinYazi");
$xajaxDeneme->registerFunction("punto20Yap");

/*
* Xajax ile oluşalabilecek hata v.b. 
* gibi durumları izlemek için debug metodunu
* açıyoruz.
* false : pasif
* true    : aktif
*/
$xajaxDeneme->setFlag("debug",false);

// Fonsiyonlar işleme alacak olan metodu çağıralım.
$xajaxDeneme->processRequest();

echo '<html>';
echo 
'<head>';
/* Xajax javascript dosylarınının oluşturulmasını sağlayalım.
*  bu metodu <body> tag'i sonrasında veya 
* </head> tag'inden önce tanımlamak gerekir.
*/

$xajaxDeneme->printJavascript('config/xajax/'); 
echo 
'</head>';
echo 
'<body>';

// Üzerinde işlem yapacağımız bir tag yaratıp ona bir id verdik 
echo '<div id="degisecekYazi">DENEME YAZISI</div>';
echo 
'<p>';
echo 
'<input type="button" value="KIRMIZI ARKA PLAN" onclick="xajax_arkaPlanRengiDegistir(); return false;">';
echo 
' - ';
echo 
'<input type="button" value="SARI YAZI" onclick="xajax_textYazi(); return false;">';
echo 
' - ';
echo 
'<input type="button" value="KALINYAZI" onclick="xajax_kalinYazi(); return false;">';
echo 
' - ';
echo 
'<input type="button" value="20 PT YAP" onclick="xajax_punto20Yap(); return false;">';
echo 
'</p>';
echo 
'</body>';
echo 
'</html>';

/**
 * Çağrıldığı zaman DIV'in arkaplanını kırmızı yapar
 *
 * @return XML
 */
function arkaPlanRengiDegistir()
{
    
$objResponse = new xajaxResponse(); // Xajax Response oluşturuyoruz.

    $objResponse->assign("degisecekYazi","style.backgroundColor","red"); 
    
    return 
$objResponse;
}

/**
 * Çağrıldığı zaman DIV'in içindeki text'i sar yapar
 *
 * @return XML
 */
function textYazi()
{
    
$objResponse = new xajaxResponse(); // Xajax Response oluşturuyoruz.

    $objResponse->assign("degisecekYazi","style.color","yellow"); 
    
    return 
$objResponse;
}

/**
 * Çağrıldığı zaman DIV'in içindeki text'i kalın yazar
 *
 * @return XML
 */
function kalinYazi()
{
    
$objResponse = new xajaxResponse(); // Xajax Response oluşturuyoruz.

    $objResponse->assign("degisecekYazi","style.fontWeight","bold"); 
    
    return 
$objResponse;
}

/**
 * Çağrıldığı zaman DIV'in içindeki text'i 20 punto yazar
 *
 * @return XML
 */
function punto20Yap()
{
    
$objResponse = new xajaxResponse(); // Xajax Response oluşturuyoruz.

    $objResponse->assign("degisecekYazi","style.fontSize","20pt"); 
    
    return 
$objResponse;
}
?>

şayet varolan bir css class'ını bir ID atamak gerekiyorsa bunun için

    $objResponse->assign("degisecekYazi","className","denemesitili"); 

şeklinde bir tanım yapmak gerekir. Buradan da anlaşılacağı üzere  attributeclass olarak değil className olarak tanımlanmıştır.

İyi kodlarda kullanmanız dileğiyle.

Bu yazı için etiket bulunamadı

Xajax ile Form Validasyonu ( Xajax Form Validation)

XAJAX ile PHP’nin tüm control structure’larını kullanıp form doğrulamak mümkün. Aşağıdaki kısa tanımlara bakarak bunu kolaylıkla yapabilirsiniz.

Daha önceki makaleleri inceleyerek XAJAX ile ilgili temel bilgileri edinip bu makaleyi ona göre kullanmanızı tavsiye ederim.

<?php
ini_set("display_errors","on");
error_reporting(6143);
include("xajax/xajax_core/xajax.inc.php");

$xajax = new xajax();
$xajax->setFlag("debug",true);
$xajax->registerFunction("formKontrol");
$xajax->processRequest();

$xajax->printJavascript("xajax/");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Language" content="tr" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>XAJAX FORM VALIDATION BY A. BAHADIR UGE</title>
</head>

<body>

<form method="post" name="userLoginForm" id="userLoginForm">
    <fieldset>
    <legend>User Login</legend><br/>
    <label>Username :</label><br />
    <input name="username" id="username" type="text" /><br />
    <label>Password :</label><br />
    <input name="password" id="password" type="password" /><br />
    <br />
    <input type="button" value="Giriş" onclick="xajax_formKontrol(xajax.getFormValues('userLoginForm')); return false;"/> </fieldset>
</form>
</body>
</html>
<?php
function formKontrol($formData)
{
    $objResponse = new xajaxResponse();

    if (isset($formData["username"])) // $formdata dizisinde "username" elemanı varmı kontrol ediliyor.
    {
        /* Gelen username içeriğinin boş yada sayısal olup olmadığı kontrol ediliyor.
        Siz burada gelen değerin varlığını veritabanından bile sorgulayabilir,
        bu kullanıcı adının var olup olmadığını öğrenebilirsiniz. Ya da
        istediğiniz koşulu, yani size uyan koşulu  yazabilirsiniz.
        */
        if (trim($formData["username"]) == '' || is_numeric($formData["username"]))
        {
            // Olumsuz durumda ekrana hata mesajı yazdırılıyor ve forma geri dönülüyor.
            $objResponse->alert("Username alanı boş yada sayısal değer içeremez !");
            $objResponse->script("document.forms['userLoginForm'].username.select();");
            return $objResponse;
        }
    }
    else
    {
        $objResponse->alert("Username değeri boş");
        return $objResponse;
    }

    if (isset($formData["password"])) // $formdata dizisinde "password" elemanı varmı kontrol ediliyor.
    {
        // Username için yapılan tanımların tamamı burası içinde geçerli.

        if (trim($formData["password"]) == '' || is_numeric($formData["password"]))
        {
            // Olumsuz durumda ekrana hata mesajı yazdırılıyor ve forma geri dönülüyor.
            $objResponse->alert("Password alanı boş yada sayısal değer içeremez !");
            $objResponse->script("document.forms['userLoginForm'].password.select();");
            return $objResponse;
        }
    }
    else
    {
        $objResponse->alert("Password değeri boş");
        return $objResponse;
    }

    /* Her iki koşulun karşılanması durumunda
    buraya istediğiniz değeri yazdırabilir, istediğiniz işlemi yaptırabilirsiniz.
    Loginin olumlu olması durumnda session değerlerini oluşturup,
    login istenen sayfaya $objResponse->redirect("URL"); methodu ile gönderim yapabilirsiniz.
    */

    $objResponse->alert("Değerler doğru olarak girildi");

    return $objResponse;
}
?>

Detaylı sorularınız için aşağıdaki formu doldurup, sorularınızı yöneltebilirsiniz. İyi günlerde kullanmanız dileğiyle

A. Bahadır ÜGE

Bu yazı için etiket bulunamadı

PHP ‘de veritabanı için PDO sürücüsünü öneriyoruz.

PDO 'PHP Data Object' (PHP Data Nesneleri) kısaltmasından oluşmuş, PHP kodları ile veritabanlarına erişmek için hafif ve tutarlı bir arabirim tanımıdır.

PDO arayüzü, işlevleri olarak her veritabanı sürücüsüne özgü sıradan eklenti, veritabanına özgü özellikleri açığa çıkarabilir.

Bir çok veritabanına, aynı PDO metotlarını kullanarak erişebilme şansınızı size sunar. PDO özelliğini kullanabilmek için php.ini 'de PDO sürücüsünü aktif hale getirmiş olmanız gerekir.

PDO PDO sürücü ile MS SQL Server, Firebird/Interbase,IBM, Informix, MySQL,Oracle,ODBC and DB2,PostgreSQL,SQLite,4D veritabanlarına bağlanabilir ve yönetebilirsiniz. Bu sayede SQL standartlarına sadık kalarak, kod üzerinde bağlantı ayaları haricinde bir değişiklik yapmadan veritabanı dönüşümü yapmanız mümkün olur.

PDO bir veritabanı soyutlaması sağlamaz; SQL deyimini yeniden yazılması ya da olmayan özelliklerin tanımlanmasını sağlamaz.

PHP 5.0 'ınObject Oriented (Nesne Yönelimli) mimarisi ile doğmuştur. PHP 5.1 ile PDO sürücüsüyle, PHP 5.0 ile de PECL uzantısı olarak kullanılır. Object Oriented menşeli olduğundan daha önceki sürümler ile çalışmaz.

Bir sonraki makale'de PDO ile örnek bir MySQL veritabanı sorgulayacağız.

A. Bahadır ÜGE

Bu yazı için etiket bulunamadı

XAJAX ile tek bir form alanındaki değeri gönderme

XAJAX ile toplu olarak bir forma bağlı olan tüm input değerlerini, dizi değişken olarak gönderebildiğiniz gibi, bazen form içerisindeki tek bir alanın içindeki değere göre işlem yapmak gerekebilir.

Xajax kütüphanesini http://xajaxproject.org/ adresinden indirebilir ve bu adresten detaylı bilgi alabilirsiniz.

Örneğin, bir Combo-Box içinden gelen değer, diğer bir form alanındaki değeri veritabanından sorgulayarak oluşturacaksa, tüm form alanlarının bir fonksiyona gönderilmesinden ziyade, sadece sorguyu etkileyip, sonucu döndürecek olan alanın değerinin gönderilmesi rasyonel olan işlemdir.

Şimdi öncelikle aşağıda koda bakalım ve  sonra satır satır açıklayalım.

<?php
ini_set
("display_errors","on");// Ben her zaman hata kodlarının Development modunda olmasına dikkat ederim.
include(
"xajax/xajax_core/xajax.inc.php");// Bir alt klasöre koyduğumuz XAJAX kütüphanesini include ediyoruz

$xajax = new xajax();//$xajax adında bir  xajax objesi oluşturuyoruz.
$xajax->setFlag("debug",true);// Bu method, pop-up debug penceresi açacak, bir hatanız var ise buradan takip edebileceksiniz
$xajax->registerFunction("secileniGoster");// Register edeceğimiz fonksiyonlar. Açıklamaları fonksiyon üzerinde
$xajax->registerFunction("sonucYaz");
$xajax->processRequest();// İstekleri bu method ile çağırıyoruz. Tüm fonksiyon tanımlamalarımızın arkasından, en son bu methodu çağırmalıyız.

echo '<html>';
echo 
'<head>';
$xajax->printJavascript('xajax/');  // HEAD tagi içerisinde XAJAX'ın javascript dinamiklerini oluşturuyoruz.
echo 
'</head>';
echo 
'<body>';

echo '<form id="denemeForm">';
echo 
'Adınızı Yazınız : <input type="text" size="30" name="adSoyad"/>';
echo 
'<select id="secim" name="secim" onchange="xajax_secileniGoster(xajax.$(\'secim\' ).value)">';// Combo-Box seçimini değiştiği an  secileniGoster fonksiyonu çalışacak. burada en önemli unsur xajax.$('secim').value tanımlaması, register edilmiş fonksiyon içerisinde onchange eventi ile sadece 'secim' combo-box'ındaki değeri gönderecektir.
echo 
'<option value="BOS SECIM">SECIM YAPIN</option>';
echo 
'<option value="DEGER 1 GOSTERILIYOR">SECIM 1</option>';
echo 
'<option value="DEGER 2 GOSTERILIYOR">SECIM 2</option>';
echo 
'<option value="DEGER 3 GOSTERILIYOR">SECIM 3</option>';
echo 
'</select>';
echo 
'</form>';
echo 
'<input type="button"  value="FORMU GONDER" onclick="xajax_sonucYaz(xajax.getFormValues(\'denemeForm\'));return false;"';// Burada tanımladığımız onclick eventi ise tüm form değişkenlerini  .getFormValues methodu ile array olarak sonucYaz fonksiyonuna gönderir.
echo 
'<div id="sonuc">HENUZ SONUC YAZILMAMIS</div>';
echo 
'</body>';
echo 
'</html>';

function secileniGoster($secilen)
{
    
$objResponse = new xajaxResponse();//Dönüş yapacak XAJAX objesi oluşturuluyor.
    
    
$objResponse->alert($secilen);// combo-box'dan gelen değer alert ile ekrana gönderiliyor. Siz bu bölüme bu değişken değeri ile yapmak istediğiniz fonksiyon zincirini tanımlayabilirsiniz.
    
    return 
$objResponse;
}

function sonucYaz($formData)
{
    
$objResponse = new xajaxResponse();
    
    
$objResponse->assign("sonuc","innerHTML",nl2br(print_r($formData,true)));// $formData bir array ve nl2br (New Line to <br/> fonkisyonu ile sonuc adındaki div'e array'den gelen dataları yazdırıyoruz.

// Siz bu arada veritabanına yazdırma yapabilir ya da benzeri bir dolu işlevi çalıştırabilirsiniz.
    
    return $objResponse;
}
?>

İyi günlerde kullanmanız dileğiyle,

A. Bahadır ÜGE

Bu yazı için etiket bulunamadı

ODTÜ Kampüs Gelişim Günleri 2010 Katılımcı Sayım Sistemi

Geçtiğimiz sene 3-6 Mart 2009 tarihlerinde ODTÜ bünyesinde, ODTÜ Kültür ve Kongre Merkezinde 4′sü  düzenlenen  "Kampüs Gelişim Günleri" nde  kullanılan ve 5.000′in üzerinde katılımcının ilgi gösterdiği etkinlik, bu senede  1-3 Mart 2010 tarihinde yinelenecek. İş Dünyasının devleri ile öğrencileri bir araya getiren etkinlik sadece ODTÜ değil, Türkiye’deki diğer üniversitelerden de oldukça ilgi gördü.  http://www.uniaktivite.net/aktiviteler/9538/kampus_gelisim_gunleri_2009 adresinde 2009 yılında gerçekleştirilen etkinlik ile ilgili detay bilgi bulabilirsiniz.

KGG 2009 Onur Ece

ÜKGG 2009 Kayıt DeskiGENET ve A. Bahadır ÜGE olarak, etkinliği düzenleyen ekipten gelen istek üzerine, oturumlara katılacak olan öğrenci ve diğer katılımcıların, online kayıt (registration) yapmasını ve hangi oturumlara katıldıklarının belirlenmesini sağlayan bir butik yazılım geliştirdik. Tamamen Internet Tarayıcıları (Firefox,  Internet Explorer, Safari v.b.) üzerinden online olarak kullanılan yazılım, 5.000′in üzerinde ki veride, son derece hızlı giriş ve raporlama hizmeti sundu.

Yazılımın ilk sınavında başarı göstermesi, 2010′da düzenlenecek proje içinde kullanılmasını ve ilave isteklerle bundan sonraki yılarda da hizmet verecek şekilde v2.0 versiyonu ile süreklilik kazanacak şekilde yeniden geliştirilmesini gündeme getirdi. Bu senede kayıt deski başta olmak üzere salon giriş ve çıkışlarının sayılmasında aynı stabilite ile çalışacak yazılım temel itibariyle şu hizmetleri vermekte.KGG 2009 Oturum

 

  • Internet üzerinden ve Kayıt deskinde merkezi veritabanına kayıt edilmek üzere katılımcı bilgilerini almak.
  • Katılımcıların, kayıtlarını yaparken etkinlik programına bağlı oturumları seçerek, hangi oturumlarla ilgilenildiğinin fizibilitesini yapmak. Bu sayede, etkinlik başlamadan, etkinlik programındaki oturumlara katılacak tahmini katılımcı sayısını belirlemek.
  • Online kayıt yaptırmış katılımcının, etkinlik esnasında kayıt deskine gelmesi ile beraber yazılımın AJAX arama motoru ile hızlıca kaydına erişilerek, yazılımın kendisine atadığı BARKOD (Barcode) etiketini dökmek ve yaka kartını oluşturmak.KGG 2009 Onur Ece
  • Oturum esnasında salonlara giriş yapan katılımcıların, Barcode el terminalleri ile yaka kartlarının okutulması sonrasında, el terminallerine depolanan verilerin, program sayesinde sisteme aktarılarak, kişi bazlı, reel katılım değerlerini belirlemek.
  • Salon bazlı, Oturum bazlı, Kişi Bazlı oturum katılım listesi almak.
  • İstenen oturum sayısına göre katılımcı listelemek. Örneğin En az 6 oturuma katılan katılımcıları listele gibi. Bu işlem ile, belirli sayıda katılım gösteren katılımcılara, çekiliş ile hediye verilmesini amaçlanmıştı.

1-3 Mart 2010 tarihinde yenisi düzenlenecek  "Kampüs Gelişim Günleri"ne katılmak isteyenler http://www.ugenet.com/projeler/sayim/basvuru.php adresinden kayıtlarını yaptırabilir, etkinlik programını görebilirler.

Kampüs Gelişim Günleri Resmi Web Sitesi : http://www.kampusgelisimgunleri.com/

Kampüs Gelişim Günleri Facebook Etkinlik duyurusu

Yazılım detayı için : A. Bahadır ÜGE ile görüşebilirsiniz.

Bu yazı için etiket bulunamadı

UTF-8 Kullanın

UTF-8 8-bitlik bir Unicode dönüşüm formatıdır (İng: Unicode Transformation Format ‘ın kısaltması). Unicode karakterlerini değişken uzunluklu bayt guruplarıyla kodlamakta kullanılır. Rob Pike ve Ken Thompson tarafından geliştirilmiştir.

UTF-8 kodlaması Unicode karakterlerini 1-6 byte uzunluğunda diziler olarak kodlar. ASCII kodlaması içinde 0-127 arasında kalan karakterler aynen kendi kodları ile kullanılır, diğerleri ise byte dizileri haline gelir.

UTF-8 Özellikleri

Evrensel kodlama ile aynı sayfada farklı lisanları göstermek mümkün olabilmektedir. Ayrıca özel hazırlanmış klavyeler ile matematiksel ifadeleri yazmak da mümkün. Bütün bu farklı karakterler UTF-8 sayesinde aynı sayfada görüntülenebilmektedir. Eski stil kodlama ile türkçe karakterlerin – aslında latin alfabesinde olmayan ya da özel işaretli harflerin de – gösterimi için oldukça karışık olan harf ve rakam dizgileri kullanmak gerekiyordu. Mesela Ş harfini yazmak için Ş küçük ş içinse ş yazmak gibi.

UTF kullanarak 1 milyondan fazla karakter kodlanılabilinmektedir. Sıklıkla kullanılan 65536 karakterin kodlaması bu 1 milyondan fazla kodlamada ilk sıralarda yer almaktadır.

UTF-8 Örnekler

A = 00000000 010000012, yani sağ baştan sıfırdan başlayarak sayıldığıda 2′nin katları şeklinde 20 ve 26′yı toplayarak 65 sayısını elde ediyoruz. Windows için ALT-tuşuna basılı tutarak nümerik klavyeden 65 yazdığı zaman A harfı çıkar.

天 = 0×59 0×298 = 01011001 001010012 = ALT-tuşu + 22825
⇔ = 0×21 0xd38 = 00100001 110100112 = ALT-tuşu + 1587
α = 0×03 0xb18 = 00000011 101100012 = ALT-tuşu + 945
Veritabanı ve Programlamada UTF-8′in yeri:

Programlama ve Veri depolamada UTF-8‘in yeri oldukça önemlidir.

UTF-8′in çeşitleri vardır, bunlar temel olarak:

utf8_bin : Unicode – Çok Dilli (Universal Code – Unicode) – İkili (Binary)
utf8_czech_ci : Çekçe – Büyük ve Küçük harfe duyarsız
utf8_danish_ci : Danca – Büyük ve Küçük harfe duyarsız
utf8_esperanto_ci : Esperanto – Büyük ve Küçük harfe duyarsız
utf8_estonian_ci : Estçe – Büyük ve Küçük harfe duyarsız
utf8_general_ci : Unicode (çokdilli) – Büyük ve Küçük harfe duyarsız
utf8_hungarian_ci : Macarca – Büyük ve Küçük harfe duyarsız
utf8_icelandic_ci : İzlandaca – Büyük ve Küçük harfe duyarsız
utf8_latvian_ci : Litvanyaca – Büyük ve Küçük harfe duyarsız
utf8_lithuanian_ci : Litvanyaca – Büyük ve Küçük harfe duyarsız
utf8_persian_ci : Farsça – Büyük ve Küçük harfe duyarsız
utf8_polish_ci : Polonyaca – Büyük ve Küçük harfe duyarsız
utf8_roman_ci : Batı Avrupa – Büyük ve Küçük harfe duyarsız
utf8_romanian_ci : Romence – Büyük ve Küçük harfe duyarsız
utf8_slovak_ci : Slovakça – Büyük ve Küçük harfe duyarsız
utf8_slovenian_ci : Slovence – Büyük ve Küçük harfe duyarsız
utf8_spanish2_ci : Geleneksel İspanyolca – Büyük ve Küçük harfe duyarsız
utf8_spanish_ci : İspanyolca – Büyük ve Küçük harfe duyarsız
utf8_swedish_ci : İsveççe – Büyük ve Küçük harfe duyarsız
utf8_turkish_ci : Türkçe – Büyük ve Küçük harfe duyarsız
utf8_unicode_ci : Unicode – Çok Dilli (Universal Code – Unicode) Büyük ve Küçük harfe duyarsız
21 çeşittir.
Eğer Türkçe karakterler ve bunun yanında birkaç dilin karakterlerini kullanmayı düşünüyorsanız UTF-8 Unicode (utf8_unicode_ci) tam sizin için.   Eğer UTF-8 Unicode kullanırsanız, artık yazılım geliştirme ortamınızın, veritabanınızın ve html kodlarınızın karakter setlerinin farklılığından kaynaklanan görüntüleme problemlerinden kurtulacaksınız.
Şimdi size birkaç yazılım geliştirme ortamında UTF-8 ayarının yapılabilmesi için izlemeniz gereken yönergeleri anlatacağım:

Zend Development Environment:
Araçlar (Tools) -> Tercihler… (Preferences…) -> Masaüstü (Desktop) tabının içinde Kodlama (Encoding) seçeneğini UTF-8 olarak ayarlamanız yeterli.

Notepad :

Dosya (File, Save) kayıt penceresinde, Kodlama (Encoding) seçeneğini UTF8 olarak ayarlamanız yeterli.
Notepad++ :
Ayarlar (Settings) -> Tercihler (Preferences) -> Yeni bir Belge (New a Document) -> Encoding bölümünden UTF-8 seçmeniz yeterli.
Dreamweaver :
Düzen (Edit) -> Tercihler (Preferences) -> Fonts (Yazı tipleri) -> Unicode ve ayrıca Yeni (New Document) bölümünden Unicode’u seçmeniz yeterli.

***

Eğer Türkçe karakterler ve bunun yanında birkaç dilin karakterlerini kullanmayı düşünüyorsanız UTF-8 Unicode (utf8_unicode_ci) size önerilir.

Utf-8 Sorun ve Çözümleri
Utf-8, Google’ ın en çok tercih ettiği karakter dili olması ve SEO,Pretty Url gibi optimizasyon araçlarının desteklediği karakter grubu olması nedeniyle webmasterlar bu dili tercih ederler.Fakat bu dil SMF scriptinde “ISO-8859-9″ karakter dilini kullananlar Türkçe karakter sorunları yaşamaktadır.Bu sorunlar nelerdir ve çözümleri nelerdir:

    * Hakkımızda
    * Makale Nedir?
    * Bilimsel Makale
    * Favorileriniz
    * Sitemizde Yazar Olmak!
    * Yazar ve üyeler
    * İletişim

UTF-8 nedir?, kodlar, karakterler ve hakkında herşey!
1

UTF-8 8-bitlik bir Unicode dönüşüm formatıdır (İng: Unicode Transformation Format ‘ın kısaltması). Unicode karakterlerini değişken uzunluklu bayt guruplarıyla kodlamakta kullanılır. Rob Pike ve Ken Thompson tarafından geliştirilmiştir.

UTF-8 kodlaması Unicode karakterlerini 1-6 byte uzunluğunda diziler olarak kodlar. ASCII kodlaması içinde 0-127 arasında kalan karakterler aynen kendi kodları ile kullanılır, diğerleri ise byte dizileri haline gelir.

UTF-8 Özellikleri

Evrensel kodlama ile aynı sayfada farklı lisanları göstermek mümkün olabilmektedir. Ayrıca özel hazırlanmış klavyeler ile matematiksel ifadeleri yazmak da mümkün. Bütün bu farklı karakterler UTF-8 sayesinde aynı sayfada görüntülenebilmektedir. Eski stil kodlama ile türkçe karakterlerin – aslında latin alfabesinde olmayan ya da özel işaretli harflerin de – gösterimi için oldukça karışık olan harf ve rakam dizgileri kullanmak gerekiyordu. Mesela Ş harfini yazmak için Ş küçük ş içinse ş yazmak gibi.

UTF kullanarak 1 milyondan fazla karakter kodlanılabilinmektedir. Sıklıkla kullanılan 65536 karakterin kodlaması bu 1 milyondan fazla kodlamada ilk sıralarda yer almaktadır.

UTF-8 Örnekler

A = 00000000 010000012, yani sağ baştan sıfırdan başlayarak sayıldığıda 2′nin katları şeklinde 20 ve 26′yı toplayarak 65 sayısını elde ediyoruz. Windows için ALT-tuşuna basılı tutarak nümerik klavyeden 65 yazdığı zaman A harfı çıkar.

天 = 0×59 0×298 = 01011001 001010012 = ALT-tuşu + 22825
⇔ = 0×21 0xd38 = 00100001 110100112 = ALT-tuşu + 1587
α = 0×03 0xb18 = 00000011 101100012 = ALT-tuşu + 945
Veritabanı ve Programlamada UTF-8′in yeri:

Programlama ve Veri depolamada UTF-8‘in yeri oldukça önemlidir.

UTF-8′in çeşitleri vardır, bunlar temel olarak:
utf8_bin : Unicode – Çok Dilli (Universal Code – Unicode) – İkili (Binary)
utf8_czech_ci : Çekçe – Büyük ve Küçük harfe duyarsız
utf8_danish_ci : Danca – Büyük ve Küçük harfe duyarsız
utf8_esperanto_ci : Esperanto – Büyük ve Küçük harfe duyarsız
utf8_estonian_ci : Estçe – Büyük ve Küçük harfe duyarsız
utf8_general_ci : Unicode (çokdilli) – Büyük ve Küçük harfe duyarsız
utf8_hungarian_ci : Macarca – Büyük ve Küçük harfe duyarsız
utf8_icelandic_ci : İzlandaca – Büyük ve Küçük harfe duyarsız
utf8_latvian_ci : Litvanyaca – Büyük ve Küçük harfe duyarsız
utf8_lithuanian_ci : Litvanyaca – Büyük ve Küçük harfe duyarsız
utf8_persian_ci : Farsça – Büyük ve Küçük harfe duyarsız
utf8_polish_ci : Polonyaca – Büyük ve Küçük harfe duyarsız
utf8_roman_ci : Batı Avrupa – Büyük ve Küçük harfe duyarsız
utf8_romanian_ci : Romence – Büyük ve Küçük harfe duyarsız
utf8_slovak_ci : Slovakça – Büyük ve Küçük harfe duyarsız
utf8_slovenian_ci : Slovence – Büyük ve Küçük harfe duyarsız
utf8_spanish2_ci : Geleneksel İspanyolca – Büyük ve Küçük harfe duyarsız
utf8_spanish_ci : İspanyolca – Büyük ve Küçük harfe duyarsız
utf8_swedish_ci : İsveççe – Büyük ve Küçük harfe duyarsız
utf8_turkish_ci : Türkçe – Büyük ve Küçük harfe duyarsız
utf8_unicode_ci : Unicode – Çok Dilli (Universal Code – Unicode) Büyük ve Küçük harfe duyarsız
21 çeşittir.
Eğer Türkçe karakterler ve bunun yanında birkaç dilin karakterlerini kullanmayı düşünüyorsanız UTF-8 Unicode (utf8_unicode_ci) tam sizin için.
Eğer UTF-8 Unicode kullanırsanız, artık yazılım geliştirme ortamınızın, veritabanınızın ve html kodlarınızın karakter setlerinin farklılığından kaynaklanan görüntüleme problemlerinden kurtulacaksınız.
Şimdi size birkaç yazılım geliştirme ortamında UTF-8 ayarının yapılabilmesi için izlemeniz gereken yönergeleri anlatacağım:
Zend Development Environment:
Araçlar (Tools) -> Tercihler… (Preferences…) -> Masaüstü (Desktop) tabının içinde Kodlama (Encoding) seçeneğini UTF-8 olarak ayarlamanız yeterli.
Notepad :
Dosya (File, Save) kayıt penceresinde, Kodlama (Encoding) seçeneğini UTF8 olarak ayarlamanız yeterli.
Notepad++ :
Ayarlar (Settings) -> Tercihler (Preferences) -> Yeni bir Belge (New a Document) -> Encoding bölümünden UTF-8 seçmeniz yeterli.
Dreamweaver :
Düzen (Edit) -> Tercihler (Preferences) -> Fonts (Yazı tipleri) -> Unicode ve ayrıca Yeni (New Document) bölümünden Unicode’u seçmeniz yeterli.

***

Eğer Türkçe karakterler ve bunun yanında birkaç dilin karakterlerini kullanmayı düşünüyorsanız UTF-8 Unicode (utf8_unicode_ci) size önerilir.

Utf-8 Sorun ve Çözümleri
Utf-8, Google’ ın en çok tercih ettiği karakter dili olması ve SEO,Pretty Url gibi optimizasyon araçlarının desteklediği karakter grubu olması nedeniyle webmasterlar bu dili tercih ederler.Fakat bu dil SMF scriptinde “ISO-8859-9″ karakter dilini kullananlar Türkçe karakter sorunları yaşamaktadır.Bu sorunlar nelerdir ve çözümleri nelerdir:

1- Utf-8 i sorunsuz şekilde kurabilmek(Modifikasyonlar bozulmadan):
Admin/Forum Bakımından “Veri ve veritabanını utf-8 e dönüştür” seçeneği ile önce veritabanı utf-8 e dönüştürülür.Daha sonra gerekli utf-8 dosyaları default ya da kullandığınız temanın languages klasörüne atılır.Modifikasyonları bozmamak için de:
Mesela “Modification.turkish.php” dosyasında modifikasyonların dil değişkenleri yer alıyorsa bu dosya Notepad dosyasında açılarak Farklı Kaydet seçeneği seçilir ve kodlama Utf-8 olarak işaretlenerek dosya ismi sonuna -utf8 yazılarak kaydedilir.Daha sonra languages klasöründekiyle yer değiştirilir.(mesela Modification.turkish-utf8.php gibi) Şayet hata alırsanız “ayarlari_onar.php yi çalıştırın ve dil kısmına “turkish-utf8” yazın.Ayrıca Settings.php dosyanızda

    ?>

kodundan evvel

    $db_character_set = ‘iso-8859-9′;

diye bir karakter seti kodu varsa silin.Forum Seçenekleri/Sunucu Ayarlarından

da dil seçeneklerinden “turkish-utf8” i işaretleyin.

Bu işlemlerin en sonunda kategori ve forum başlığınızdaki isimler de (şğ,ç…) gibi karakterler ve ondan sonraki karakterler silindiği için tekrar yazmanız gerekiyor

2- Utf-8 i sorunsuz ve güvenli bir yoldan kaldırma

phpmyadmin den tablolarınızı tek tek seçerek “İşlemler” seçeneğinden karakter karşılaştırmasını değiştirip,languages klasörünüzden utf 8 dil dosyalarını silerek kaldırabilirsiniz.
Türkçe karakter Desteği UTF-8

Bir cok kisinin biligi gibi utf kodlama yapisinda turkce karakterlerin sekli asagida verdigim tablodaki gibidir, yani utf-8 karakter setini kullandiginiz bir sayfada turkce karakterler duzgun cikmayacaktir, ve bozuk gorunerek sayfanizi bakilamaz hala getirecektir, isde burda asagidaki tablodaki turkce karakterlerin altigi utf-8 karakterini kullandiginizda normal sayfaya bakarkan turkce karakterler duzgun sekilde gorunecektir..

Bu durum şöyle açıklanabilir:
“latin_1,latin_5″ gibi ükle dil kodlarında,diğer ülkelerde ki dili standt hale getirebilmek için,o dil de geçen karakterlerin html karşılıklarını yazmak

gerekir.Bunlar:

UTF-8 Türkçe karakter seti tablosu

    Ü <=> Ü
    Ş <=> ÅŸ
    Ğ <=> ÄŸ
    Ç <=> Ç
    İ  <=> İ
    Ö <=> Ö
    ü <=> ü
    ş <=> ÅŸ
    ğ <=> ÄŸ
    ç <=> ç
    ı  <=> ı
    ö <=> ö

Yukaridaki ornege bakarak turkce karakter iceren bir kelime yazmaya calistigimizda, asagidaki gibi yazmamiz gerekecektir.

Aşkım ========> AÅŸkım

Web sayfasinda gorunusu

Aùk^m ======== Aşkım

yukaridaki ornekte gordugunuz gibi turkce karakter iceren bir kelimeyi utf-8 turkce karakter karsiliklariyla yazmamiz gerekli..

ama bu problemi çok kolay da halledebilirsiniz. notepad2 yi indirin ve turkce karakterlerin oldugu dosyamizi bu programla aciniz

dosyayı açtıktan sonra menülerden file>encoding>UTF-8 sectiginizde yazilarinizdaki karakterler artik utf-8 formatinda olacaktir..
Önizleme: Buyuk hali icin uzerine tiklayin

i56910 utf8donusturho1 UTF 8 nedir?, kodlar, karakterler ve hakkında herşey!

Utf-8 charset karakter dil setiyle,bu karşılıkları yazmaya gerek kalmadan kendi dilinizde kullanılan karakterleri bütün dil karakter setleriyle ortak hale getirebilirsiniz.
Kaynak Listesi ve derleme

Bir kısım: Sinan ANDIRMAN

Bir kısım: wordpress-tr

Bir kısım: Kuaza.org

Bir kısım: Selçuk Kılıç

Bir kısım: frm.ekshi.net
Admin/Forum Bakımından “Veri ve veritabanını utf-8 e dönüştür” seçeneği ile önce veritabanı utf-8 e dönüştürülür.Daha sonra gerekli utf-8 dosyaları default ya da kullandığınız temanın languages klasörüne atılır.Modifikasyonları bozmamak için de:
Mesela “Modification.turkish.php” dosyasında modifikasyonların dil değişkenleri yer alıyorsa bu dosya Notepad dosyasında açılarak Farklı Kaydet seçeneği seçilir ve kodlama Utf-8 olarak işaretlenerek dosya ismi sonuna -utf8 yazılarak kaydedilir.Daha sonra languages klasöründekiyle yer değiştirilir.(mesela Modification.turkish-utf8.php gibi) Şayet hata alırsanız “ayarlari_onar.php yi çalıştırın ve dil kısmına “turkish-utf8” yazın.Ayrıca Settings.php dosyanızda

    ?>

kodundan evvel

    $db_character_set = ‘iso-8859-9′;

diye bir karakter seti kodu varsa silin.Forum Seçenekleri/Sunucu Ayarlarından

da dil seçeneklerinden “turkish-utf8” i işaretleyin.

Bu işlemlerin en sonunda kategori ve forum başlığınızdaki isimler de (şğ,ç…) gibi karakterler ve ondan sonraki karakterler silindiği için tekrar yazmanız gerekiyor

2- Utf-8 i sorunsuz ve güvenli bir yoldan kaldırma

phpmyadmin den tablolarınızı tek tek seçerek “İşlemler” seçeneğinden karakter karşılaştırmasını değiştirip,languages klasörünüzden utf 8 dil dosyalarını silerek kaldırabilirsiniz.
Türkçe karakter Desteği UTF-8

Bir cok kisinin biligi gibi utf kodlama yapisinda turkce karakterlerin sekli asagida verdigim tablodaki gibidir, yani utf-8 karakter setini kullandiginiz bir sayfada turkce karakterler duzgun cikmayacaktir, ve bozuk gorunerek sayfanizi bakilamaz hala getirecektir, isde burda asagidaki tablodaki turkce karakterlerin altigi utf-8 karakterini kullandiginizda normal sayfaya bakarkan turkce karakterler duzgun sekilde gorunecektir..

Bu durum şöyle açıklanabilir:
“latin_1,latin_5″ gibi ükle dil kodlarında,diğer ülkelerde ki dili standt hale getirebilmek için,o dil de geçen karakterlerin html karşılıklarını yazmak

gerekir.Bunlar:

UTF-8 Türkçe karakter seti tablosu

    Ü <=> Ü
    Ş <=> ÅŸ
    Ğ <=> ÄŸ
    Ç <=> Ç
    İ  <=> İ
    Ö <=> Ö
    ü <=> ü
    ş <=> ÅŸ
    ğ <=> ÄŸ
    ç <=> ç
    ı  <=> ı
    ö <=> ö

Yukaridaki ornege bakarak turkce karakter iceren bir kelime yazmaya calistigimizda, asagidaki gibi yazmamiz gerekecektir.

Aşkım ========> AÅŸkım

Web sayfasinda gorunusu

Aùk^m ======== Aşkım

yukaridaki ornekte gordugunuz gibi turkce karakter iceren bir kelimeyi utf-8 turkce karakter karsiliklariyla yazmamiz gerekli..

ama bu problemi çok kolay da halledebilirsiniz. notepad2 yi indirin ve turkce karakterlerin oldugu dosyamizi bu programla aciniz

dosyayı açtıktan sonra menülerden file>encoding>UTF-8 sectiginizde yazilarinizdaki karakterler artik utf-8 formatinda olacaktir..
Önizleme: Buyuk hali icin uzerine tiklayin

i56910 utf8donusturho1 UTF 8 nedir?, kodlar, karakterler ve hakkında herşey!

Utf-8 charset karakter dil setiyle,bu karşılıkları yazmaya gerek kalmadan kendi dilinizde kullanılan karakterleri bütün dil karakter setleriyle ortak hale getirebilirsiniz.
Kaynak Listesi ve derleme

Bir kısım: Sinan ANDIRMAN

Bir kısım: wordpress-tr

Bir kısım: Kuaza.org

Bir kısım: Selçuk Kılıç

Bir kısım: frm.ekshi.net

Bu yazı için etiket bulunamadı
Rss Feed Tweeter button Facebook button Technorati button Reddit button Myspace button Linkedin button Webonews button Delicious button Digg button Flickr button Stumbleupon button Newsvine button