FLASH as3 не может определить локальный php веб-адрес - PullRequest
1 голос
/ 31 июля 2011

Я пытаюсь получить данные mysql с помощью php (products.php) и вернуть данные в формате xml в ADobe flash as3; но я получаю следующую ошибку.

Error opening URL 'http://localhost/Flash/player/products.php'

Ошибка № 2044: необработанная ошибка ioError :. текст = Ошибка № 2032: Ошибка потока. URL: http://localhost/Flash/player/products.php на php_mysql3_as3_fla :: MainTimeline / frame1 ()

Пожалуйста, любые предложения или помощь, почему flash не идентифицирует адреса http://localhost/Flash/player/products.php. у меня установлен WAMP; который работает отлично, так как у меня есть много других проектов PHP, работающих здесь.

Заранее спасибо за помощь и предложение.

Ниже приведен мой php код

<?php
    $link = mysql_connect("localhost","root","");

mysql_select_db("test");

$query = "select * from products";
$results = mysql_query($query);


echo '<?xml version="1.0" encoding="utf-8" ?>'." \n";
echo"<GALLERY>\n";
$cnt=0;
while($line=mysql_fetch_assoc($results))
{
    echo '<IMAGE TITLE="'.$cnt.'">'.$line['product'].'</IMAGE>'." \n";
    $cnt++;
}

echo "</GALLERY>\n";

mysql_close($link);

?>

файл php находится по адресу c: \ wamp \ www \ Flash \ player \ products.php


ниже - мой флэш-код AS3

var myXML:XML;
var myLoader:URLLoader = new URLLoader();
myLoader.dataFormat = URLLoaderDataFormat.VARIABLES;

//myLoader.load(new URLRequest("c:\\wamp\\www\\Flash\\player\\products2.xml"));
myLoader.load(new URLRequest("http://localhost/Flash/player/products.php"));
myLoader.addEventListener(Event.COMPLETE, processXML);


function processXML(evt:Event):void {

myXML = new XML(evt.target.data);
for (var i:int = 0; i<myXML.*.length(); i++){
trace("My image number is " + (i+1) + ", it's title is " + myXML.IMAGE[i].@TITLE + " and it's URL is " + myXML.IMAGE[i]);
};
//trace("data: " + myLoader.data);;
}

Ответы [ 2 ]

3 голосов
/ 31 июля 2011

В чате выяснилось, что проблема была в брандмауэре.

Вот еще один связанный вопрос:

При тестировании фильма с помощью Flash IDE не удается загрузить файл с локального хоста

0 голосов
/ 31 июля 2011

Это может быть возможно:

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

  2. Файл php не существует.

Вам всегда нужно ловитьсобытия URLLoader:

dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);

, чтобы увидеть, что произошло!

Смотрите эти обработчики событий в действии: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/URLLoader.html#includeExamplesSummary

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...