IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 3 Discussion :

[AS3] URLRequest pour parler avec php, problème


Sujet :

ActionScript 3

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 51
    Points : 37
    Points
    37
    Par défaut [AS3] URLRequest pour parler avec php, problème
    Bonjours, je viens de me lancer dans l'as3 et j'éssai de récuperer un message depuis une page php. Malheuresement la seule réponse que j'obtient est un "En attente de localhost" du navigateur...

    Dans mon .fla j'ai tout simplement un : mainText.text = Sentinelle.chercher(0);


    Voila mon script Sentinelle.as

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    package{
        import flash.events.*;
        import flash.net.*;
     
    	public class Sentinelle{
     
    		public static function chercher(info:int):String{
    			return getPlayList();
             	}
     
    		private static function getPlayList():String{
    			var request:URLRequest = new URLRequest("message.php");
    			var lienPhp:URLLoader = new URLLoader();
    			lienPhp.load(request);
    			var pagePhp = new URLVariables(lienPhp.data);
    			var resultat:String = pagePhp.answer;
            		return resultat;
    		}
    	}
    }
    ainsi que ma page message.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $hello = "HelloPhp";
    $variable = 'answer';
    echo "&".$variable."=".utf8_encode(urlencode($hello));
    ?>
    mon .as me parait bon, d'après ce que j'ai pu voir sur d'autre script...reste que ça ne marche pas...si quelqun peut m'aider je l'en remercie.

  2. #2
    Rédacteur/Modérateur
    Avatar de beekeep
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 2 005
    Points : 3 325
    Points
    3 325
    Par défaut
    lut,

    juste au cas ou vu que t'es en local, t'a bien un serveur php ?

    (on golri pas ça m'est deja arrivé !! )

  3. #3
    Inactif Avatar de CR_Gio
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 195
    Points : 1 186
    Points
    1 186
    Par défaut
    bonsoir,

    Par experience, je dirai d'essayer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var request:URLRequest = new URLRequest("http://127.0.0.1/.../message.php");
    en local

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 51
    Points : 37
    Points
    37
    Par défaut
    Oui oui apache est bien lancé

    Euh sinon bah j'ai mis le chemin en entier mon erreur est toujours là ...enfin maintenant le message est : "En attente de 127.0.0.1 ..."

    ça peut venir d'apache ??

    Je suis entrain de lire la doc sur le site d'adobe et je suis tombé sur ça :

    * Le chargement de données n'est pas autorisé si le fichier SWF appelant est dans le sandbox local avec système de fichiers et que la ressource cible provient d'un sandbox de réseau.
    * Le chargement de données n'est pas autorisé si le fichier SWF appelant provient d'un sandbox de réseau et que la ressource cible est locale.
    Si quelqun y comprend quelques choses...moi pas vraiment. j'èspere que mon problème ne vient pas de là...

  5. #5
    Inactif Avatar de CR_Gio
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 195
    Points : 1 186
    Points
    1 186
    Par défaut
    As tu ouvert ta page en passant par apache. c'est a dire hxxp://127.0.0.1/

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 51
    Points : 37
    Points
    37
    Par défaut
    He bien oui. Mais apparament c'est parceque je n'utilise pas l'évenement COMPLETE que ça ne marche pas...j'ai réussi à lire dans un fichier texte donc je pense que ça devrais marcher avec un echo de php j'ai pas retesté.

    Parcontre du coup vue que j'utilise les évenement je peux plus retourner la réponse...vue que c'est du void...donc je suis de nouveau bloqué


    EDIT de ce matin

    Houlalala je ne sais pas quoi faire la .... je déclanche l'évènement l'event SecurityErrorEvent...plus exactement

    [SecurityErrorEvent type="securityError" bubbles=false cancelable=false eventPhase=2 text="Error #2048"]
    je sens que c'est linux qui me pose des soucis de droit ...pourtant j'ai lancé du chmod 755 partout

    EDIT Problème résolue

    Ok ça y est tous semble marcher ! Je met donc mon script.
    A noter que sur la scène sont présents trois textes dynamiques.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    package {
    
        import flash.display.Sprite;
        import flash.events.*;
        import flash.net.*;
        import flash.text.TextField;
    
        public class URLLoaderExample extends Sprite {
    
            public function URLLoaderExample() {
    
                var loader:URLLoader = new URLLoader();
                configureListeners(loader);
    	    monTexte.text = "Creation de URLRequest";
                var request:URLRequest = new URLRequest("mapage.php");
                try {
                    loader.load(request);
                } catch (error:Error) {
                    trace("Unable to load requested document.");
    		monTexte.text = "Impossible de lire le document";
                }
            }
    
        private function configureListeners(dispatcher:IEventDispatcher):void 
            {
                dispatcher.addEventListener(Event.COMPLETE, completeHandler);
                dispatcher.addEventListener(Event.OPEN, openHandler);
                dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
                dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
                dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
                dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            }
    
            private function completeHandler(event:Event):void 
                {
                 var loader:URLLoader = URLLoader(event.target);
                 trace("completeHandler: " + loader.data);
                 monTexte.text = "completeHandler";
                 var vars:URLVariables = new URLVariables(loader.data);
    	     monTexte.text = "Hello " + vars.prenom;
              }
    
            private function openHandler(event:Event):void 
            {
                trace("openHandler: " + event);
                monTexte.text = "openHandler";
            }
    
            private function progressHandler(event:ProgressEvent):void 
            {
                trace("progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal);
            	monTexte.text = "On progresse";
    	}
    
            private function securityErrorHandler(event:SecurityErrorEvent):void 
            {
                trace("securityErrorHandler: " + event);
                uneErreur.text = "SecurityError : "+event;
            }
    
            private function httpStatusHandler(event:HTTPStatusEvent):void {
                trace("httpStatusHandler: " + event);
           	    statuteror.text = "Status : "+event;
            }
    
            private function ioErrorHandler(event:IOErrorEvent):void 
            {
                trace("ioErrorHandler: " + event);
    	    monTexte.text = "ioErrorHandler";
            }
    
        }
    
    }
    Donc bon ce code vient à la base du site d'adobe je l'ai juste appliqué à un fichier php. Il faut juste faire gaffe à ne pas mettre un '&' devant la première varriable dans le fichier php (ce qui est logique) sinon sous linux ça génère une erreur de security (ce qui est moin logique) et sous windows l'erreur vous fait comprendre que le fichier php n'est pas bon.

    voila mon fichier .php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $valeur = "Hello";
    $variable = 'message';
    echo $variable."=".utf8_encode(urlencode($valeur));
    $valeur = "damien";
    $variable = 'prenom';
    echo "&".$variable."=".utf8_encode(urlencode($valeur));
    ?>
    Bon il est pas super optimisé mais il marche.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XML] Génération fichier XML pour RSS via PHP, problème lors de l'écriture
    Par gator dans le forum Bibliothèques et frameworks
    Réponses: 10
    Dernier message: 04/02/2012, 18h17
  2. Alt Entrée pour Excel avec php
    Par jgoguel dans le forum Langage
    Réponses: 1
    Dernier message: 26/05/2008, 16h48
  3. Eclipse et l'outil Xampp pour developpement avec PHP
    Par metrax dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 23/03/2007, 13h19
  4. comment lier eclipse avec Xampp pour travailler avec php
    Par metrax dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 14/03/2007, 13h23
  5. [EasyPHP] Pour débuter avec PHP j'ai un problème
    Par Claude l'ancien dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 14/02/2007, 11h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo