İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Php de veri cekerken ve veri kaydederken türkçe karakter hatası oluyo

holigan52

0
İyinet Üyesi
Katılım
8 Mayıs 2011
Mesajlar
210
Reaction score
0
Php de veri cekerken ve veri kaydederken türkçe karakter hatası oluyo
 

holigan52

0
İyinet Üyesi
Katılım
8 Mayıs 2011
Mesajlar
210
Reaction score
0
Teşekkür ederim ama işime yaramadı anlamadım gitti ya veri tabanında düzgün yaazan veriler localhosta geldiginde bozuluyo... :(
 

Lansewebtr

0
İyinet Üyesi
Katılım
30 Aralık 2010
Mesajlar
256
Reaction score
3
kendine iki yoldan birini belirlicen. ikisi de doğru çözümdür.

ya tüm dosyaların ANSI olarak kayıt edilecek, tüm charset lerin ISO-8859-9 olacak mysql in latin5 olacak.

ya da tüm dosyaların UTF-8 (BOM'suz) olarak kayıt edilecek, tüm charset lerin UTF-8 olacak mysql in utf8 olacak.

bunları yaptıktan sonra dosyalarda, değişken isimlerinde kısaca her yer de istediğin karakteri kullanabilirsin.

sıkıntı: başka charset li bi siteden curl ile veri çekmek de.

bunun da çözümü;
PHP:
function kaynak( $adres, $ileti = false )
{
	$işlem = curl_init();
	$başlık[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
	$başlık[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
	$başlık[] = "Cache-Control: max-age=0";
	$başlık[] = "Connection: keep-alive";
	$başlık[] = "Keep-Alive: 300";
	$başlık[] = "Accept-Charset: ISO-8859-9,utf-8;q=0.7,*;q=0.7";
	$başlık[] = "Accept-Language: en-us,en;q=0.5";
	$başlık[] = "Pragma: ";

	curl_setopt($işlem, CURLOPT_URL, $adres);
	curl_setopt($işlem, CURLOPT_USERAGENT, 'Googlebot/2.1 (+http://www.google.com/bot.html)');
	curl_setopt($işlem, CURLOPT_HTTPHEADER, $başlık);
	curl_setopt($işlem, CURLOPT_REFERER, 'http://www.google.com');
	curl_setopt($işlem, CURLOPT_ENCODING, 'gzip,deflate');
	curl_setopt($işlem, CURLOPT_AUTOREFERER, true);
	curl_setopt($işlem, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($işlem, CURLOPT_TIMEOUT, 10);
	curl_setopt($işlem, CURLOPT_POST, $ileti ? true : false );
	curl_setopt($işlem, CURLOPT_POSTFIELDS, $ileti ? $ileti : false );

	$html = curl_exec( $işlem );
	curl_close( $işlem );

	return $html;
}
Ben tüm dosyalarımı utf8 e ayarlı kullanıyorum. hiç bi yer de hiç bi karakter hatası yok..

Ayrıca iso değil utf kullanmanın en büyük avantajı başka bi siteyle doğrudan veri alışverişin varsa örneğin bir facebook uygulaması oluşturuyosan tam uyumlu olman.

Ekleme: Ha unutmadan. şimdi ANSI yi UTF-8 (BOM'suz) a çevirirsin veya tam tersine çevirirsin; sayfadaki tüm Türkçe karakterler arza yapar. Tek tek düzeltmeye uğraşırsın :D ben yapmıştım hani ordan biliyorum, yok canım yapmam deme :D Düzgün haline ctrl+a ctrl+c yap hepsini kopyala. Çeviriyi yap, karakterler bozulunca yine ctrl+a ctrl+v yapar düzeltirsin..
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst