Aller au contenu

Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

RecordSet et amfPHP = a nous de gerer ?

programmeur_maniaque

Posted 16 June 2007 - 08:43 AM

salut smile.gif

j'ai passé un temps fou a essayer de faire fonctionner Flex (as3) et amfPHP 1.9b2, maintenant que le plus gros fonctionne j'ai des petits problemes avec 2 types de données :
-Date (dans les 2 sens)
-Ressource mysql (RecordSet)

pour la Date c'est pas trés grave, il me suffit de la convertir en timestamp UNIX quand j'ai besoin de la faire voyager icon_mrgreen.gif

ce que j'avais adoré dans F8 c'était la possibilité de renvoyer une ressource mySQL du PHP vers Flash et de l'utiliser dans Flash en tant que dataProvider d'nu dataGrid !
j'ai été sacrément triste de ne pas trouver la classe mx.remoting.RecordSet ni rien d'équivalent (a part peut etre ArrayListCollection), donc pour l'instant je me suis fait une petite fonction pour "régler" ce probleme, je la rajoute, elle servira surement a d'autres personnes ...
CODE
        /**
         * Afficher le retour d'une ressource MySQL dans un DataGrid
         * La fonction prend en charge la création des colonnes et l'insertion des données
         *
         * @param dtg Le composant de type DataGrid
         * @param res La ressource Object envoyée par amfPHP
         *
         * @return void
         */
        public static function dtgRecordset(dtg:DataGrid, res:Object):void {
            if( res.serverInfo == undefined || res.serverInfo.initialData == undefined || res.serverInfo.columnNames == undefined ){
                trace("recordset(,res) : la ressource recu de amfPHP n'est pas au bon format");
                return;
            }
            var tbTmp:Array = new Array();
            var dtcTmp:DataGridColumn;
            for( var a:uint=0; a < res.serverInfo.columnNames.length;a++){
                dtcTmp = new DataGridColumn(res.serverInfo.columnNames[a]);
                dtcTmp.dataField = a.toString();
                tbTmp.push(dtcTmp);
            }
            dtg.columns = tbTmp;
            dtg.dataProvider = res.serverInfo.initialData;            
        }



est ce que ce "probleme" de RecordSet viens de Flex ou de l'AS3 ?
est ce que cette classe sera rajouté ou doit on prévoir une implémentation ?


Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

Autres réponses dans ce sujet

programmeur_maniaque

Posted 16 June 2007 - 08:43 AM

salut smile.gif

j'ai passé un temps fou a essayer de faire fonctionner Flex (as3) et amfPHP 1.9b2, maintenant que le plus gros fonctionne j'ai des petits problemes avec 2 types de données :
-Date (dans les 2 sens)
-Ressource mysql (RecordSet)

pour la Date c'est pas trés grave, il me suffit de la convertir en timestamp UNIX quand j'ai besoin de la faire voyager icon_mrgreen.gif

ce que j'avais adoré dans F8 c'était la possibilité de renvoyer une ressource mySQL du PHP vers Flash et de l'utiliser dans Flash en tant que dataProvider d'nu dataGrid !
j'ai été sacrément triste de ne pas trouver la classe mx.remoting.RecordSet ni rien d'équivalent (a part peut etre ArrayListCollection), donc pour l'instant je me suis fait une petite fonction pour "régler" ce probleme, je la rajoute, elle servira surement a d'autres personnes ...
CODE
        /**
         * Afficher le retour d'une ressource MySQL dans un DataGrid
         * La fonction prend en charge la création des colonnes et l'insertion des données
         *
         * @param dtg Le composant de type DataGrid
         * @param res La ressource Object envoyée par amfPHP
         *
         * @return void
         */
        public static function dtgRecordset(dtg:DataGrid, res:Object):void {
            if( res.serverInfo == undefined || res.serverInfo.initialData == undefined || res.serverInfo.columnNames == undefined ){
                trace("recordset(,res) : la ressource recu de amfPHP n'est pas au bon format");
                return;
            }
            var tbTmp:Array = new Array();
            var dtcTmp:DataGridColumn;
            for( var a:uint=0; a < res.serverInfo.columnNames.length;a++){
                dtcTmp = new DataGridColumn(res.serverInfo.columnNames[a]);
                dtcTmp.dataField = a.toString();
                tbTmp.push(dtcTmp);
            }
            dtg.columns = tbTmp;
            dtg.dataProvider = res.serverInfo.initialData;            
        }



est ce que ce "probleme" de RecordSet viens de Flex ou de l'AS3 ?
est ce que cette classe sera rajouté ou doit on prévoir une implémentation ?

programmeur_maniaque

Posted 18 June 2007 - 09:55 AM

donc pas de solution pour le RecordSet ?

Moustik78

Posted 18 June 2007 - 10:19 AM

Je ne crois pas en avoir eu vent :/

En tout cas, merci pour ce bout de code. On ne sait jamais, je pense que ça sauvera des vies (ou des cheveux, faut voir... icon_biggrin.gif )

Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet