RE: [Linux-programlama] Ajax - türkçe karakter problemi

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Sühan Erol (suhan@ufotek.com.tr)
Date: Wed 06 Dec 2006 - 13:01:44 GMT


Merhaba
 
Aslında cevabımda bir hata yapmışım. php den geri dönen bilginin xml
olduğunu zannederek header kısmına xml yazılması ve charset olarak 8859-9
verilmesini önerdim. Ben ajaxta genelde geri dönen bilginin bir veri dizisi
olduğu şekilde kullandığımdan bilginin işlenebilir olması için xml formatını
kullanıyorum. Örneğin istanbul iline ait ilçeleri almak istediğimde geri
dönen bilgi
 
<?xml version="1.0" encoding="ISO-8859-9"?>
<kayit>
    <ilce>ŞİŞLİ</ilce>
    <ilce>FATİH</ilce>
</kayit>
 
şeklinde oluyor. Bu bilgiyi javascript ile işleyerek örnegin bir listbox
nesnesine yazmak istediğimde
 
var isIE = (navigator.appName.indexOf("Microsoft") != -1);
 
for(i=0;i<xmlDoc.documentElement.childNodes.length;i++) // herbir ilce
kayıdına tek tek gidiliyor
{
    tagname=xmlDoc.documentElement.childNodes[i].tagName; // bu uygulamada
gereksiz (herzaman 'ilce' değeri gelecek) , başka durumlarda ihtiyaç
olabilir.
    if(isIE)
    {
        deger=xmlDoc.documentElement.childNodes.item(i).text;
    }
    else
    {
 
deger=xmlDoc.documentElement.childNodes.item(i).firstChild.nodeValue;
    }

    document.getElementById('ilceler').options[i] = new Option(deger,deger);
}
javascript komutunu kullanarak ilçe bilgilerinin listbox nesnesine
eklenmesini sağlanmış oluyor.
 
Aşağıdaki php ye bağlanarak bilgiyi almak ve üstteki örnekteki gibi gelen
xml bilgisini işleyerek sayfa yenilemeden bilgi alışverişi yapmak mümkün
olmakta.
 
 
Burada anlatılan örnek Ajaxın açılımı olan (Asynchronous Javascript and XML)
dan da anlaşılan javascript ile xml bilgisinin işlenmesi ve
kullanılmasıdır.Görüldüğü gibi ugulaması kolaydır. Şu sıralarda gündemde
olan WEB 2.0 kavramı Ajaxı da içine alan ve javascriptin üstün yeteneklerini
kullarak tarayıcıda kullanım kolaylıkları(Sürükle-bırak vs.) sağlamayı
amaçlayan bir çatıya verilen isimdir. WEB 2.0, Ajax ile karıştırılmaktadır.
Ajax sadece eşzamanlı olmayan ve genellikle xml formatında olan bilgilerin
tarayıcı yenilenmeden alınıp işlenmesini kapsamaktadır. Eğer daha dinamik
sayfalar yapmak istiyorsanız yahoo firmasının kendi kullandığı altyapıyı
inceleyebilirsiniz.
 
http://developer.yahoo.com/yui/
 
 
 
  _____

From: linux-programlama-bounces@liste.linux.org.tr
[mailto:linux-programlama-bounces@liste.linux.org.tr] On Behalf Of Nuri
Akman
Sent: Wednesday, December 06, 2006 2:11 PM
To: linux-programlama@liste.linux.org.tr
Subject: Re: [Linux-programlama] Ajax - türkçe karakter problemi

Sayın Erol,
 
Öneriniz bende çalıştı. :) :)
 
Uzun zamandır Ajax çalışmayı düşünüyordum. Bu örnek bana cesaret verdi.
 
Size bir şey sormak istiyorum:
Ajax ile bir şeyler yapmak kolay mı? Yoksa gerçekten bu örnekte olduğu kadar
basit bir şey mi?
 
 
Sevgiler,
Nuri AKMAN

----- Original Message -----
From: Sühan Erol <mailto:suhan@ufotek.com.tr>
To: linux-programlama@liste.linux.org.tr
Sent: Wednesday, December 06, 2006 1:36 PM
Subject: RE: [Linux-programlama] Ajax - türkçe karakter problemi

 
 header('Content-type: text/xml');
echo "<?xml version=\"1.0\" encoding=\"ISO-8859-9\"?>";
 
komutlarından sonra html içeriğini yazarak deneyiniz.

  _____

From: linux-programlama-bounces@liste.linux.org.tr
[mailto:linux-programlama-bounces@liste.linux.org.tr] On Behalf Of Ahmet
Sent: Wednesday, December 06, 2006 1:24 PM
To: linux-programlama@liste.linux.org.tr
Subject: [Linux-programlama] Ajax - türkçe karakter problemi

Merhabalar,
 
ilk Ajax denememde türkçe karakter problemi ile karşılaştım :(
 
denediğim örneği aşağıda 3 dosya şeklinde gönderiyorum.

 
// index.php dosyası

<html>
<head>
 <title>Ajax Deneme</title>
 <meta http-equiv="content-type" content="text/html; charset=iso-8859-9" />
 <script language="JavaScript" type="text/javascript">
 var http;
 var browser = navigator.appName;
 oXMLHttpRequest()
 
 function oXMLHttpRequest() {
   var obj;
  try {
    // Sadece Internet Explorer için
    http = new ActiveXObject('Microsoft.XMLHTTP');
  }
  catch(e) {
    try {
   // Gecko tabanlı, safari ve de Opera için
   http = new XMLHttpRequest();
    }
    catch (e) {
   // XMLHttpRequest destegi yoksa
   http = false;
    }
  }
  return http;
 }
 
 function Goster(sayfa){
  document.getElementById("goster").innerHTML="Lütfen bekleyiniz.. Veriler
alınıyor.."
  var url=sayfa
  http.open('get', url);
  http.onreadystatechange = icerikdegisim;
  http.send(null);
 }
 
 function icerikdegisim(){
  if(http.readyState == 4){
    document.getElementById('goster').innerHTML = http.responseText;
   } else {
   // işlem devam ediyor
  }
 }
 </script>
 
</head>
<body>
<br />
<br />
<br />
<br />
 
<table width="500" border="0" align="center" cellpadding="0"
cellspacing="0">
  <tr>
    <td align="center">
     <a href="javascript:Goster('icerik.php');">İçerik</a> &nbsp;-&nbsp;
     <a href="javascript:Goster('icerik.php');">İçerik</a>
 </td>
  </tr>
</table>
 
<br>
<table width="500" border="0" align="center" cellpadding="0"
cellspacing="0">
  <tr>
    <td id="goster"></td>
  </tr>
</table>
</body>
</html>

//icerik1.php dosyası
 
<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=iso-8859-9" />
 </head>
</html>
<body>

İçerik 1
<br />
Türkçe karakterler : ü.i.ğ.ş.ç.ö.ı.Ü.İ.Ğ.Ş.Ç.Ö.I.<br />
</body>
</html>
 
//icerik2.php dosyası
 
<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=iso-8859-9" />
 </head>
</html>
<body>
İçerik 2
<br />
Türkçe karakterler : ü.i.ğ.ş.ç.ö.ı.Ü.İ.Ğ.Ş.Ç.Ö.I.<br />
</body>
</html>
 
 
Kolay gelsin iyi çalışmalar...

  _____

_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama

_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.