Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Гостевая не публикует немецкие символы (http://www.flasher.ru/forum/showthread.php?t=139372)

alexpro 29.04.2010 12:25

Гостевая не публикует немецкие символы
 
гостевая книга не публикует умляуты ÄÖÜß ....

Внутри флеш-ролика следующие скрипты:
заполнение формы:
Код AS1/AS2:

// Set tab order
name_txt.tabIndex = 1;
email_txt.tabIndex = 2;
message_txt.tabIndex = 3;
 
// Button actions for "View Entries"
function view() {
        page_num = 1;
        gotoAndPlay("loading");
}
 
// Button actions for "Clear"
function clear() {
        name_txt.text = "";
        email_txt.text = "";
        message_txt.text = "";
}
 
// Button actions for "Submit"
function submit() {
        page_num = 1;
        name = name_txt.text;
        email = email_txt.text;
        message = message_txt.text;
        gotoAndPlay("sending");
}
// вставка
_root.main_mc.mc_conteiner._visible = false;
for(j = 0; j < myData.page_count; j++){
        if (j < 10)names = "0" + j;
        _root.main_mc["mc_page" + names]._visible = false;
}       
// вставка
// Stop the movie
stop();

Отправка:
Код AS1/AS2:

// Create random number
randNum = Math.random() * 1000000;
 
// Create our LoadVars Object
myData = new LoadVars();
// Call to scripts for data
myData.load("addentry.php?" + randNum + "&name=" + name + "&email=" + email + "&message=" + message, myData, "POST");
 
// When all of our data loads ...
myData.onLoad = function () {
        if (myData.result == "okay") {
                gotoAndPlay("loading");
        } else {
                gotoAndPlay("view");
        }               
}
 
// Stop movie
stop();

Загрузка:
Код AS1/AS2:

// Create random number
randNum = Math.random() * 1000000;
// моя вставка на xml
// количество выводимых данных
var maxrecord = 5;
if(!page_num){page_num = 1;}
myData = new LoadVars();
var str:TextField = new TextField();
var picts_xml = new XML();
picts_xml.ignoreWhite = true;
picts_xml.load("guestbook.xml?" + randNum);
//picts_xml.load("guestbook.xml");
picts_xml.onLoad = function(success) {
        if(success) {
                myData.result = "okay";
                str = "";
                rootNode = this.firstChild;
                numberOfItem = rootNode.childNodes.length;
                var page_count = Math.ceil(numberOfItem/ maxrecord);
                if (page_count > 10) {
                        trace("пересчет вывода сообщений");
                        maxrecord = Math.ceil(numberOfItem/10);
                        page_count = Math.ceil(numberOfItem/ maxrecord);
                }
                var min = page_num * maxrecord - maxrecord;
                var max = page_num * maxrecord;
                trace("min" + min + " max = " + max);
                for(t = 0; t < numberOfItem; t++){
                        if (min<=t && t<max){
                                str  += "<font color=\"#000000\">Name:</font> " + rootNode.childNodes[t].childNodes[0].childNodes[0].nodeValue + "\n";
                                str  += "<font color=\"#000000\">Email:</font><font color=\"#CCCCCC\"><u><A href=\"mailto: " + rootNode.childNodes[t].childNodes[1].childNodes[0].nodeValue + "\"> " + rootNode.childNodes[t].childNodes[1].childNodes[0].nodeValue +"</A></u></font><br>\n";
                                str  += "<font color=\"#000000\">Posted:</font>" + rootNode.childNodes[t].childNodes[2].childNodes[0].nodeValue + "\n";
                                str  += "<font color=\"#000000\">Message:</font> " + rootNode.childNodes[t].childNodes[3].childNodes[0].nodeValue + "\n\n";
                        }
                        myData.entries = str;
                }
                myData.page_count = page_count;
                gotoAndPlay("view");
        }else{
                trace("xml не загружен");
        }
        //trace(myData.entries);
}
picts_xml.removeNode();
// моя вставка на xml
// Stop movie
stop();

Просмотр того что отправили:
Код AS1/AS2:

 
// Populate text field
if (myData.result == "okay") {
        entries_txt.htmlText = myData.entries;
} else {
        entries_txt.htmlText = myData.errorMsg;
}
 
// моя вставка
_root.main_mc.mc_conteiner._visible = false;
for(var j = 0; j < myData.page_count; j++){
        if (j < 10)names="0"+j;
        var t = mc_conteiner.duplicateMovieClip("mc_page" + names, j);
        t._x = j * 20 + 212;
        t._y = 272;
        var format = new TextFormat();
        if(page_num == j + 1){
                format.color = '0x000000';
        }else{
                format.color = '0xFFFFFF';
        }
        t.mc_label.text = j + 1;
        t.mc_num = j + 1;
 
        t.mc_page.onRollOver = function (){
 
    };
 
        t.mc_page.onRollOut = function (){
 
    };
 
        t.mc_page.onRelease = function (){
                        page_num = this._parent.mc_num;
                        gotoAndPlay("loading");                       
    };
        t.mc_label.setTextFormat(format);
}
// моя вставка
 
// Stop movie
stop();

______________________________

Скрипт РНР:
PHP код:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">

<
head>
    <
title>Guestbook</title>
    <
script type="text/javascript" src="swfobject.js"></script>
</head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<META HTTP-EQUIV=Pragma CONTENT=no-cache>


<body marginheight="0" marginwidth="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF">
    <div id="flashcontent" >
        Aai iaiaoiaeii iaiieou Flash Player  aey i?iniio?a iaoaai naeoa. 
        <a href ="http://www.adobe.com/go/EN_US-H-GET-FLASH">Nea?aou iineaai?? aa?ne? Flash Player</a>
    </div>
    <script type="text/javascript">
        var so = new SWFObject("index_1.swf" +cacheHack(), "flashObject", "1000", "700", "8", "#FFFFFF");
        so.addParam("quality", "high");
        so.addParam("scale", "noscale");
        so.addParam("allowScriptAccess", "always");
        so.addParam("allowFullScreen", "true");
        
        so.addVariable("type", "audio");
                
        so.write("flashcontent");
        
        function cacheHack(){
            return "?t=" +new Date().getTime();
        }
    </script>    
    </form>
</body>

</html> 

не могу понять в чем дело?...
также вставил код во флеш:
Код AS1/AS2:

System.useCodePage = true

...для текстовых полей использовал кнопку Embed с соответствующими символами.

HELP! :wacko:

mooncar 29.04.2010 12:42

Для начала уберите вот это:
Код AS1/AS2:

System.useCodePage = true

Пересохраните guestbook.xml в кодировке UTF-8.

alexpro 30.04.2010 01:53

Убрал.
Пересохранил вроде. Но там при сохранениие нет выюбора кодировки а есть какойто Unicode normalization form...
А в самом XML выставлен юникод итак:
PHP код:

<?xml version="1.0" encoding="utf-8"?>
<timetable>
  
  <fields>
    <name>Ä</name>
    <email>email@email.de</email>
    <time>02/16/10 02:45 AM</time>
    <message>ßÜÖ</message>
  </fields>
</timetable>

Вобщем пока не помогло...

mooncar 30.04.2010 01:59

Цитата:

Сообщение от alexpro (Сообщение 904957)
Но там при сохранениие нет выюбора кодировки а есть какойто Unicode normalization form...
А в самом XML выставлен юникод итак:
<?xml version="1.0" encoding="utf-8"?>

encoding="utf-8" - это простая декларация. Хоть что там "выставьте", файл реально должен быть сохранен в UTF-8.
Открываете "Блокнотом" и пересохраняете.

Добавлено через 7 минут
PHP-шный скрипт тоже пересохраните в UTF-8.
Еще - помнится для умляутов набор Latin I нужно внедрять.

mooncar 30.04.2010 02:25

Вложений: 1
Попробуйте внедрить по схеме, аналогичной примеру (с техническим полем, куда внедрен шрифт и с программным назначением внедрения на целевое поле entries_txt.embedFonts = true).

alexpro 30.04.2010 03:29

Пересохранил через блокнот, попробовал повыставлять сообщения по схеме... вставил туда срочку...
Код AS1/AS2:

my_text.embedFonts = true;

Добавлено через 1 минуту
ничего не сработало ))))


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

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