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

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

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

Регистрация: Jun 2010
Сообщений: 11
По умолчанию Flash->PHP->MySQL->PHP->XML->FLash

Я работал с пхп, но я не очень понимаю логику этого процесса. Покопался в гугле, но либо плохо копался, либо туго соображаю , таки не понял ничего. В FAQе тоже почитал но там всё очень кратко.

С помощью вот этого
Код AS3:
	public function formSubmit(e:Event) {
		var variable:URLVariables=new URLVariables();
		  variable.author1=this.inputField.text;
		var urlreq:URLRequest=new URLRequest();
		  urlreq.url="makeXML.php";
		  urlreq.data=variable;
		  urlreq.method=URLRequestMethod.POST;
		var loader:URLLoader=new URLLoader(urlreq);
		  loader.addEventListener(Event.COMPLETE, onComplete);
		  loader.dataFormat = URLLoaderDataFormat.VARIABLES;
		  loader.load(urlreq);			
	}
по идее должны передаваться переменные. Тут я просто имя автора передал , нажимаем на кнопку и вызывается эта функция .

Дальше в makeXML.php ловим переменную и делаем запрос
PHP код:
$authorName=$_POST['author1'];
if(
$authorName) {
        
$query="update book set author1='$authorName' where id=1";
                
$result=mysql_query($query,$link) or die (mysql_error());

Потом в этом же файле далее делаем SELECT и выбираем к примеру данные о книге в которую мы внесли изменения. Записываем это в XML файл и в onCopmlete перечитываем XML файл.
Проблема в первой части , ничего в БД не меняется. Мне нужно при нажатии на кнопку перейти на makeXML.php? Или оно само както?


Последний раз редактировалось Blendor; 10.06.2010 в 07:35.
Старый 09.06.2010, 21:05
membrilius вне форума Посмотреть профиль Отправить личное сообщение для membrilius Найти все сообщения от membrilius
  № 2  
Ответить с цитированием
membrilius
 
Аватар для membrilius

Регистрация: Aug 2008
Сообщений: 258
а у вас конект к базе осуществятся, база выбирается? ..

Код:
update book set author1=$authorName where id=1
Вы обновляете автора только первой книги всегда? )

и тут скорее всего вылезает ошибка надо кавычки ставить.

Код:
UPDATE book SET author1='".$authorName."' WHERE id=1

Старый 09.06.2010, 23:56
Blendor вне форума Посмотреть профиль Отправить личное сообщение для Blendor Найти все сообщения от Blendor
  № 3  
Ответить с цитированием
Blendor

Регистрация: Jun 2010
Сообщений: 11
Цитата:
Сообщение от membrilius Посмотреть сообщение
а у вас конект к базе осуществятся, база выбирается? ..
Да , вот пхп файл и *.as файл.
Если не трудно объясните на пальцах как осуществить запрос и получить ответ без перехода на другую страницу , и правильно ли я всё пытаюсь делать?
Вложения
Тип файла: rar Pack.rar (1.4 Кб, 36 просмотров)


Последний раз редактировалось Blendor; 10.06.2010 в 07:34.
Старый 10.06.2010, 02:09
membrilius вне форума Посмотреть профиль Отправить личное сообщение для membrilius Найти все сообщения от membrilius
  № 4  
Ответить с цитированием
membrilius
 
Аватар для membrilius

Регистрация: Aug 2008
Сообщений: 258
с AS3.0 ничего советовать не буду, не очень дружу.

на сколько я понял, Вам нужно из флешки отправить имя автора в PHP скрипт, который его зачем-то обновит и выдаст информацию об обновлённой книге, во флеху, в виде XML.

Для начала Вам нужно ещё отправлять ID книги которой вы хотите что-то обновить. Так как сейчас у Вас стоит фиксировано "id=1"

Вообщем в PHP:

делаем коннект к БД,
выбираем базу (можно базу указывать четвертым параметром в mysql_connect, т.е без mysql_select_db обойтись),
принимаем "$_POST['author1']"
принимает ID книги "$_POST['id_book']" (например),
обновляем,
делам выборку по тому что мы обновили (так же по ID)
Дальше Вы создаете файл XML, это не нужно! Просто формируете XML (с заголовком и т.д) и отправляете во флеш (просто печать echo).
Флеха его ловит и уже обрабатывайте.

