Zoque.Forum
Dirsek Teması:
Geri Dön Zoque.Forum » Webmaster Kaynaklari » Sunucu Tabanlı Programlama (Server Side) » XMLHTTP Türkçe Karakter Sorunu


Sunucu Tabanlı Programlama (Server Side) Perl/CGI, PHP, ASP, JSP, .NET ve diğer programlama dilleri hakkındaki sorularınıza, paylaşmak istediklerinize ve örnek kodlara bu alanda yer verebilirsiniz.

Yanıt
 
LinkBack Seçenekler
Old 07.08.2002   #1 (permalink)
soul
 
soul's Avatar
 
Üyelik Tarihi: 13.07.2000
Yer: LND
Mesaj: 4,275
XMLHTTP Türkçe Karakter Sorunu

XMLHTTP ile herhangi bir siteden veri çektiğimde Türkçe karakterler bozuıluyor.

Her yeri aradım (MSND, web, iy, zoque, aspnerdir vs.) ancak bu konuda bir cevap bulamadım.

Esas sorun gelen karakterlerin ? işaretine dönüyor olması yani her bilinmeyen karakter bir (?)soru işareti olarak gözüküyor.

Basit şekilde kod şöyle
Kod:
Set xobj = server.CreateObject("Microsoft.XMLHTTP")
	xobj.Open "GET", "http://www.zoque.net", false
	xobj.Send
	sayfa =  xobj.ResponseText

Response.Write sayfa
Bu sorunu nasıl çözebilirim ? Fikri olan var mı ?

Bir de XMLHTTP için adam akıllı referans babında bir site / doküman da bilen varsa sevinirim.
__________________
FERRUH.MAVİTUNA - İnanmıyorum, yeni site!
soul şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 30.07.2007   #2 (permalink)
reaxion
 
Üyelik Tarihi: 27.05.2007
Yer: Kayseri
Mesaj: 13
Re: XMLHTTP Türkçe Karakter Sorunu

Aynı sorunu bende yaşıyorum. Yeni konu açmayayım dedim.
Adam akıllı ingilizce kaynak bile bulamadım. Ya da aramasını bilmiyorum..

Türkçe karakter problemini çözen yok mu?
reaxion şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 30.07.2007   #3 (permalink)
arsende
 
arsende's Avatar
 
Üyelik Tarihi: 05.11.2005
Yer: Istanbul
Yaş: 28
Mesaj: 486
Re: XMLHTTP Türkçe Karakter Sorunu

Alıntı kaynak adresi hatırlamıyorum!

Kod:
Function BinaryToString(Binary) 
	Dim cl1, cl2, cl3, pl1, pl2, pl3 
	Dim L 
		cl1 = 1 
		cl2 = 1 
		cl3 = 1 
		L = LenB(Binary) 
	Do While cl1<=L 
		pl3 = pl3 & Chr(AscB(MidB(Binary,cl1,1))) 
		cl1 = cl1 + 1 
		cl3 = cl3 + 1 
	If cl3>300 Then 
		pl2 = pl2 & pl3 
		pl3 = ""
		cl3 = 1 
		cl2 = cl2 + 1 
	If cl2>200 Then 
	pl1 = pl1 & pl2 
	pl2 = "" 
	cl2 = 1 
	End If 
	End If 
	Loop 
	BinaryToString = pl1 & pl2 & pl3 
End Function
Kullanım (ResponseText yerine ResponseBody kullanıyoruz! )
Kod:
sayfa =  BinaryToString(xobj.ResponseBody)
Bu fonksiyonla HTML çekip parse ediyorum sorunuz çalışıyor...
arsende şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 30.07.2007   #4 (permalink)
profiteror
 
Üyelik Tarihi: 23.07.2007
Yer: kocaeli
Yaş: 28
Mesaj: 5
Re: XMLHTTP Türkçe Karakter Sorunu

xobj.open .... altına

" xobj.setRequestHeader("Content-Type",
"application/x-www-form-urlencoded; charset=iso-8859-9"); " yazarak denermisin.

Alıntı:
Set xobj = Server.CreateObject("Microsoft.XMLHTTP")
xobj.Open "GET", "http://www.zoque.net", false
xobj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=iso-8859-9");
xobj.Send
sayfa = xobj.ResponseText

Response.Write sayfa
profiteror şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 31.07.2007   #5 (permalink)
reaxion
 
Üyelik Tarihi: 27.05.2007
Yer: Kayseri
Mesaj: 13
Re: XMLHTTP Türkçe Karakter Sorunu

