|
 132 байт |
|
| Уже смешно спрашивать конечно..)) стока тем тут было.. но я все перечитал.. ничего не нашел...
.
<?php
include "config.php";
$ath=mysql_query("select*from authors where id_author=2;");
$author=mysql_fetch_array($ath);
echo $author['about'];
?>
|
mysql 5.0.21 (винда)
выводит ??®?? ¬¬???. значение about на русском. английский показывает нормально.... Записывал значение через MySQL Command Line Client. Да и там нормально отображается. иероглифы тока когда выходит в хтмл. пробовал все
даже в пхп.ини default_charset = "cp1251" :)
в хттпд.конф AddDefaultCharset windows-1251
эти команды перед выводом тоже пробовал:
mysql_query("set character_set_client='cp1251'");
set character_set_results='cp1251';
set collation_connection='cp1251_general_ci'
set names 'cp1251'
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
се равно иероглифы :( | |
|
|
|
|
|
|
|
для: noob
(28.05.2006 в 17:32)
| | Скорее всего кодировка в MySQL Command Line Client - 866, в обычно командной строке её меняют при помощи
Попробуйте добавить запись из PHP-скрипта - если кодировка будет выводится корректно, значит дело именно в этом.
http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=354 | |
|
|
|
|
|
|
|
для: cheops
(29.05.2006 в 00:34)
| | при добавлении записи (на русском) из пхп ошибка - Data too long for column 'about' at row 1 | |
|
|
|
|
|
|
|
для: noob
(29.05.2006 в 17:28)
| | А какой тип имеет столбец about и что туда помещается? | |
|
|
|
|
|
|
|
для: cheops
(29.05.2006 в 17:41)
| | вот как создавался: 'CREATE TABLE authors ( ....,about text,.....)' вот.. все.. просто текст. пытаюсь записать туда русское слово. | |
|
|
|
|
|
|
|
для: noob
(29.05.2006 в 18:37)
| | А откуда помещаются данные (из mysql.exe, из PHP-скрипта, из phpMyAdmin)? | |
|
|
|
|
|
|
|
для: cheops
(29.05.2006 в 18:45)
| | из пхп скрипта.. он выше написан....даже конфиг приложен..)) | |
|
|
|
|
|
|
|
для: noob
(29.05.2006 в 18:46)
| | Вместо прикреплённого конфигурационного файла, попробуйте использовать следующий
<?php
$dblocation = "localhost";
$dbname = "database";
$dbuser = "root";
$dbpasswd = "";
// Устанавливаем соединение с базой данных
$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd);
if (!$dbcnx) exit( "<P>В настоящий момент сервер базы данных не доступен, поэтому корректное отображение страницы невозможно.</P>" );
if (! @mysql_select_db($dbname,$dbcnx)) exit ( "<P>В настоящий момент база данных не доступна, поэтому корректное отображение страницы невозможно.</P>" );
// Определяем версию сервера
$query = "SELECT VERSION()";
$ver = mysql_query($query);
if(!$ver) exit("Ошибка при определении версии MySQL-сервера");
$version = mysql_result($ver, 0);
list($major, $minor) = explode(".", $version);
// Если версия выше 4.1 сообщаем серверу, что будем работать с
// кодировкой cp1251
$ver = $major.".".$minor;
if((float)$ver >= 4.1)
{
mysql_query("SET NAMES 'cp1251'");
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(29.05.2006 в 18:52)
| | я пробовал set names cp 1251... все равно ничего... при выводе иерогливы, при записи Data too long for column 'about' at row 1 | |
|
|
|
|
|
|
|
для: noob
(28.05.2006 в 17:32)
| | все равно при добавлении русского текста путем mysql_query(); пишет Data too long for column 'about' at row 1 ...даже с вашим конфигом. | |
|
|
|
|
|
|
|
для: noob
(30.05.2006 в 19:28)
| | Хм... страно, а это какая версия MySQL? Вообще не дожно возникать такой ошибки - дело происходит под Windows? | |
|
|
|
|
|
|
|
для: cheops
(30.05.2006 в 22:36)
| | | |
|
|
|
|
|
|
|
для: noob
(28.05.2006 в 17:32)
| | :-/ | |
|
|
|
|
|
|
|
для: noob
(01.06.2006 в 13:43)
| | Вижу ты пока еще тоже не знаешь что делать))) | |
|
|
|