Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   С сервера приходят кракозябры вместо русских букв. (http://www.flasher.ru/forum/showthread.php?t=201110)

Chelovek 11.06.2013 15:36

С сервера приходят кракозябры вместо русских букв.
 
Здраствуйте.
Есть скрипт во флеш который отправляет переменную на сервер php.
Сервер по это переменной ищет в БД нужною строку (в которой есть русские буквы)
и отправляет её во флеш. Флеш отображает её в текстовом поле , но вместо русских букв там отображаются
кракозябры по типу: Ïðèâåò .
Английские же буквы отображаются нормально.
Помогите это исправить.
Заранее благодарен!

NikolyA 11.06.2013 16:14

а в базе они в UT-8? и получаешь их ты тоже в UTF-8?

Chelovek 11.06.2013 16:39

А как узнать ?
P.S. Я новичёкг

NikolyA 11.06.2013 17:03

ну для начала посмотри в базе у тебя символы русские или такие же как приходят, потом посмотри что приходит от сервера, если приходит русский, а во флеше корявость, добавь кириллицу во флеш

Chelovek 11.06.2013 17:04

из БД на сервер приходят нормальные буквы.
А как во флеш добавить кириллицу?

NikolyA 11.06.2013 17:09

показывай код который отвечает за посылку данных из базы во флеш

Chelovek 11.06.2013 17:11

PHP код:

<?php
$id 
$_POST["Id"];
if(
$id "1")
{
    
$hostname 'localhost';
    
$username 'root';
    
$password '';
 
    
$db mysql_connect($hostname$username$password) or die('connect to database failed');
    
mysql_set_charset('cp1251');
    
mysql_select_db('ml') or die('db not found');
    
$query 'SELECT * FROM ml WHERE id = ' $id;
    
$result mysql_query($query);
    while(
$row mysql_fetch_array($result))
    {
        
$Text $row['Text'];
        
$Password $row['Password'];
        
$returnString http_build_query($row);
    }
mysql_close();
}
?>


NikolyA 11.06.2013 17:34

вообщем давай так, в скрипт с которым ты делаешь отсылку данных в базу, напиши mysql_query("SET CHARACTER SET utf8");,а потом попробуй вывести данные своим скриптом

Chelovek 11.06.2013 17:59

PHP код:

<?php
$id 
$_POST["Id"];
if(
$id "1")
{
    
$hostname 'localhost';
    
$username 'root';
    
$password '';
 
    
$db mysql_connect($hostname$username$password) or die('connect to database failed');
    
mysql_set_charset('cp1251');
    
mysql_select_db('ml') or die('db not found');
    
//$query = 'SELECT * FROM ml WHERE id = ' . $id;
    
$result mysql_query("SET CHARACTER SET utf8");
    while(
$row mysql_fetch_array($result))
    {
        
$Text $row['Text'];
        
$Password $row['Password'];
        
$returnString http_build_query($row);
        echo 
$returnString;
        
$f fopen("textfile.txt""w");
        
fwrite($f"123456890-0987654321");
        
fclose($f);
    }
mysql_close();
}
?>

если сделать так то цикл while не срабатывает.

Добавлено через 15 минут
Получилось !!!
Я вместо
PHP код:

mysql_set_charset('cp1251'); 

поставил
PHP код:

mysql_set_charset('utf8'); 

И всё стало нормально.

NikolyA 11.06.2013 18:41

ну то что я и говорил, надо utf-8 использовать и все будет хорошо, а так же на свой страх и риск можно в базу зайти и поменять sql запросом все в utf-8


Часовой пояс GMT +4, время: 09:34.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.