Проблем с charset

Salesns

Registered
Имам проблем с чарсета на локалхоста бачкаше, но като го качих на хост и добавя нова новина излизат ???????

задал съм cp1251


$chars="SET CHARACTER SET cp1251";
но пак излизат йероглифи, как да го оправя?
 
прочетох това в хостбългария това ми е dbto

CREATE TABLE `news` (
`novina` text NOT NULL,
`ime` varchar(255) default NULL,
`avtor` varchar(255) default NULL,
`id` int(11) NOT NULL auto_increment,
PRIMARY KEY (`id`)
)CHARACTER SET cp1251

и пак същата работа ??????
 
GameZone каза:
с UTF8 или ANSI ?
ANSI ... Проблема е при изкарване иначе, ако променя ???? на тест в дбто си изкарва тест, но при добавянето съм сложил

$our = mysql_query("SELECT id FROM news ORDER BY id DESC LIMIT 1");
$chars="SET CHARACTER SET cp1251";

и пак го добавя с ????
 
Още при създаването на базата данни на localhost-a трябва да сложиш CHARACTER и COLLATE и след това при създаването на таблици не слагаш нищо а авотоматично се слагат каквито са за базата данни.

Ако не сложиш нищо при създаването на базата данни, по подразбиране се слага latin1 или там каквито са настройките по подразбиране.

Когато качиш сайта си на друг сървър, там настройките по подразбиране най-вероятно са други. Повечето български хостове са с cp1251. След като на всякъде всичко е различно идва проблема...



1. базата на localhost създаваш така:

Код:
CREATE DATABASE `ime_db` DEFAULT CHARACTER SET cp1251 COLLATE cp1251_bulgarian_ci;

2. Таблицата създаваш така:

Код:
CREATE TABLE `news` (
`novina` text NOT NULL,
`ime` varchar(255) default NULL,
`avtor` varchar(255) default NULL,
`id` int(11) NOT NULL auto_increment,
PRIMARY KEY (`id`)
)


3. След mysql_connect() слагаш това

Код:
mysql_query('SET NAMES cp1251');


Когато е създадена така базата, като преместиш на хост би трябвало да няма проблем.
 
Всичко ми е абсолютно така и пак си излизат ????? нямам представа как да го оправя вече явно ще едитвам от pma...
 

Back
Горе