Проблем с енкодинга

purko

Registered
Имам следните таблици...
CREATE TABLE IF NOT EXISTS `chat` (
`id` int(255) NOT NULL AUTO_INCREMENT,
`ot` varchar(30) COLLATE cp1251_bulgarian_ci NOT NULL,
`suob` varchar(250) COLLATE cp1251_bulgarian_ci NOT NULL,
`vreme` int(40) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_bulgarian_ci AUTO_INCREMENT=598 ;

CREATE TABLE IF NOT EXISTS `kat` (
`id` int(255) NOT NULL AUTO_INCREMENT,
`ime` varchar(30) COLLATE cp1251_bulgarian_ci NOT NULL,
`odobrena` int(1) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_bulgarian_ci AUTO_INCREMENT=5 ;


CREATE TABLE IF NOT EXISTS `pod_kat` (
`id` int(255) NOT NULL AUTO_INCREMENT,
`kat` int(255) NOT NULL,
`ime` varchar(30) COLLATE cp1251_bulgarian_ci NOT NULL,
`odobrena` int(1) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_bulgarian_ci AUTO_INCREMENT=4 ;


CREATE TABLE IF NOT EXISTS `potrebiteli` (
`id` int(255) NOT NULL AUTO_INCREMENT,
`nick` varchar(20) COLLATE cp1251_bulgarian_ci NOT NULL,
`ime` varchar(30) COLLATE cp1251_bulgarian_ci NOT NULL,
`posta` varchar(40) COLLATE cp1251_bulgarian_ci NOT NULL,
`parola` varchar(32) COLLATE cp1251_bulgarian_ci NOT NULL,
`tainaduma` varchar(32) COLLATE cp1251_bulgarian_ci NOT NULL,
`skype` varchar(40) COLLATE cp1251_bulgarian_ci NOT NULL,
`nivo` int(1) NOT NULL,
`ban` int(1) NOT NULL,
`tochki` int(255) NOT NULL,
`online` varchar(10) COLLATE cp1251_bulgarian_ci NOT NULL,
`igri` int(255) DEFAULT NULL,
`pobedi` int(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_bulgarian_ci AUTO_INCREMENT=15 ;
Проблема е, че от таблиците с изключение таблицата чат изкарва записите на български ето така
�����
Не мога да си обясня защо от тази на чата го изкарва без проблеми а от другите 3 не.
Колацията на базата е cp1251_bulgarian_ci
Вътре в нея записите са си наред ама като излязат...
Пробвах да сменям колацията на базата ама няма резултат...
Какво да правя?
 
Направи ги на UTF-8
 
Сложи
Код:
$chars="SET CHARACTER SET cp1251";mysql_query($chars);
след посочването на базата данни(mysql_select_db)
 
В браузъра Изглед(View)>>Кодиране на знаци(нещо от рода на Character Encoding)>>Cyrillic(Windows-1251). Това обаче временно решава проблема. Използвай кодиране utf8 и за таблиците, и за страниците. За да настроиш MySQL да работи с utf8(става и с windows1251) напиши
Код:
mysql_query("SET names utf8");
или
Код:
mysql_query("SET names windows1251");

Промени
Код:
COLLATE=cp1251_bulgarian_ci
на
Код:
COLLATE=utf8_general_ci
 
Пробва ли по моя начин?
Отваряш си conf.php или там където ти е конекта, намираш
mysql_select_db();
и под него добавяш:
$chars="SET CHARACTER SET cp1251";mysql_query($chars);
 
Вие дадохте една точка за support на federer_11 .
Натиснете тук за да се върнете в темата.
 

Горе