• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flex und AIR > Flex programmieren

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 25-03-2010, 11:12   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2009
Beiträge: 16
mit PHP aus MySQL in XML zu Flex

Morgen Leute!

Ich hoffe ihr könnte mir helfen. Suche schon lange, habe auch schon mehrere Versionen gefunden, jedoch klappts nie so ganz wie ich es will.
Ich habe ne Seite mit Flex gebastelt, diese liegt auf meinem webspace auf funpic.de.
Dort hab ich eine mysql datenbank mit den logindaten meiner user. diese würde ich gerne per php auslesen und in einem xml abspeichern. dieses xml wieder an flex zurück geben und dort würd ich gerne mit dem xml ein bisschen spielen.

mein php code sieht folgender maßen aus:
PHP-Code:
<?php
define
"DATABASE_SERVER""localhost" );
define"DATABASE_USERNAME""user" );
define"DATABASE_PASSWORD""pass" );
define"DATABASE_NAME""datenbank" );

//connect to the database.
$mysql mysql_connect(DATABASE_SERVERDATABASE_USERNAMEDATABASE_PASSWORD);

mysql_select_dbDATABASE_NAME );

//return a list of all the users
$Query "SELECT * FROM tabelle";
$Result mysql_query$Query );

$Return "<users>";

while ( 
$User mysql_fetch_object$Result ) )
{
$Return .= "<user><vorname>".$User->vorname."</vorname><name>".$User->name."</name><email>".$User->email."</email><passwort>".$User->passwort."</passwort><nickname>".$User->nickname."</nickname><status>".$User->status."</status><publicflag>".$User->publicflag."</publicflag></user>";
}
$Return .= "</users>";
mysql_free_result$Result );
print(
$Return);
?>
in flex ruf ich das ganze mit nem HTTPservice auf:

Code:
<mx:HTTPService id="login_user" result="checkLogin(event)" method="POST" url="config/database.php" useProxy="false">
		<mx:request xmlns="">
		</mx:request>
	</mx:HTTPService>
dann wird checkLogin() gerufen:
dort möcht ich mir das ergebnis erstmal nur mit nem Alert ausgeben lassen, um zu checken, obs geklappt hat.

Code:
private function checkLogin(evt:ResultEvent):void
	{
		Alert.show(evt.result.toString());	
	}
aber so richtig will das alles nicht.

könnt ihr mit tipps geben?

ich danke schon im voraus

mfg klemmi
Klemmi19 ist offline   Mit Zitat antworten
Alt 25-03-2010, 14:55   #2 (permalink)
Neuer User
 
Registriert seit: Nov 2009
Beiträge: 10
also zunächst mal würde ich dem $Return noch sagen dass es ein XML ist:
$Return = "<?xml version='1.0' encoding='utf-8'?>";
$Return .= "<users>";

und dann übergeb ich den Rückgabewert immer mit echo($Return) anstelle von print($Return).

