2012-10-31 2 views
0

EDIT - On dirait que vous ne pouvez pas analyser les données de PHP sans passer par XML. Utiliser JSON sera le meilleur moyen. SourceFlex - Récupérer et variables magasin de PHP

Je suis très nouveau pour Flex été utilisé pendant 2,5 jours. L'application My Flex accède à un script PHP qui calcule deux nombres. Le script fonctionne comme il est mais je veux récupérer plusieurs variables du script PHP afin que je puisse avoir une réponse pour non seulement l'addition mais aussi la multiplication etc ...

J'espère avoir fait un peu de sens ....

Flex:

<?xml version="1.0" encoding="utf-8"?> 
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009" 
     xmlns:s="library://ns.adobe.com/flex/spark" 
     title="Adding Numbers"> 

    <fx:Declarations> 
     <!-- Place non-visual elements (e.g., services, value objects) here --> 
     <s:HTTPService id="srvCalc" url="http://192.168.0.3/flex/flex-phpexample/calc.php" 
        resultFormat="text" 
        method="POST"> 

     <s:request xmlns=""> 
      <number1>{txtNumber1.text}</number1> 
      <number2>{txtNumber2.text}</number2> 
     </s:request> 

    </s:HTTPService> 
    </fx:Declarations> 

    <fx:Script> 
     <![CDATA[ 
      private function btnCalc_Click(event:MouseEvent):void 
      { 
       srvCalc.send(); 
      } 
     ]]> 
    </fx:Script> 

    <s:VGroup width="400" horizontalCenter="0" verticalCenter="0"> 
     <s:Label id="txtAnswer" text="{srvCalc.lastResult}" /> 

     <s:Label text="First Number:" /> 
     <s:TextInput id="txtNumber1" 
        width="100%"/> 

     <s:Label text="Second Number:"/> 
     <s:TextInput id="txtNumber2" 
        width="100%"/> 

     <s:Button id="btnCalc" 
        label="Calculate" 
        click="btnCalc_Click(event)"/> 
    </s:VGroup> 

</s:View> 

PHP:

<?php 
    $number1 = $_POST['number1']; 
    $number2 = $_POST['number2']; 

    print($number1 + $number2); 
?> 

Répondre

0

La méthode la plus simple serait que php renvoie un bloc codé JSON, puis utilise http://flexjson.sourceforge.net/ pour le décoder dans flex. Il existe d'autres méthodes que vous pouvez utiliser, mais c'est la manière la plus simple et la plus structurée.

+0

J'ai regardé, mon idée initiale que je veux construire à partir de ceci est de créer une vue de connexion. Afin que nous puissions envoyer un nom d'utilisateur, mot de passe et en cas de succès, je veux retourner une valeur du code PHP comme: $ loginSuccessful = true; $ firstName = "John"; $ lastName = "Doe" ' – Tristian

+0

À droite, donc vous voudriez quelque chose comme $ return = array(); $ return ['firstname'] = "John"; $ return ['status'] = true; echo (json_encode ($ return)); – Kyros

+0

Vous n'avez plus besoin d'utiliser une bibliothèque tierce pour analyser JSON dans AS3. Adobe a une classe JSON (avec les méthodes statiques #parse() et #stringify()) intégrée dès maintenant. http://help.adobe.com/fr_FR/FlashPlatform/reference/actionscript/3/JSON.html –