Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 06.11.2013, 18:41
Godwarlock вне форума Посмотреть профиль Отправить личное сообщение для Godwarlock Найти все сообщения от Godwarlock
  № 1  
Ответить с цитированием
Godwarlock

Регистрация: Jan 2012
Сообщений: 836
По умолчанию Проблема с post

Код AS3:
var gid = '17157755';
var mess = 'site.ru';
 
var loader:URLLoader = new URLLoader();
var request:URLRequest=new URLRequest('http://localhost/test.php'); // адрес вашего скрипта
request.method=URLRequestMethod.POST;
 
var vars:URLVariables = new URLVariables();
vars['gid']=gid;
vars['mess']=mess;
 
request.data=vars;
loader.addEventListener(Event.COMPLETE, onComplete);
loader.load(request);
 
function onComplete(event:Event):void {
    // выводим полученные данные в поле result_tf
    result_tf.text=loader.data;
}
PHP код:
<?
// получаем параметры
$param1 $_POST['gid'];
$param2 $_POST['mess'];
 
// можно сделать что-то с полученными данными, например вывести
echo $param1;
echo 
$param2;
?>
Нашел на одном сайте пример использования post, но у меня почему-то в result_tf копируется весь php скрипт, вместе с кодом флеша и т.п, хотя должно 2 строчки показать с gid и mess. В чем проблема может быть?

Добавлено через 18 минут
Эту проблему решил. Помогите вывести логин и id пользователя

Код AS3:
import flash.events.MouseEvent;
import flash.net.URLRequest;
import flash.net.navigateToURL;
 
var id = 'id';
var login = 'login';
 
var loader:URLLoader = new URLLoader();
var request:URLRequest=new URLRequest('http://localhost/index.php'); // адрес вашего скрипта
request.method=URLRequestMethod.POST;
 
var vars:URLVariables = new URLVariables();
vars['login']=login;
vars['id']=id;
 
request.data=vars;
loader.addEventListener(Event.COMPLETE, onComplete);
loader.load(request);
 
function onComplete(event:Event):void {
    // выводим полученные данные в поле result_tf
    result_tf.text=loader.data;
}
<
PHP код:
?
} else {
  echo 
'Вы вошли на сайт!<br /> Ваш Логин: '.$userinfo["login"].'<br />Выш E-mail: '.$userinfo["email"].'<br /> <a href="/index.php?exit=y">Выход</a>';
}
$userinfo2$_POST['id'];
$userinfo $_POST['login'];
 
echo 
$userinfo;
echo 
$userinfo2;
?> 
Но что-то не выводится, так то в странице логин выводится и вроде всё норм, а вот во флеше по прежнему login и id и всё

Вот что выводит