profiteror;
yazmış olduğun kodu denedim yalnız sayfa hata verdi. Ben az ASP biliyorum ama ASP de sonu ; işareti ile biten bir cümle görmemiştim. Mantıklı gelmedi bana. Yine de ilgin için teşekkür ederim.

arsende;
vermiş olduğun fonksiyonu denedim ve sağlıklı biçimde çalıştı. Çok teşekkür ederim.
Not : daha önce de denemiştim, galiba yanlış uygulamışım (:
reaxion şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 31.07.2007   #6 (permalink)
profiteror
 
Üyelik Tarihi: 23.07.2007
Yer: kocaeli
Yaş: 28
Mesaj: 5
Re: XMLHTTP Türkçe Karakter Sorunu

ben PHP ile kullanıyorum şu ana kadar bir sorun yaşamadım. ASP hakkında bir fikrim yok
profiteror şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 05.08.2007   #7 (permalink)
daddyguy
 
daddyguy's Avatar
 
Üyelik Tarihi: 24.07.2007
Yer: Bursa
Yaş: 21
Mesaj: 15
Re: XMLHTTP Türkçe Karakter Sorunu

@arsende verdiğin kod için teşekkürler çalışıyor. Karakter sorun oluşturmadan çekebiliiyor.
ben JavaScript kullandım.

HTML Code:
<script lianguage="vbscript">
Function BinaryToString(Binary) 
	Dim cl1, cl2, cl3, pl1, pl2, pl3 
	Dim L 
		cl1 = 1 
		cl2 = 1 
		cl3 = 1 
		L = LenB(Binary) 
	Do While cl1<=L 
		pl3 = pl3 & Chr(AscB(MidB(Binary,cl1,1))) 
		cl1 = cl1 + 1 
		cl3 = cl3 + 1 
	If cl3>300 Then 
		pl2 = pl2 & pl3 
		pl3 = ""
		cl3 = 1 
		cl2 = cl2 + 1 
	If cl2>200 Then 
	pl1 = pl1 & pl2 
	pl2 = "" 
	cl2 = 1 
	End If 
	End If 
	Loop 
	BinaryToString = pl1 & pl2 & pl3 
End Function
</script>

<button onclick="alert(BinaryToString(xmlhttp.ResponseBody))">Kaynağı getir.</button>

Denemeye çalıştığım tam kod da bu:
HTML Code:
<script>
function getElement(psID) { 
   if(document.all) { 
      return document.all[psID]; 
   } else { 
      return document.getElementById(psID); 
   } 
}
var xmlhttp;

function icerikYukle(adres,parametre)
{
frames["icerik"].document.body.innerHTML="<h1>Yükleniyor...<\/h1>"
var adres, zaman1, zaman2;
zaman1 = new Date();
xmlhttp=null
// code for Mozilla, etc.
if (window.XMLHttpRequest)
  {
  xmlhttp=new XMLHttpRequest()
  }
// code for IE
else if (window.ActiveXObject)
  {
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
  }
if (xmlhttp!=null)
  {
  xmlhttp.onreadystatechange=state_Change;
  xmlhttp.open("GET",adres,false)
  xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=iso-8859-9");
  xmlhttp.setRequestHeader("User-Agent", "MyCustomUser"); 

  xmlhttp.send(parametre)
  }
else
  {
  alert("Your browser does not support XMLHTTP.")
  }
zaman2=new Date();
getElement('zaman').innerHTML=window.status = zaman2.getMilliseconds()-zaman1.getMilliseconds() + " ms yüklendi.";
}
say=1;
function state_Change()
{
// if xmlhttp shows "loaded"
//frames["icerik"].document.body.innerHTML=xmlhttp.readyState+'\n'+xmlhttp.status;
if (xmlhttp.readyState==4)
  {
  // if "OK"
  if (xmlhttp.status==200)
    {
    }
  else
    {
    frames["icerik"].document.body.innerHTML+="<h1><br>Durum:"+xmlhttp.status+"<br>"+say+".deneme: XML verisini aktarırken sorun oluştu</h1><br>";say++;
    }
    frames["icerik"].document.body.innerHTML=BinaryToString(xmlhttp.ResponseBody)
    getElement("tarea").value=frames["icerik"].document.body.innerHTML;
    getElement("arama").value=xmlhttp.getAllResponseHeaders()
  }
    
}



function handleError() {
	alert("hata var")
	return true;

}

window.onerror = handleError;

</script>
<script language="vbscript">
Function BinaryToString(Binary) 
	Dim cl1, cl2, cl3, pl1, pl2, pl3 
	Dim L 
		cl1 = 1 
		cl2 = 1 
		cl3 = 1 
		L = LenB(Binary) 
	Do While cl1<=L 
		pl3 = pl3 & Chr(AscB(MidB(Binary,cl1,1))) 
		cl1 = cl1 + 1 
		cl3 = cl3 + 1 
	If cl3>300 Then 
		pl2 = pl2 & pl3 
		pl3 = ""
		cl3 = 1 
		cl2 = cl2 + 1 
	If cl2>200 Then 
	pl1 = pl1 & pl2 
	pl2 = "" 
	cl2 = 1 
	End If 
	End If 
	Loop 
	BinaryToString = pl1 & pl2 & pl3 
End Function
</script>
<table width="100%">
<tr>
<td><input id="adrese" style="border:solid 1 green;" value="http://www.yahoo.com" style="width:400"></td>
<td><button onclick="icerikYukle(getElement('adrese').value,'')">Sayfayı Getir</button>
<button onclick="getElement('tarea').value=BinaryToString(xmlhttp.ResponseBody)">Kaynağı Aktar</button>
<button onclick="getElement('tarea').value=frames['icerik'].document.body.innerText">Sayfadaki Metni al</button>
<span id="zaman"></span>
</td>
</tr>
<tr><td><textarea id="tarea" style="width:450;height:450;overflow:auto"></textarea></td>
<td>
<iframe name="icerik" style="width:500;height:450;"></iframe>
</td></tr>
</table>

Mesaj daddyguy tarafından 05.08.2007 (09:57) yeniden düzenlendi..
daddyguy şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 05.08.2007   #8 (permalink)
daddyguy
 
daddyguy's Avatar
 
Üyelik Tarihi: 24.07.2007
Yer: Bursa
Yaş: 21
Mesaj: 15
Hata: İzin verilmiyor

Kodu bilgisayarımda çalıştırabiliyordum. fakat internete yükeleyip siteden çalıştırmak istediğimde

"İzin verilmiyor" diye br JavaScript hatası çıktı.
site burada http://bektasaykut.googlepages.com/kaynakcek.html
daddyguy şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 06.08.2007   #9 (permalink)
Yns_
 
Üyelik Tarihi: 23.10.2005
Yer: Eregli
Yaş: 21
Mesaj: 60
Re: XMLHTTP Türkçe Karakter Sorunu

guvenlik nedeniyle standart olarak JavaScript XMLHTTP ile uzaktaki sunucuya veri yollanamiyor, local dosyalara istek yapilabiliyor.

arka planda, bir PHP/ASP scriptine veri yollayip ondan donen veriyi ekrana basabilirsiniz.
Yns_ şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Yanıt

Etiketler
sorunu , karakter , turkce , xmlhttp



 
Zoque'a hoşgeldiniz!
Zoque 27.02.1999 tarihinde yayın hayatına başlamış, paylaşıma dayalı bir oluşumdur. Tasarım, teknoloji, web, kültür ve sanat ana başlıkları altında bilgi paylaşımı ve benzer değerlere sahip katılımcıların birbirleriyle iletişime girmelerine imkan sağlar. "Az ama Öz" sloganından yola çıkarak, kaliteli ve nitelikli katılımı temel alır.

Saygın ve ciddi bir ortamda yardımlaşmak, haberleşmek, kendi bildiklerini diğer katılımcılarla paylaşmak isteyen, oluşumumuza düzenli katılımda bulunacağı inancını taşıyan konuklarımızı üye olmaya davet ediyoruz. [ » ]


Üye Girişi:

UslanmaM baktabul.com TEKplatform TEKplatform

En popüler ilk 100 etiket
Tag Cloud
acil adsl ajax almak arama araniyor ariyorum ariyoruz asp bilen bilgi bilgisayar blog calisma canon css dijital div domain dosya eleman film firefox flash font form forum fotograf freelance google gore grafik grafiker hakkinda hangi hata hatasi hosting html ilgili ilk image internet istanbul istiyorum java javascript karakter kayit kisisel kullanimi link logo mac mail menu muzik mysql nasil neden nedir online photoshop php problemi program programi reklam resim satilik sayfa script server ses sistemi site sitesi son soru sorun sorunsali sorunu sql swf tasarim tasarimci tasarimcisi tasarimi turk turkce veri video web windows wordpress xml yardim yazi yeni zoque
Zoque RSS Aboneliği
Son eklenen konuları e-posta ile haber verelim mi?

Forum Yazılımı: vBulletin® Version 3.7.3 Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0 RC5

Arayüz/Skin "Güneş" © www.zoque.com / net. Copyright © 1999 - 2008
Forum Saati GMT +2. Şu anda saat: 19:24.