Burti adlı üyeden alıntı: mesajı görüntüle
Merhaba,

Genel problemdir bu TR karakter sorunu ve buna bir dur dememiz gerekli basit bir ders ile

İlk olarak Veritabanımızın karakter kodu çok önemlidir. PHPMyAdmin veya kullandığınız SQL derleyicinize giriş yapınız. Yapı'sındaki karşılaştırma kodunu "utf8_general_ci" olarak değiştiriniz.

İkinci adımımız ise config dosyamız yani SQL'e bağlanırken kullandığımız konfigürasyon ve güvenli şifrelerimizin yer aldığı dosyamız.

Bağlantı kurarken ben muhakkak şunu kullanırım:
<?php
$server = "localhost"; 
$db_user = "VeritabanıUser"; 
$db_pass = "Şifre"; 
$database = "VeritabanıAdı";
$nelan=mysql_connect($server, $db_user, $db_pass); 
$helan=mysql_select_db($database);
    mysql_select_db($database);
    mysql_query("SET NAMES 'utf8'");
    mysql_query("SET CHARACTER SET utf8_general_ci"); 

if(!$nelan) { die("Veritabanı Kullanıcı Adı, Şifre veya Server adını kontrol ediniz."); }
if(!$helan) { die("Veritabanı veya Kullanıcısına erişim sağlanamamaktadır."); }
?>
eğer varolanınızda varsa mysql_connect'ten sonra ekleyiniz:
    mysql_query("SET NAMES 'utf8'");
    mysql_query("SET CHARACTER SET utf8_general_ci");
Üçüncü adımımız ise .php uzantılı veritabanından bilgi çeken sayfamızın kodlaması:

Sayfamızı muhakkak Notepad++ veya alternatifi bir program ile UTF-8 BOM'suz kodlamaya çeviriyoruz. Bunu nasıl yaparız. Programımızı yükleyerek .php dosyamızı notepad++'da açarız ardından üst menüde yer alan Kodlama > UTF-8 (BOM'suz) Kodlamasına Dönüştür diyerek kodlamamızı UTF-8 yaparız.

Son adımımız ise: XHTML Head etiketlerimizdir: <html> </html> diye başlamadan önce:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
diye başlarsanız sayfamızın charset ve uyumu tam olur sıkıntı yaşamayız

MySQLi için TR karakter sıkıntısı yaşamadan bağlantı:

<?php
header('Content-Type: text/html; charset=utf-8');
 
$server = "localhost";  
$db_user = "root";  
$db_pass = "";  
$database = "emniyet"; 

$mysqlcon=mysqli_connect($server, $db_user, $db_pass, $database);  
mysqli_error($mysqlcon);
$mysqlcon->set_charset("utf8")
?>
Teşekkürler. Deneyeceğim