И не забываем про кавычки в запросах.

Если что-то не работает значит PHP выдаёт ошибку.. в свой Флешке Вы её не увидите, для проверки можно просто написать форму HTML и отправлять формой и смотреть, что за ошибка и где.

Добавлено через 3 минуты
хотя можно и без формы.. просто задавайте прямо значения для $_POST['@#$'] и запускайте скрипт.

Старый 10.06.2010, 09:31
Blendor вне форума Посмотреть профиль Отправить личное сообщение для Blendor Найти все сообщения от Blendor
  № 5  
Ответить с цитированием
Blendor

Регистрация: Jun 2010
Сообщений: 11
С пхп скриптом всё нормально, сам по себе он всё правильно делает, но он видимо либо не запускается, либо не получает данные из флэшки . Но вроде код у меня как и в других примерах

И если я добавляю в обработчик loadеr'а
Код AS3:
loader.addEventListener(Event.COMPLETE, onComplete);
 
public function onComplete(e:Event) {
		var variables:URLVariables = new URLVariables( e.target.data );
		trace("Complete");
		this.textBox.text=e.target.data.authorName;
	}
А в пхп файле
PHP код:
echo($authorName); 
То мне выдаёт
Код:
TypeError: Error #2007: Параметр text не должен быть равен нулю.
	at flash.text::TextField/set text()
	at MyTextBox/onComplete()
	at flash.events::EventDispatcher/dispatchEventFunction()
	at flash.events::EventDispatcher/dispatchEvent()
	at flash.net::URLLoader/onComplete()


Последний раз редактировалось Blendor; 10.06.2010 в 10:53.
Старый 10.06.2010, 11:39
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 6  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Вы когда закончите, скажите, где лежит скрипт обновления базы

Старый 10.06.2010, 18:13
Blendor вне форума Посмотреть профиль Отправить личное сообщение для Blendor Найти все сообщения от Blendor
  № 7  
Ответить с цитированием
Blendor

Регистрация: Jun 2010
Сообщений: 11
У меня всё в одной папке лежит, пути все верные.

Старый 10.06.2010, 18:34
-De- вне форума Посмотреть профиль Отправить личное сообщение для -De- Найти все сообщения от -De-
  № 8  
Ответить с цитированием
-De-
 
Аватар для -De-

блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
Отправить сообщение для -De- с помощью ICQ Отправить сообщение для -De- с помощью Skype™
URL дайте! Я снесу к аллахам sql иньекцией вам базу и может ещё что-нить всё поправлю.
По теме - похоже последний скрипт работал бы лучше, если убрать .authorName; =)
Откуда он там и как должен работать - загадка.

Старый 10.06.2010, 18:49
Blendor вне форума Посмотреть профиль Отправить личное сообщение для Blendor Найти все сообщения от Blendor
  № 9  
Ответить с цитированием
Blendor

Регистрация: Jun 2010
Сообщений: 11
Цитата:
Сообщение от -De- Посмотреть сообщение
По теме - похоже последний скрипт работал бы лучше, если убрать .authorName; =)
Откуда он там и как должен работать - загадка.
Это я пробовал по разному писать, когда сохранил в таком виде я и кинул код сюда. Но с этим или просто
Код AS3:
this.textBox.text=variables.data;
всё равно ничего не меняется.

Я где-то туплю но я понятия не имею где

Старый 10.06.2010, 19:08
-De- вне форума Посмотреть профиль Отправить личное сообщение для -De- Найти все сообщения от -De-
  № 10  
Ответить с цитированием
-De-
 
Аватар для -De-

блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
Отправить сообщение для -De- с помощью ICQ Отправить сообщение для -De- с помощью Skype™
Как variables.data должны понять, что у вас есть что-то с именем authorName?
Я имел в виду
Код AS3:
this.textBox.text=e.target.data
Это будет то, что отдает пхп.
Не путайте variables и e.target.data

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

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

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


 


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


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