Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Кодировка при записи в MySQL ,fpe ( какието проблемы после перехода на PHP 5 появились :( )

Сообщения:  [1-5] 

 
 автор: cheops   (11.06.2007 в 10:40)   письмо автору
 
   для: Panker   (11.06.2007 в 00:54)
 

Хм... и всё равно знаки вопроса?
Дело в том, что строки
<?php
mysql_query 
("set character_set_client='cp1251'"); 
mysql_query ("set character_set_results='cp1251'"); 
mysql_query ("set collation_connection='cp1251_general_ci'");
?>

эквивалентны строке
<?php
  mysql_query
("SET NAMES cp1251");
?>

   
 
 автор: Panker   (11.06.2007 в 00:54)   письмо автору
 
   для: cheops   (10.06.2007 в 20:59)
 

.... да вот тоже копал по яндексу в направлении cp1251, только не понял где её указывать? При записи или соединении? вроде прописав в файле который соелияней с базой такие строки


<?php
$dblocation 
"localhost"//Хост обычно это localhost
$dbname "mon-cms"//Имя базы, той чт овы создали через phpMyAdmin или ещё как то...
$dbuser "root"//Пользователь
$dbpasswd ""//Пароль

$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd);
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
if (!
$dbcnx
{
  echo( 
"<P>В настоящий момент сервер базы данных не доступен, поэтому 
            корректное отображение страницы невозможно.</P>" 
);
  exit();
}
if (!@
mysql_select_db($dbname$dbcnx)) 
{
  echo( 
"<P>В настоящий момент база данных не доступна, поэтому
            корректное отображение страницы невозможно.</P>" 
);
  exit();
}
?>



проблема решилась, но малоли это не правильно :(

   
 
 автор: cheops   (10.06.2007 в 20:59)   письмо автору
 
   для: Panker   (10.06.2007 в 14:17)
 

Судя по всему используется MySQL версии выше или равной 4.1, поэтому необходимо явно сообщать с какой кодировкой вы собираетесь работать при помощи запроса
SET NAMES cp1251;

   
 
 автор: Panker   (10.06.2007 в 14:24)   письмо автору
 
   для: Panker   (10.06.2007 в 14:17)
 

плюс вот в обще не понятные ошибки да ещё и на русском =)



Ошибка обращения к БД Illegal mix of collations (cp1251_general_ci,IMPLICIT) and (latin1_swedish_ci,COERCIBLE) for operation 'like'

   
 
 автор: Panker   (10.06.2007 в 14:17)   письмо автору
 
 

запись вроде делаю обычно -

@mysql_query("INSERT INTO Theme VALUES ('', '$name')"); //Пишем сам домен


Но почемуто базу пишутся ???? знаки вопроса, когда сидел на PHP 4 было всё ок, сейчас поставил пхп 5 стали вот писаться знаки вопроса! :(

   

Сообщения:  [1-5] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования