2010-04-23 4 views
1

J'ai fait une requête en PHP, et j'essaie de renvoyer les résultats dans Flash via AS3, mais cela génère cette erreur ...Problème avec PHP/AS3 - Afficher les résultats de la requête PHP de nouveau en flash via AS3

Error: Error #2101: The String passed to URLVariables.decode() must be a URL-encoded query string containing name/value pairs. at Error$/throwError() at flash.net::URLVariables/decode() at flash.net::URLVariables() at flash.net::URLLoader/onComplete()

Voici la partie pertinente du code PHP et AS3, y compris la requête. La variable Flash rssAdd est passée au PHP qui l'utilise dans la requête PHP en conséquence.

$url = $_POST['rssAdd']; 
$query= SELECT title 
FROM Feed 
WHERE category = (SELECT category 
FROM Feed 
WHERE url =$url) AND url!=$url; 
$result = mysql_query($query); 
echo $query; 

Voici le code AS3 que j'ai fait jusqu'à présent.

function recommendation(){ 

var request:URLRequest = new URLRequest("url"); 
request.method = URLRequestMethod.POST 

var recVars:URLVariables = new URLVariables(); 

recVars.rssAdd=rssAdd; 
request.data = recVars 

var loader:URLLoader = new URLLoader(request); 
loader.addEventListener(Event.COMPLETE, onComplete); 
loader.dataFormat = URLLoaderDataFormat.VARIABLES; 
loader.load(request); 

function onComplete(event:Event):void{ 
recommend.text = event.target.data; 
} 
} 

Toute aide serait grandement appréciée, merci.

+1

Êtes-vous envelopper votre instruction SQL ($ query) avec des guillemets? –

+0

non, je n'avais pas, merci. Il compile maintenant, bien que rien ne soit montré dans la boîte de texte, quand il devrait y avoir un résultat. (J'ai testé la requête dans HeidiSql, en remplaçant $ url, avec l'url qui devrait être tenue dans rssAdd, et il y a un résultat.) –

+0

Je dirais qu'il analyse bien maintenant, plutôt que de compiler: P – alex

Répondre

1

Avez-vous vérifié ce qui revient du serveur exécutant votre application PHP? La vérification des détails de la requête et de la réponse, en utilisant Firefox et le panneau Net de Firebug, pourrait faire la lumière sur un autre problème inattendu avec le serveur web.

+0

La réponse du PHP fichier est la requête elle-même, la même réponse que je reçois si je trace event.target.data.title en flash. Cela jette-t-il plus de lumière sur mon problème? Merci. –

+0

C'est plus clair. Quelle classe est votre variable "recommend"? –

+0

Je ne sais pas trop ce que vous voulez dire. La variable rssAdd est une chaîne contenant une URL. –

1

fixe avec le retour suivant:

$result = mysql_query($query); 
$row=mysql_fetch_array($result); 
print ("recTitle=".urlencode($row['title'])); 
Questions connexes