Hallo miteinander,
Ich hab ein kleines Problem in Flash. Dort versuch ich mittels Actionsscript 3 Daten aus einer Datenbank auszulesen und anzuzeigen (Ziel ist ein Menü, dass sich die Daten aus einer Tabelle holt). Es klappt alles wunderbar, nur bei der Ausgabe erscheint kein Text im Flash Player. Fehlermeldungen gibt es aber keine, die Daten können geladen werden.
Ich hab schon "vieles" ausprobiert, komme aber zu keinem Ergebnis
Gibt es jemanden der eine Idee hat woran das liegen könnte?
Vielen Dank;
Der Actionscript Code:
Die Daten werden geladen (readData) in einem Array gespeichert (flashData_arr) und sollten dann provisorisch in einem auf der Bühne platzierten Textfeld ausgegeben werden ausgabe_txt.
Ausgabe PHP Code::
PHP Code:
Ich hab noch einen Screenshot des Actionsscript Codes zur besseren Übersicht angehängt.
Ich hab ein kleines Problem in Flash. Dort versuch ich mittels Actionsscript 3 Daten aus einer Datenbank auszulesen und anzuzeigen (Ziel ist ein Menü, dass sich die Daten aus einer Tabelle holt). Es klappt alles wunderbar, nur bei der Ausgabe erscheint kein Text im Flash Player. Fehlermeldungen gibt es aber keine, die Daten können geladen werden.
Ich hab schon "vieles" ausprobiert, komme aber zu keinem Ergebnis

Vielen Dank;
Der Actionscript Code:
Code:
function readData():void {
var myLoader:URLLoader = new URLLoader();
var myRequest:URLRequest = new URLRequest("/php/mainmenu.php");
myLoader.dataFormat=URLLoaderDataFormat.VARIABLES;
myLoader.load(myRequest);
myLoader.addEventListener(Event.COMPLETE,completeHandler);
myLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR,securityErrorHandler);
myLoader.addEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
}
function completeHandler(e:Event):void {
var anzData:uint=uint(e.target.data.counter);
for (var i:uint = 0; i<anzData; i++) {
var id:uint=e.target.data["id"+i];
var menutitle:String = e.target.data["menutitle"+i];
var menutitle_alt:String = e.target.data["menutitle_alt"+i];
var menutype:String = e.target.data["menutype"+i];
var menutarget:uint = e.target.data["menutarget"+i];
var menuorder:uint = e.target.data["menuorder"+i];
flashData_arr.push({id:id,menutitle:menutitle, menutitle_alt:menutitle_alt, menutype:menutype, menutarget:menutarget, menuorder:menuorder});
}
renderData();
}
function securityErrorHandler(e:SecurityErrorEvent):void {
status_txt.text="Fehler beim Übertragen der Daten";
}
function ioErrorHandler(e:IOErrorEvent):void {
status_txt.text="Fehler beim Übertragen der Daten";
}
function renderData():void {
ausgabe_txt.htmlText="";
var outputStr:String="";
for (var i:uint = 0; i<flashData_arr.length; i++) {
outputStr+=flashData_arr[i].menutitle;
outputStr+=flashData_arr[i].menutitle_alt;
outputStr+=flashData_arr[i].menutype;
outputStr+=flashData_arr[i].menutarget;
}
ausgabe_txt.htmlText=outputStr;
}
var flashData_arr:Array = new Array();
readData();
Die Daten werden geladen (readData) in einem Array gespeichert (flashData_arr) und sollten dann provisorisch in einem auf der Bühne platzierten Textfeld ausgegeben werden ausgabe_txt.
Ausgabe PHP Code::
Code:
id0=1&menutitle0=Filme&menutitle_alt0=films&menutype0=mainmenu&menutarget0=1&menuorder0=1&counter=1
PHP Code:
PHP:
<?php
include 'inc/dbdata.inc.php';
function encode($str) {
$str = urlencode($str);
return $str;
}
$conn = mysql_connect($server,$benutzer,$kennwort);
$db = "affilm_db";
$db_selected = mysql_select_db($db, $conn);
if (!db_selected){
die("Datenbank konnte nicht ausgewählt werden.");
}
if (!conn) {
die("Verbindung konnte nicht hergestellt werden.");
}
$table = "menu";
$sql_query = "SELECT * FROM $table";
$result=mysql_query($sql_query, $conn);
if(!result) {
die("Ungültige Abfrage");
}
$counter = 0;
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){
$id = encode($row["id"]);
$menutitle = encode($row["menutitle"]);
$menutitle_alt = encode($row["menutitle_alt"]);
$menutype = encode($row["menutype"]);
$menutarget = encode($row["menutarget"]);
$menuorder = encode($row["menuorder"]);
// Output
if($counter == 0) {
$output = "id".$counter."=".$id;
} else {
$output.= '&id'.$counter.'='.$id;
}
$output.= '&menutitle'.$counter.'='."$menutitle";
$output.= '&menutitle_alt'.$counter.'='."$menutitle_alt";
$output.= '&menutype'.$counter.'='."$menutype";
$output.= '&menutarget'.$counter.'='."$menutarget";
$output.= '&menuorder'.$counter.'='."$menuorder";
$counter++;
}
$output.="&counter="."$counter";
echo "$output";
?>
Ich hab noch einen Screenshot des Actionsscript Codes zur besseren Übersicht angehängt.