Знаки вопроса вместо кириллицы в MySQL

196
15 декабря 2016, 15:49

Создал таблицу:

CREATE TABLE `poisk_post` (
`id` int(10) unsigned NOT NULL auto_increment,
`url` varchar(500) NOT NULL default '',
`title` varchar(500) NOT NULL default '',
`im` varchar(500) NOT NULL default '',
`description` varchar(1000) NOT NULL default '',
`keywords` varchar(1000) NOT NULL default '',
PRIMARY KEY (`id`)
)DEFAULT CHARACTER SET cp1251 COLLATE cp1251_general_ci;

Сам скрипт имеет кодировку ЮТФ8

код:

$title[1]=iconv("utf-8", "windows-1251", $title[1]);
$description[1]=iconv("utf-8", "windows-1251", $description[1]);
$keywords[1]=iconv("utf-8", "windows-1251", $keywords[1]);
$url=iconv("utf-8", "windows-1251", $url);
$pic=iconv("utf-8", "windows-1251", $pic);
$db = new mysqli('localhost', 'login', 'pas', 'arashvg_poisk');
$db->query("INSERT IGNORE INTO  `poisk_post` (`id`, `url`, `title` , `im` , `description`, `keywords`) VALUES ('', '".$url."','".$title[1]."','".$pic."','".$description[1]."','".$keywords[1]."')");

Смотрю в БД, вместо кирилицы сплошные знаки вопроса! http://vkcontakte.pp.ua/121212.JPG

Как можно исправить?

Вопрос решил простым добавлением строки:

mysql_query("SET NAMES cp1251");
Answer 1

Зачем ты создаешь в 1251, а потом перекодируешь в утф8 ? Не логичнее сразу все в утф8 держать?

READ ALSO
Отрицание в INNER JOIN

Отрицание в INNER JOIN

Нужно чтобы из tasks не показывались те материалы, id которых записан в tasks_done

168
Проблемы с if-else

Проблемы с if-else

Берется id, происходит парсинг, данные записываются, читаются, но если я опять ввожу тот же id, то опять происходит парсинг, а не вывод информации...

150
Проблема с PDO

Проблема с PDO

Здравствуйте, написал маленькую обёртку PDO

237
Подсчет количества дней

Подсчет количества дней

После регистрации пользователю записывается в базу данных (поле date_reg тип DATE) дата регистрации, вот как подсчитать и вывести количество дней...

150