Показать сообщение отдельно
  #10 (permalink)  
Старый 04.05.2009, 23:24
Интересующийся
Отправить личное сообщение для SDone Посмотреть профиль Найти все сообщения от SDone
 
Регистрация: 24.02.2009
Сообщений: 17

Слушай проблемы могут быть из за:
1 Mysql не правильно кодирует. для того что бы были русские символы надо:
$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpass);
if (!$dbcnx)
{
echo "<br> Сервер не доступен!";
}
if (!@mysql_select_db($dbname, $dbcnx))
{
echo "<br> нет таблици!";
}
mysql_query("SET NAMES cp1251"); // вот это говорит что нам нуна наша русская кодировка.

2 скрипт ява отправляет на пхп в utf кодировке.
Мы решаем так:

2.1 принимаем данные от ява так: $name = iconv("UTF-8","WINDOWS-1251",$_POST[name]);
теперь name моно хоть куда. допустим:
$query = mysql_query("INSERT INTO ".$prifiks."_comments VALUES ('','$_POST[id]','$content',NOW(),'1','','$name','','$_POST[email]')");

Видишь не везде я и применил iconv. Применяй только где будут русские символы.

2.2 теперь если ты хочешь отправить принятые данные в яву используй след:
function rnt ($str)
{
$str = htmlentities($str,0,"windows-1251");
$trans_tbl = get_html_translation_table (HTML_ENTITIES);
$trans_tbl = array_flip ($trans_tbl);
$str = strtr ($str, $trans_tbl);
return $str;
}
Просто впихни echo rnt ($name); и ответит по русски тебе скрипт.

Я делаю cms систему ну точнее уже заканчиваю. coldphp.ru там демка. ну так вот все через ajax - ну почти.
Я пользуюсь этими методами что описал выше. пока все пашет.

Последний раз редактировалось SDone, 04.05.2009 в 23:26. Причина: структура касая :)
Ответить с цитированием