0

読めば読むほど混乱する…

アクション スクリプト内に flex モバイル プロジェクトの関数を書き留め、php ファイル内にデータベースとの接続に使用する関数を書き留めます。

actionscript と PHP の両方を使用するサンプル アプリケーションはありますか。今、私はamfphpについても混乱しています。どんな助けでも素晴らしいでしょう

4

1 に答える 1

0

amfphp はまだ必要ありません。高度なケース用です。

smth をデータベースに保存するには、すでに正しい図を持っています: データベース コマンド ( PDOを使用する SQL コマンド) は .php ファイルにある必要があります。

そして、モバイル フレックス アプリから、 URLLoader、 URLStream (少し高度)、またはHTTPServiceのいずれかを使用して、これらの .php ファイルを呼び出します。

ここに私のアプリからのビューがあり、PostgreSQL からプレイヤーの週間トップを JSON 形式でロードします。

<?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"
        viewActivate="startLoading(event)"
        viewDeactivate="cancelLoading(event)"
        title="Weekly top">

    <fx:Declarations>
        <s:MultiDPIBitmapSource id="BACK"
            source160dpi="@Embed('assets/icons/low-res/back.png')"
            source240dpi="@Embed('assets/icons/mid-res/back.png')"
            source320dpi="@Embed('assets/icons/high-res/back.png')"/>
        <s:MultiDPIBitmapSource id="LOAD"
            source160dpi="@Embed('assets/icons/low-res/load-top.png')"
            source240dpi="@Embed('assets/icons/mid-res/load-top.png')"
            source320dpi="@Embed('assets/icons/high-res/load-top.png')"/>
    </fx:Declarations>

    <s:states>
        <s:State name="portrait"/>
        <s:State name="landscape"/>
    </s:states> 

    <s:navigationContent>
        <s:Button icon="{BACK}" label.landscape="Back" click="navigator.popView()"/>
    </s:navigationContent>

    <s:actionContent>
        <s:BusyIndicator symbolColor="0xFFFFFF" />
    </s:actionContent>

    <fx:Script>
        <![CDATA[
            import com.brokenfunction.json.decodeJson;
            import spark.events.ViewNavigatorEvent;

            private const TOP:String = 'http://XXXX.com/top-json.php';

            private var _urlLoader:URLLoader = new URLLoader();

            private function startLoading(event:ViewNavigatorEvent):void {
                _urlLoader.addEventListener(Event.COMPLETE, handleComplete);
                _urlLoader.load(new URLRequest(TOP));
            }

            private function cancelLoading(event:ViewNavigatorEvent):void {
                _urlLoader.close();
            }

            private function handleComplete(event:Event):void {
                var loader:URLLoader = URLLoader(event.target);
                try {
                    var obj:Object = decodeJson(loader.data, true);
                    navigator.pushView(Top, obj.aaData);
                } catch (e:Error) {
                    trace('Invalid JSON: ' + loader.data);
                    navigator.popView();
                }
            }
        ]]>
    </fx:Script>    

    <s:BitmapImage source="{LOAD}" horizontalCenter="0" verticalCenter="0" scaleMode="letterbox" />
</s:View>
于 2012-10-25T07:26:25.070 に答える