Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   flash-->php-->flash (http://www.flasher.ru/forum/showthread.php?t=50239)

sarcofag 14.10.2003 19:59

flash-->php-->flash
 
Вложений: 1
Имеется:флешка(см файл) в которой есть три кадра.
код в первом кадре:
stop();
System.useCodepage = true;
//var score;
//var gameSet=77;
//var questionNum=99;
userInfo = new LoadVars();
userInfo.load("userinfo.php");

userInfo.onLoad = initUserInfo;

function initUserInfo() {
//
score=userInfo.score;
userName=userInfo.userName;
falseNum=userInfo.falseNum;//
bookArray = userInfo.bookCondition.split(":");
//
_root.welcome=falseNum+"ggg"+score;
trace(score);
trace(falseNum);
//_root.play();

}

мы считываем даные из userinfo.php,
во втором:
-проделываем с ними незначительные манипуляции(инкримент)
-на пустой символ (контроллер) вешаем код передающий в gameplay.php
переменную number
код на контроллере:
onClipEvent (load) {

var currentQ = new LoadVars();

currentQ.number = _root.gameSet+"_"+_root.questionNum;
trace("îáúåêò_number");
trace(currentQ.number);

currentQ.send("gameplay.php","_self","POST");//
}



в третьем:
stop();

scoreSend = new LoadVars();
scoreSend.score=score;
scoreSend.falseNum=falseNum;
scoreSend.userName=userName;


scoreSend.send("gameplay.php","_self","POST");//


пересылаем данные считанные в первом кадре в gameplay.php.

проблема в том,что сервер видит приходящие к нему данные через раз:
иногда видит только number -- иногда только данные пересылаемые из
последнего кадра. найти причину не удается -- в частности изменения
могут происходить при добавлении строчки trace(somthing);
после удаления которой результат не восстанавливается.

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


есть ли какие нибудь соображения от чего такое происходит?
(все файлы прилагаются)

спасибо.

Igor Ageyev 15.10.2003 11:23

Особо анализировать твой труд у меня времени не было...
 
Но на вскидку хочу заметить:

1) Во 2м кадре ты пишешь, что мол считываем данные из userinfo.php , а на деле обращаешься к gameplay.php

2) Не совсем понятно как у тебя происходит проверка факта загрузки.

Что касается php:

1) Лучше переменные получать через массив $HTTP_POST_VARS (если конечно ты не уверен относительно директивы register_globals в файле php.ini)

2) Я не вижу логики в этом начале файла gameplay.php, куда это все отправляется:
echo "<br>1.&nbsp;score=".$score;
echo "<br>2.&nbsp;falseNum=".$falseNum;
echo "<br>3.&nbsp;number=".$number;
echo "<br>4.&nbsp;userName=".$userName;


3) Ну и наконец самое смешное - зачем практически весь код в php заключен в многострочный комментарий? :)

Igor Ageyev 15.10.2003 11:37

Извиняюсь за 1й пункт (не особо удобно ты комментарии написал).

Но всего остального уже достаточно, чтобы ничего не работало.

p.s. А чего пхпэшного в файле index_SEND?

sarcofag 16.10.2003 18:04

спасибо за ответ. месс на ящик об ответах мне чего-то перестал приходить, я уж расстроился, что тема сдохла, заглянул напрямую на всякий случай...

1.файлы которые я прислал -- это тест, т.е. на самом деле это
игра-викторина. когда стало глючить общение с сервером я сделал тест, чтобы проверить самую простую вещь -- доходят ли переменные. поэтому куча всего находиться в комментах.

2. правильно я понял, что причина в этом:

>>>>>>>
1) Лучше переменные получать через массив $HTTP_POST_VARS (если конечно ты не уверен относительно директивы register_globals в файле php.ini)
>>>>>>>

sarcofag 16.10.2003 19:08

1. register_globals=on
2. ладно бы _ничего_ не работало -- но работает отсылка
либо одним объектом, либо другим, -- если первый закомментрировать. Вот что плохо и непонятно.

Чего с этим делать!!?

спасибо

Igor Ageyev 16.10.2003 21:53

Сложно разобраться не имея перед глазами исходника (причем без лишних комментариев)

Возможно причина в конфликте двух методов .send (к одному и тому же php скрипту).
Из представленного тобой кода, можна сделать вывод, что они запускаются практически одновременно.

Попробуй все таки проверять факт загрузки и отсылки на уровне AS.

sarcofag 23.10.2003 05:20

спасибо.
так или иначе -- а заработало


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

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