Und im HTTPService die url inklusive domain angeben (http://www.mydomain.de/config/database.php).

Grüße,
Kai

Geändert von as_noob (25-03-2010 um 14:57 Uhr)
as_noob ist offline   Mit Zitat antworten
Alt 26-03-2010, 11:59   #3 (permalink)
Neuer User
 
Registriert seit: Sep 2009
Beiträge: 16
cool danke... hat soweit mit deinen tipps geklappt.

jedoch bekomme ich in meinem alert nur [object][object] ausgegeben...
was mache ich da falsch?

habe sowas schonmal mit xMII transaktionen gemacht, die mir ein XML zurückgegeben haben, jedoch konnte ich dieses xml dort im alert einfach so anzeigen lassen, wie ich es hier gemacht habe.

wieso klappt dieses hier nicht?

danke schonmal
Klemmi19 ist offline   Mit Zitat antworten
Alt 26-03-2010, 12:12   #4 (permalink)
Neuer User
 
Registriert seit: Nov 2009
Beiträge: 10
naja du bekommst jetzt halt ein XML zurück und dass muss man dann auslesen.

in deinem fall:
Code:
private function checkLogin(evt:ResultEvent):void
{
        var users:ArrayCollection = evt.result.users;
        //fürn Vorname
	Alert.show(users[0].user.vorname);	
}
as_noob ist offline   Mit Zitat antworten
Alt 26-03-2010, 21:28   #5 (permalink)
Neuer User
 
Registriert seit: Sep 2009
Beiträge: 16
danke nochmal.

bekomme jedoch ein result vom typ "objectProxy" zurück.
also funktioniert das hier mit der ArrayCollection nicht.

ich meine mich zu erinnern, dass ich damals bei den xMII Transaktionen im httpService den resultFormat mit "e4x" angegeben habe. probiere ich das hier auch, bekomme ich diesen fehler: (ich habe mir noch ne funktion hinzugefügt, um httpService errors als alert zu kriegen)

HTML-Code:
"Error occured: Error #1088: Das Markup im Dokument nach dem Stammelement muss logisch aufgebaut sein."
es muss doch möglich sein, das xml, welches zurück kommt, einmal im ganzen im alert auszugeben, oder?

mache ich mit lokalen config xml's.
diese lade ich folgender weise ein:

Code:
xmlLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, onLoaded);
xmlLoader.load(new URLRequest(xmlUrl));

private function onLoaded(event:Event):void
	{
	    xmlData = new XML(event.target.data);
               result = new XMLList(xmlData);
 	}
hier kann ich mir die komplette XML einfach in einem alert mit

Code:
Alert.show(result.toString());
ausgeben lassen.

wahrscheinlich seh ich mal wieder den wald vor lauter bäumen nicht, aber es ist mein erstes "mal", dass ich etwas mit PHP mache und dieses als ziel meines httpServices benutze.

ich hoffe ihr könnt mir helfen


update:

ok....
habe grad nach ne kurzen pause nochmals getest. diesmal mit resultformat "xml" und siehe da: es hat einfach mit dem alert geklappt & konnte das ganze xml ausgeben. hat soweit alles funktioniert und alle daten wurde gelesen.

falls ich wieder fragen haben sollte (und ich bin wissbegierig ), dann melde ich mich..

danke nochmal!

Geändert von Klemmi19 (26-03-2010 um 22:46 Uhr)
Klemmi19 ist offline   Mit Zitat antworten
Alt 06-04-2010, 12:23   #6 (permalink)
Neuer User
 
Registriert seit: Jun 2009
Beiträge: 1
Fehlerhafte xml von php nach laden von einer in as2 erstellten swf

Hallo!

Hab derzeit ein echt heikles Problem! Wenn ich in meiner Flex-Applikation mir via PHP content als XML von einer Datenbank zurückgeben lasse, werden zunächst alle Inhalte richtig wiedergegeben. Lade ich aber ein externes swf, das in as2 erstellt wurde, in meine Applikation, werden danach die Umlaute und Sonderzeichen nicht mehr richtig dargestellt. Manchmal ist die xml sogar komplett fehlerhaft und es gibt Markup-Fehler. Es scheint als würde bei der encodierung in der PHP nach dem laden der swf etwas schieflaufen. Selbst unload() der swf behebt die störungen nicht mehr.

Vielleicht hat jemand schon mal ähnliche Erfahrungen gemacht und kann mir helfen.

Danke schon mal!
Dominik.F ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
flex, mysql, php, xml

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Air, Flex + externe Mysql Datenbank doyou3 Adobe AIR 3 29-10-2008 17:49
unicode polnisch flex php mysql Zottilo Flex allgemein 2 29-05-2008 13:59
flex + cairngorm + mysql mukraker Flex programmieren 0 11-03-2007 18:07
Flex und MySQL stefan_duerr Flex allgemein 2 01-09-2006 10:54
XML, PHP, MYSQL, Flash Remoting, Flex… 409coffeemaker Flash MX 2004 172 25-03-2004 12:49


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:10 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele