Merhaba,
MSSQL veritabanını wordpress'e geçirmek için php kodlaması yapmam gerekli.
Bunun için ilk önce microsoft tabanlı SQL Servere bağlanmam gerek.
$user = 'atakan';
$pass = '147';
$server = 'PC-ATAKAN';
$database = 'atakan_db';
$connection_string = "DRIVER={SQL Server};SERVER=$server;DATABASE=$database";
$baglan = odbc_connect($connection_string,$user,$pass);
if ($baglan) {
echo "BAĞLANDI !<br/>";
$kayitlar = odbc_exec($baglan,"Select * From Personel");
while($kayit = odbc_fetch_array($kayitlar)){
$data = $kayit["adi"];
echo $data."<br>";
}
odbc_close($baglan);
} else{
die("Bağlantı sorunu");
}Bu şekilde çalışıyor ancak tr karakter sorunu veriyor.
Bknz ;
Bu sorunu çözmek için utf8_encode kullanıyorum bu seferde
İÇŞÜĞÖIi karakterleri ÝÇÞÜÐÖIi şeklinde oluyor. Bunun için str_replace kullanamaya çalıştım oda yemedi.
Araştırmalarım sonucunda şöyle birşey buldum ;
$connection_string = "Driver={MySQL ODBC 3.51 Driver};Server=$server;charset=UTF8;Database=$database;Option=3;";Bu hiç bağlanmadı veritabanına. 3.51 versionu ile charset seti verilebiliyormuş sanırım.
Ayrıca bu kodu da kullandım yemedi :
ini_set('mssql.charset', 'UTF-8');Kafayı yiycem derken farklı bir yöntem buldum
sqlsrc_connect $serverName = "PC-ATAKAN";
$connectionInfo = array( "Database"=>"atakan_db", "CharacterSet" =>"UTF-8", "UID"=>"atakan", "PWD"=>"147");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false ) {
die( print_r( sqlsrv_errors(), true));
}Sanırım bu fonksiyonun çalışması için php_sqlsrv_56_ts.dll denilen dosyayı php.ini'den import etmek gerekiyormuş. Exe'ini bulup xampp/php/ext yoluna yükledim. php.ini'yi de kodu ekledim.
Sürüm farklarını bile kontrol ettim. Bu kodla da hiç bağlanmıyor ! Yardımcı olanlara şimdiden teşekkürler