Merhaba arkadaşlar bu yazımızda herhangi bir link, button veya normal yazının üzerine gelince olan değişiklikler üzerinde duracağız ve bununla ilgili bir örnek uygulama yapacağız.
Php server üzerinde çalışır sayfa yenilenmeden kendi başına verileri getiremez. Bu yüzden dinamik çalışan JavaScript vardır. JS dili kullanıcılara aktif olarak döner ve sayfaların daha hareketli olmasını sağlar. Kısaca bunlara değindikten sonra örnek uygulamamıza geçebiliriz.
Örnek:
Sayfamızda bir link olduğunu varsayalım ve bu link üzerine gelince bir değişme olmasını istiyoruz.
Diyelim…
Normal link iken resim1.jpg
Üzerine gelince ise resim2.jpg
çıksın böylece hareketliymiş gibi kullanıcılar algılasın. Kodlarımız tamamen bunun üzerine kurulu…
Kodlara başlamadan önce kodlarımızın olduğu sayfaların yanında resim1.jpg ve resim2.jpg lerimizi koyalım.
Aşağıda resimleri değiştiren esas işi gören JavaScript fonksiyonlarımız bulunmaktadır.
<script language="javascript">
function resim_over()
{
document.resim.src="resim2.jpg";
}
function resim_out()
{
document.resim.src="resim1.jpg";
}
</script>
Çalışma şekli şu şekildedir.
Üzerine gelince normalde kaynağı (src) resim1.jpg olanı resim2.jpg yaparak resimi değiştirir.
Document : Javascriptte belgeyi ifade eder…
Name ile de resim adı geldiği için sonrasında resim yazılır.
Ve Özelliği olan src belirtilir.
Merhaba arkadaşlar bu yazımızda en iyilerimizin bile en çok karşılaştığı AJAX uygulamalarında ki Türkçe karakterler yaşadığımız sorunlara çözümler aramaya çalışacağız.
Genelde iki kısımda sorunlar yaşanmaktadır. Bunlardan
1-Html ile AJAX kullanırken yaşanan sorunlar
2-PHP ile AJAX kullanırken yaşanan sorunlardır.
İlk olarak sorunumuz HTML ile nasıl çözeriz ona bakalım.
Ajax ile yapılan uygulamalarda çıktı ya da veri alış-verişi, text/xml içerik türüne göre gerçekleşmektedir.
Bu veri-, alış-veriş biçiminde varsayılan karakter tip tanımlaması ISO-8859-1 veya UTF-8 seçildiğinde düzgün çalışmaktadır.
Eğer sadece herhangi bir text ya da HTML içerikli bir sayfadan bilgi alınacaksa (PHP değil) çözüm bu sayfaların kayıt biçimini UTF-8 yaparak aşabiliriz.
Örneğin:
Farklı kaydet penceresinde iken kodlama türünü utf-8 seçtikten sonra sayfa kaydedilirse AJAX ile çalışmalarınızda türkçe karekter sorunu yaşamamış oluruz.
İkinci olarak sorunumuz PHP ile nasıl çözeriz ona bakalım.
Eğer ki php ve veritabanını kullanarak bir scriptimiz var ve Türkçe kararterler de kaydederken ve çekerken sorunlar yaşıyorsak neler yapmamız gerekir onların üzerinde duracağız.
Türkçe desteği olan bir veritabanımız var ise veritabanımızın karakter setini phpmyadmin kısmından latin5_turkis_ci olarak ayarlamalıyız.
Sorun hala devam ediyorsa tablolarında kendine göre kararter seti olur bunlarıda işlemler kısmından aynı şekilde latin5_turkis_ci olarak ayarlamalıyız.
Sorunla hala devam ediyorsa daha bunun için çözümler aramaya devam etmeliyiz. Ve aşağıdaki kodları ilgili sayfalara eklemeliyiz.
Sayfamızın en başına
<?php
header ("Content-Type: text/html; charset=iso-8859-9");
?>
kodunu eklemeliyiz.
Sorunumuz hala devam ediyorsa hotsa bağlanırken baglanti.php veya hangi sayfayı kullanıyorsanız siz o bağlantının altına yani veritabanına bağlandıktan sonraki hemen alt satıra aşağıdaki kodlardan birini ekleyerek deneyiniz.
Bu kodu eklediğiniz de büyük ihtimallere sorun düzelmiş olacaktır.
mysql_query("SET NAMES 'latin5'");
İkinci kod…
mysql_query("SET CHARACTER SET latin5");
Üçüncü kod…
mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'");
Bu kodlarımızı eklediğimizde ve phpmyadmin kısımından da gerekli yerleri değiştirdiğimizde büyük ihtimal ile sorunlarınız çözülmüş olacaktır.
Sorunun çözüldüğünden emin olmak için veritabanına yeni veriler girerek kontrol etmeniz en sağlıklı olacaktır.
Eğer ki sorunlarıza isterseniz utf-8 karakter setlerini de kullanarak deneyebilirsiniz. Bütün heryer utf-8 olursa sorunlarınıza bu şekilde bir çözüm de olabilir. Dediğim gibi bu sorunun tek bir çözümü yoktur. Veritabanı ve sizin kodlarınız uyum içinde çalışmasına bağlıdır.
Merhaba arkadaşlar biz webmasterlar olarak en çok karşılaştığımız sorunlar sitelerimizdeki Türkçe karakterlerin sorunlu olarak gözükmesidir. Bunların birden fazla sebebi olabiliyor ve bizde onlara göre çözümler üretmeye çalışacağız.
Arkaşdalar ilk çözüm olarak saymamızın meta kısmında dilimizin Türkçe desteği olan iso-8859-9 ayarını yapmalıyız. Aşağıdaki kodlar sayfanın en üstündeki
<meta http-equiv="Content-Type" content="text/HTML; charset= iso-8859-9" />
Eğer sizin sayfalarınız İngilizce düzene göre ise siz bu kodu şu şekilde yazıp da deneyebilirsiniz.
<meta http-equiv="Content-Type" content="text/HTML; charset=utf-8" />
Arkadaşlar bu kodları yazarken dikkat etmeniz gereken nokta karakter setini değiştirince düzenleyicimizde de aynı zamanlı olarak Türkçe karakterler html kodlarına dönebilir. Bu yüzden onları öyle bir sorunla karşılarsanız deneme olarak birkaç karakteri düzeltip tarayıcınızda sorun düzelmiş ise o yöntem sizin çözümünüzdür demektir. Her zaman bu gözden kaçan bir noktadır. Lütfen bu konuya dikkat edelim.