$файл_языка==казахский;версия сайта на казахском языке
#1
Отправлено 28.05.2007, 23:10:59
В какой кодировке нужно сохранять файл? и какая кодировка должна быть у браузера, чтобы он корректно отображал символы казахского алфавита?
и еще будет ли зависеть вывод символов от кодировки сервера?
Буду признателен, если вы поделитесь опытом в этом деле...
#2
Отправлено 29.05.2007, 00:09:50
Скидываю коды казахских символов.
нижний регистр
#1241; ? #1187; #1171; #1199; #1201; #1179;
Верхний регистр
#1240; ? #1186; #1170; #1198; #1200; #1178;
перед каждой решеткой "#" нужно поставить "&" (смотри html код примера)
никаких более манипуляций с кодировкой не совершали, все пришло само собой...
если что то непонятно отпишите...
#3
Отправлено 29.05.2007, 00:26:57
2. Да, может, если сисадмин сервера такой дурак. Но впрочем и с этим можно бороться прописывая директиву в .htacces
ЗЫ кодировки всех файлов где имеются сообщения не английской латиницей должны быть в UTF-8. Перекодировку не рекомендую делать в Блокноте - он добавляет три байта в начале файла.
Сообщение отредактировал westman: 29.05.2007, 00:28:43
#5
Отправлено 29.05.2007, 15:03:27
такой вариант у меня тоже был, но вот реализация...единственное что пришло в голову это в МС Ворде использовать "Найти и заменить"мы обошлись подменой казахских символов на хз как это называется... короче смотрите здесь пример http://www.provko.kz...6/05/26/212.htm
вы перед каждым добавлением статьи заменяете специфические символы на их коды? или у вас есть процедура, которая это делает?
#6
Отправлено 29.05.2007, 15:14:30
т.е. файл языка с, например, таким содержанием:ЗЫ кодировки всех файлов где имеются сообщения не английской латиницей должны быть в UTF-8. Перекодировку не рекомендую делать в Блокноте - он добавляет три байта в начале файла.
$name='Қайрат';не должен сохраняться в utf-8?
#7
Отправлено 29.05.2007, 16:13:57
Ээ... этааа, уважаемый... где вы такое у меня прочитали?т.е. файл языка с, например, таким содержанием:
ЗЫ кодировки всех файлов где имеются сообщения не английской латиницей должны быть в UTF-8. Перекодировку не рекомендую делать в Блокноте - он добавляет три байта в начале файла.$name='Қайрат';не должен сохраняться в utf-8?
Напротив, всё надо в UTF-8 сохранять! Речь шла о том, что майкрософтовский Блокнот добавляет три байта признака UTF-8 в начале файла. Т.е. в начале PHP файла перед символом <? php ... будут эти символы, что приведет к ошибке парсера. Пользуйтесь, например, бесплатным Aditor'ом, чтобы удалить эти символы, или делайте в нормальном текстовом юникодном редакторе, коих сыскать в Сети не проблема.
Сообщение отредактировал westman: 29.05.2007, 16:26:40
#8
Отправлено 29.05.2007, 21:00:08
сорри, я уже сам понял, что затупил...просто меня смутило "не английской латиницей"Ээ... этааа, уважаемый... где вы такое у меня прочитали?
Напротив, всё надо в UTF-8 сохранять! Речь шла о том, что майкрософтовский Блокнот добавляет три байта признака UTF-8 в начале файла. Т.е. в начале PHP файла перед символом <? php ... будут эти символы, что приведет к ошибке парсера. Пользуйтесь, например, бесплатным Aditor'ом, чтобы удалить эти символы, или делайте в нормальном текстовом юникодном редакторе, коих сыскать в Сети не проблема.
попробовал...получилось с первого раза...спасибо за помощь
Сообщение отредактировал and1: 29.05.2007, 21:01:15
#9
Отправлено 30.05.2007, 00:14:27
Чтобы не было свистоплясок с кодировками, все языковые варианты надо выдавать в UTF-8.
С UTF-8 имеются некоторые засады:
1. Объем файлов/базы данных с кириллицей увеличивается (кирилическую букву кодируют двумя байтами)
2. Функция обрезания строк в PHP работает побайтно т.е. если обрезание придется между старшим и младшими байтами кодовой группы, получится нераспознаваемый в UTF символ, обычно обозначаемый в браузерах знаком вопроса в ромбике. Для корректного отображения обрезов придется писать свою функцию, самое простое - резать по четным байтам, но это не срабатывает, если на границу обреза приходится символ в один байт (английские буквы, знаки препинания и т.п.), или три (денежные знаки, иероглифы). Эффективнее - использовать список UTF представлений.
#13
Отправлено 15.11.2007, 01:50:15
Есть модуль mbstring который по моему опыту в большинстве случаев идёт "в пакете" - он даёт возможность работы с многобайтными кодировками. Например "обрезание" может выглядеть так2. Функция обрезания строк в PHP работает побайтно ...
$str = mb_substr("Здравствуй мир",0,5,'UTF-8'); // Здрав
#15
Отправлено 19.11.2007, 09:41:55
Работаю в Dreamweaver 8. В нем есть функция вставки FLASH кнопки. Сначала были проблемы с надписью в них на русском языке, но это решилось русификацией Dreamweaver. А вот казахские буквы туда вставить так и не удается.
На самих страницах просто текст пишется и выводится без проблем.
#16
Отправлено 08.01.2008, 22:10:12
у меня такая же задача, как и у топикстартера.
Используется CMS e107.
Кодировка везде стоит UTF-8, и в РНР, и в базе.
проблемы такие:
первое - при печати в админке на казахском языке казахские символы отображались квадратиками. Поборол правкой в CSS шрифтов на Ариал. Но остались такие проблемы:
1. при сохранении информации в админке она неправильно передает в базу каз. символы, в итоге получаются вопросики. (если править напрямую через phpMyAdmin - все в порядке.
2. Если поправить через phpMyAdmin - в результате на сайте каз. буквы отображаются не ариалом, а каким-то шрифтом с засечками. Это на компе, где в системе установлен каз. азык. На компе, на котором он не установлен - вместо каз. символов - квадратики. Причем на этом компе другие сайты на каз. языке отображаются нормально.
Помогите, пожалуйста, решить эти проблемы, а то заманался уже!!!!!
#17
Отправлено 10.01.2008, 17:42:21
та же проблема только cms DLE и правка phpmyadmin не спасает никак
вот пример http://www.bilim.kz/...php?do=feedback панелька языков статичная там К с хвостиком а например в голосовании вопросы..
ЗЫЖ 2 Twilight forum.site.kz ?
Количество пользователей, читающих эту тему: 0
пользователей: 0, неизвестных прохожих: 0, скрытых пользователей: 0