Енкодинг

Cox

Registered
Здравейте,
Правя опит да използвам мод за последни теми в phpBB2. Пробвах с 1-2, всичко добре, но резултатите излизат в "???". Променях енкодинга - utf-8, win-1251, експериментирах с доста различни колации на таблицата от която се вадят данните, изпробвах ги в различни комбинации с енкодинга на страницата, пробвах да пратя заявка SET NAMES cp1251/utf8 - без резултат. Успях да изкарам само "� � "... Явно бъркам някъде, но незнам къде.
Ако някой може да даде някаква идея или решения ще съм благодарен. :)

За всеки случаи ще дам и кодът, който използвам:
Код:
<?php
$address = "http://sssssss/phpBB2/"; 
$host = "ssssss"; 
$user = "ssssss"; 
$pass = "ssssss"; 
$db = "sssssssss"; 
$table = "phpbb_topics"; 
$show = "10"; 
$link = mysql_pconnect($host, $user, $pass) or die('Error connecting to mysql host!');
$db = mysql_select_db($db) or die('Error selecting database!');

$query = "select * from $table order by topic_time desc limit 0,$show";
$result = mysql_query($query, $link);

while ($row=mysql_fetch_row($result))
{
echo " :: <a href='ssssssphpBB2/viewtopic.php?t=$row[0]' target=_blank>$row[2] </a><br/>";
}
?>
 
Първо виж колацията на phpbb каква е? Ако е UTF-8 пишеш:

Код:
mysql_query('SET NAMES UTF8');
mysql_query('SET CHARACTER SET UTF8');

забележи, че енкодинга на mysql е utf8, без тире.
 
На всички таблици колацията е latin1_swedish_ci.
На въпросната "phpbb_topics" таблица от която би трябвало да се вадят данните пробвах да сложа utf8_unicode_ci, cp1251_bulgarian_ci, cp1251_general_ci. Пробвах и с разлини колации на полето "topic_title" в нея. При колации utf8_unicode_ci на полето и таблицата, енкодинг на файла в който трябва да ги изкарва utf-8 получавам "ññòàíààíà". :?
 

Back
Горе