ХЕЛП! Не работает convert_cyr_string :о(

hantenbain

Новичок
ХЕЛП! Не работает convert_cyr_string :о(

Уважаемые коллеги, помогите советом!

Имеется скрипт, который выводит данные из MS SQL

На тестовой машине все работает отлично, скопировал скрипты на рабочий сервер, вместо русских букв козя-бозя :о((

Преобразую кодировку так
$u_currency=convert_cyr_string($u_currency,'a','w');
Нефига не работает. И тестовый и рабочий сервер обращаються к одной и тойже БД.

Версия Apache 1.3.31
PHP 4.4.2 Все работает под Виндой
 
А как? Без перекодировки у меня русские буквы не выводились, сделал convert_cyr_string, все заработало.
Почему же на другом серваке не работает :о((
 
нет, почему ты convert_cyr_string применяешь именно так, а не иначе?
 
то есть, по-твоему, надо быть гуру в PHP, чтобы применять функцию перекодировки осмысленно - то есть, правильно указывать кодировку?
или, может быть, ты полагаешь, что гуру пхп своими гурскими способностями знают, в какой кодировке тебе выдаёт данные база?
 
Если на тестовом сервере это работает, то я полагаю, что база выдает в x-cp866
Вопрос: почему не работает на другом сервере, если и база и нстройки ODBC дни и теже?
 
стоп.
что не работает на тестовом сервере?
как ты это узнал?
как проверил?
 
На тестовом сервере русские буквы из базы выводяться корректно, на рабочем абракадабра
 
если я правильно понял твой вопрос, мы, сидя здесь, должны отгадать - "почему не работает на другом сервере"?
Так?
 
Я не прошу отгадывать, если сталкивались с подобной ситуацией, подскажите, если не знаете, нечего язвить.
 
а ты считаешь, что данную проблему можно решить только если раньше с ней сталкивался?
А тебе не приходило в голову совершить какие-нибудь телодвижения руками?
проверить свои логические выводы?
 
Перепробовал все варианты параметров convert_cyr_string, корректного отображения букв, как небыло так и нет :о(( Ничего более в голову не приходит :о((
 
отлично.
а когда ты пробовал варианты - результат менялся?
 
Менялся. Сейчас убрал вообще convert_cyr_string, и все стало отображаться нормально..... Вопрос конечно остался, но все равно спасибо за поддержку :о)
 
прежде, чем даже дотрагиваться до convert_cyr_string, тебе сначала нужно ОПРЕДЕЛИТЬ КОДИРОВКУ!

Не методом тыка "пробовать варианты", а ОСМЫСЛЕННО параметры задавать!

сначала узнай, в какой кодировке тебевыдаёт данные база.
И ТОЛЬКО ПОТОМ заботься об их перекодировке.

Для такого простого порядка действий не надо быть гуру в пхп. Надо всего лишь немного думать надо тем, что делаешь.
 
=) ну в общем и целом, фанат серией осмысленных итераций тебя подводил к мысли, что есть такое понятие как CHARSET и COLLATION в Microsoft SQL Server, и было бы не плохо если бы ты САМ взял MSDN и разобрался таки как и где это устанавливается на сервере базы данных

судя по всему "на тестовом" сервере у тебя как раз криво настроена кодировка в которой требуется отдавать данные от сервера БД в php-клиента, а на "рабочем" у кого то руки как надо росли =)
 
Хз первое время я копался в regedit в стороне HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
отожсдествлял dos c win-1251...теперь юзаю convert_cyr_string и все нормально
 
Сверху