<form method="post" action="/index.php">
Логин: <input type="text" size="30" name="login"><br />
Пароль: <input type="password" name="pass" size="30"><br />
<input type="submit" value="Войти">
</form>
<br /><a href="/register.php">Регистрация</a>
loginid<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="ru">
<head>
<title>test</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css" media="screen">
html, body { height:100%; background-color: #ffffff;}
body { margin:0; padding:0; overflow:hidden; }
#flashContent { width:100%; height:100%; }
</style>
</head>
<body>
<div id="flashContent">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="550" height="400" id="test" align="middle">
<param name="movie" value="test.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<param name="play" value="true" />


Последний раз редактировалось Godwarlock; 06.11.2013 в 19:03.
Старый 06.11.2013, 19:16
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 2  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
У вас вывод в виде html
Флеш же ждет ответа в виде url variables то есть пар ключ->значение
попробуйте в php скрипте снести все, и сделать просто
PHP код:
<?php
   
echo "someKey=Blablabla&otherVal=blabla2";
?>
и все нормально выведется во флеше
Не знаю откуда был взят этот пример, но он кривой

Старый 06.11.2013, 21:33
Godwarlock вне форума Посмотреть профиль Отправить личное сообщение для Godwarlock Найти все сообщения от Godwarlock
  № 3  
Ответить с цитированием
Godwarlock

Регистрация: Jan 2012
Сообщений: 836
Ничего не понимаю. Во флеше вывел someKey=Blablabla&otherVal=blabla2 токо без кавычек...А есть получше пример? Мне надо просто хотя бы вывести логин авторизованного юзера во флеш, но сколько не пытался, ничего не выходит(

Старый 06.11.2013, 22:07
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 4  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
так в чем проблема переделать скрипт, чтобы он выводил логин?
PHP код:
<?php
     $userinfo 
$_POST['login'];
     echo 
"login=$userinfo";
?>
Ну а во флеше прочитать это
Код AS3:
function onComplete(event:Event):void {
    var params:Object = event.target.data;
    var login:String = String(params['login']);
    trace("Логин:", login);
}


Последний раз редактировалось caseyryan; 07.11.2013 в 08:24. Причина: заменил на event
Старый 06.11.2013, 22:54
Godwarlock вне форума Посмотреть профиль Отправить личное сообщение для Godwarlock Найти все сообщения от Godwarlock
  № 5  
Ответить с цитированием
Godwarlock

Регистрация: Jan 2012
Сообщений: 836
Монтажный кадр 1, слой "Слой 1", кадр 1, строка 19 1120: Обращение несуществующего свойства e.

Старый 06.11.2013, 23:30
bav вне форума Посмотреть профиль Отправить личное сообщение для bav Найти все сообщения от bav
  № 6  
Ответить с цитированием
bav
 
Аватар для bav

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
Код AS3:
var params:Object = event.target.data;
вместо
Код AS3:
var params:Object = e.target.data;
Пожалуйста, внимательней относитесь к копипасту.

Старый 07.11.2013, 00:09
Godwarlock вне форума Посмотреть профиль Отправить личное сообщение для Godwarlock Найти все сообщения от Godwarlock
  № 7  
Ответить с цитированием
Godwarlock

Регистрация: Jan 2012
Сообщений: 836
ReferenceError: Error #1069: Не удалось найти свойство login в String; отсутствует значение по умолчанию.
at test_fla::MainTimeline/onComplete()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()

Код AS3:
import flash.events.MouseEvent;
import flash.net.URLRequest;
import flash.net.navigateToURL;
 
var login = 'login';
 
var loader:URLLoader = new URLLoader();
var request:URLRequest=new URLRequest('http://localhost/index.php'); // адрес вашего скрипта
request.method=URLRequestMethod.POST;
 
var vars:URLVariables = new URLVariables();
vars['login']=login;
 
request.data=vars;
loader.addEventListener(Event.COMPLETE, onComplete);
loader.load(request);
 
function onComplete(event:Event):void {
    var params:Object = event.target.data;
    var login:String = String(params['login']);
    trace("Логин:", login); }


Последний раз редактировалось Godwarlock; 07.11.2013 в 02:28.
Старый 07.11.2013, 08:26
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 8  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Нужно добавить лодеру тип данных variables, перед вызовом метода load
Код AS3:
loader.dataFormat	= flash.net.URLLoaderDataFormat.VARIABLES;

Старый 07.11.2013, 14:54
Godwarlock вне форума Посмотреть профиль Отправить личное сообщение для Godwarlock Найти все сообщения от Godwarlock
  № 9  
Ответить с цитированием
Godwarlock

Регистрация: Jan 2012
Сообщений: 836
Спасибо большое...вот только как мне теперь вывести результат в самом флеше?
Попытался добавить text_tf.text=loader.data; так он туда опять весь текст html фигачит, потому что флешка вставлена в php код, но не logina ничего не показывает...

Добавлено через 9 часов 27 минут
php понимает о ком речь, то есть он выводит имя пользователя, в flash нет. Вместо логина, он просто login выводит, будто login это значение переменной, хотя значением должно быть имя пользователя...

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:24.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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