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

Flash Discussion :

sendAndLoad ( encore ! )


Sujet :

Flash

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut sendAndLoad ( encore ! )
    Bonjour à tous,

    Nouveau en flash et sur ce forum, je cherche depuis ce matin sur tous les posts concernant mon problème, test tous les codes postés mais sans succès !
    un boutton, des variables dont une qui est 'nom' et une page php

    Sur un boutton, j'envoi sur une page php des variables ( rien de nouveau, des milliers de post en parle ... )

    j'ai mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    on (release) {
    	var my_lv:LoadVars = new LoadVars();
    	my_lv.nom = nom.text;
    	my_lv.sendAndLoad("mail1.php", "_parent", "POST");
    }
    J'ai essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    on (release) {
    	var my_lv:LoadVars = new LoadVars();
    	my_lv.nom = this.nom;
    	my_lv.sendAndLoad("mail1.php", "_parent", "POST");
    }
    J'ai essayé le fameux getURL : sans succés
    et :
    Soit j'ai des variables sans valeur
    Soit j'ai des undefined

    Je sais que la réponse est quelque part mais une journée pour une variable, c'est abusé !
    Merci de votre aide

    Vincent

  2. #2
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Salut,

    déjà oublie la notation et préfère la notation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tonBtn.onRelease = function() { ... }
    (Code à placer sur la frame qui contient ton bouton; pas sur le bouton !!!)

    Puis teste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var my_lv:LoadVars = new LoadVars();
    tonBtn.onRelease = function() {
    	my_lv.nom = this.nom;
    	my_lv.sendAndLoad("mail1.php", "_parent", "POST");
    }
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    Ok merci pour la rapidité

    Je prend note pour nommer le boutton et mettre le code sur la frame ou se trouve le boutton

    Je viens de tester et maintenant je n'ai meme pas la page php qui s'affiche
    J'ai aussi tester le onPress mais pareil ...
    Plus rien qui se passe , j'ai oublié un truck ??

    Merci
    Vincent.

  4. #4
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Je suis allé un peu vite

    - A quoi correspond this.nom ?
    Désormais le this dans onRelease correspond au bouton, surement donc un pb de chemin. Peut-etre this._parent.nom ?

    - La cible (2e argument de sendAndLoad) est un autre objet LoadVars destiné à recevoir les données renvoyées par le php. Il ne faut donc pas mettre "_parent"
    Ps: L'arrivée des résultats n'est pas immédiate, il faut laisser le temps du chargement

    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
    var my_lv:LoadVars = new LoadVars();
    var my_lv2:LoadVars = new LoadVars();
    tonBtn.onRelease = function() {
    	my_lv.nom = this.nom; // Ou le bon chemin vers la variable
    	my_lv.sendAndLoad("mail1.php", my_lv2, "POST"); // "POST" est inutile car valeur par défaut
    }
    my_lv2.onLoad = function(bOk:Boolean) {
       if(bOk) {
           trace(this.nomVariableRetournee1);
           trace(this.nomVariableRetournee2);
           // ...
       } else {
          trace("Erreur lors du chargement");
       }
    }
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    Me revoila !
    Pour résumer :
    Formulaire flash qui envoi les variables à mapage.php en _parent pour lancer la fonction mail().
    Un simple echo me permet de voir le chargement des variables

    variable input text se nomme "nom"
    bouton se nomme "monbtn"

    j'ai remarqué que si je mets le code sur la frame, plus rien ne se passe soit avec monbtn.onrelease ou monbtn.onpress avec la fonction sendAndLoad ou getURL

    Par contre si je laisse le code sur le bouton lui même, le on (press ) ou on (release ) appelle bien la page php uniquement avec le getURL et non sendAndLoad mais sans les variables chargées

    Comprend pas ce qui se passe !!! ou sont mes variables ??

    Je viens de tester le code et les tutos mais que dalle ! c'est dingue !!
    Une idée ??

    j'ai modifié la méthode en GET en passant les param dans l'URL
    je reçois : Undefined !
    Je cherche encore...

  6. #6
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Ta page mapage.php utilise uniquement des paramètres passés par flash ou est-ce un formulaire que tu completes puis tu que valides hors flash ?

    1er cas : uniquement flash, ta page n'a pas besoin d'interface utilisateur (et donc n'a pas lieu d'être dans un _parent). Tu envoies tes paramètres, tu utilises ta fonction mail(), puis tu renvoies les paramètres retour à flash comme je te l'ai indiqué (est-ce que ta page renvoie quelque chose à flash ? si non, send suffit au lieu de sendAndLoad)
    2e cas: Il faut que tu communiques via javascript pour compléter ton formulaire


    Ps : Précises la version de flash que tu utilises - Merci
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    Oui effectivement, cette nuit j'ai eu un "flash"...
    Ma page.php ne contient que la fonction mail() alors pourquoi vouloir absolument qu'elle s'ouvre... Stupide ! Au départ c'était juste pour afficher un message de confirmation autant le faire dans le .fla ( code que tu m'as donné )
    Le fait est que je suis resté bloqué sur le echo et une page qui ne s'ouvre pas....

    Je reteste ce soir et je viens mettre à jour mon post avec de bonnes nouvelles ( je l'espere )
    Merci pour ton aide
    Vincent.

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    Pas de bonnes nouvelles
    J'ai re testé en environnement de prod et que dalle
    J'ai testé le loadAndSend avec le on (release) ou le on (press ) sur le bouton lui même,
    ensuite testé sur la frame principale avec
    mbtn.onPress ou onRelease

    En fait, je pense tout simplement qu'aucune action ne se passe sur le bouton.
    D'ou pourrait venir le problème ?
    ici le code présent sur la frame :
    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
    stop();
     
    label_01 = "Votre Nom";
     
     
    text1 = label_01;
     
    this.onEnterFrame = function() {
     
    	text_field_1.onSetFocus = function() {
        if (text1 == label_01) {
                text1 = "";
            }
    	};
     
    	};
    et j'ai mis ensuite le code de freegreg
    Pourquoi n'y a t il aucune action sur mon bouton ?
    même le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     trace("Erreur lors du chargement");
    ne s'affiche pas

    Merci

  9. #9
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Tu peux mettre tout le code de ta frame ?
    Cela ne vient pas de là.

    ps: le text_field_1.onSetFocus devrait a priori suffire par lui-même, pas besoin de le mettre dans un onEnterFrame.
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    voici le code :

    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
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    stop();
     
    label_01 = "Votre message";
    label_02 = "e-mail";
    label_03 = "Telephone";
    label_04 = "Objet";
    label_05 = "Votre nom";
     
    text1 = label_01;
    text2 = label_02;
    text3 = label_03;
    text4 = label_04;
    text5 = label_05;
     
    this.onEnterFrame = function() {
     
    	text_field_1.onSetFocus = function() {
        if (text1 == label_01) {
                text1 = "";
            }
    	};
    	text_field_1.onKillFocus = function() {
    		if (text1== "") {
    			text1 = label_01;
    		};
    	};
     
    	text_field_2.onSetFocus = function() {
    	if (text2 == label_02) {
    		text2 = "";
    		}
    	};
    	text_field_2.onKillFocus = function() {
    		if (text2 == "") {
    			text2 = label_02;
    		}
    	};
     
    	text_field_3.onSetFocus = function() {
    		if (text3 == label_03) {
    		text3 = "";
    		}
    	};
    	text_field_3.onKillFocus = function() {
    		if (text3 == "") {
    			text3 = label_03;
    		}
    	};
     
    	text_field_4.onSetFocus = function() {
    		if (text4 == label_04) {
    		text4 = "";
    		}
    	};
    	text_field_4.onKillFocus = function() {
    		if (text4 == "") {
    			text4 = label_04;
    		}
    	};
     
    	text_field_5.onSetFocus = function() {
    		if (text5 == label_05) {
    		text5 = "";
    		}
    	};
    	text_field_5.onKillFocus = function() {
    		if (text5 == "") {
    			text5 = label_05;
    		}
    	};
    };
    var my_lv:LoadVars = new LoadVars();
    var my_lv2:LoadVars = new LoadVars();
    mBtn.onRelease = function() {
    	my_lv.text_field_1 = text1;
                 my_lv.text_field_2 = text2;
                 my_lv.text_field_3 = text3;	
                 my_lv.text_field_4 = text4;
                 my_lv.text_field_5 = text5;
    my_lv.sendAndLoad("mail1.php", my_lv2, "POST"); 
    }
    my_lv2.onLoad = function(bOk:Boolean) {
       if(bOk) {
           trace(this.nomVariableRetournee1);
           trace(this.nomVariableRetournee2);
           // ...
       } else {
          trace("Erreur lors du chargement");
       }
    }
    j'ai aussi essayé avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    my_lv.text1= text1;
    en lieu et place
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my_lv.text_field_1 = text1;

  11. #11
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    text1 , text2 ... c'est le nom de variable que tu as mis à tes textfields , c'est ca ?
    Perso je passe tjs par le nom d'ocurence : text_field_1.text ...
    Mais bon ca ne doit pas venir de là, à essayer au pire.

    Le pb se situe où exactement ? php ne recoit rien ? flash ne recoit rien en retour ?

    Si tu mets juste avant ton sendAndLoad des trace(my_lv.text_field_2 + " - " + text2); ...
    Est-ce que cela affiche les bonnes données ? Je pense sur un pb de chemin, il doit pas pouvoir accèder aux variables text1 depuis le bouton.
    Si c'est pas les bonnes données, essaie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    my_lv.text_field_2 = this._parent.text2;
    // ou
    my_lv.text_field_2 = this._parent.text_field_1.text;

    Dans le onLoad, mets également, dans le if et le else, des traces par voir ou ca passe si ca passe quelque part
    Qu'est-ce qu'est sensé renvoyer le fichier php ?



    Ps: Essaie egalement en ne mettant pas le même nom à tes variables de ton objet LoadVars que les noms d'occurences de tes textfields, c'est source de confusion. Flash s'y perd peut-etre
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  12. #12
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    Salut freegreg,

    En fait le problème est le suivant :
    Aucune action ne se passe quand je clique sur le bouton ( appel de mail() dans une page php )
    Le on(press) ou ( release) n'y fait rien sauf si je mets un getURL ( la page s'affiche mais sans les variables)

    J'ai mis des trace partout mais rien ne se passe sur le bouton
    j'ai donc créée la fonction envoyer() ( vu dans un autre post ) mais idem , il ne se passe rien
    Pas d'appel de ma page php ou de l'envoi de mail
    ( la page php fonctionne si je l'appel par une autre page html )
    Le pb se situe donc sur le bouton mais ou ?? Je vais cracker....

  13. #13
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    Salut,

    J'ai pris un peu de temps pour régler ce problème et c'est OK
    Merci à toi pour tes infos...

    Le seul truck est que je passe par un getURL car le send ou sendandload ne lance pas mon maileur.

    L'important est de recevoir les variables.
    Merci.

    Vincent.

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

Discussions similaires

  1. Programmer encore en VB 6 c'est pas bien ? Pourquoi ?
    Par Nektanebos dans le forum Débats sur le développement - Le Best Of
    Réponses: 85
    Dernier message: 10/03/2009, 14h43
  2. choix sgbdr (encore!)
    Par _Gabriel_ dans le forum Décisions SGBD
    Réponses: 9
    Dernier message: 23/03/2004, 10h39
  3. TEdit (encore)
    Par dj.motte dans le forum C++Builder
    Réponses: 5
    Dernier message: 23/12/2002, 19h02
  4. TPalette (encore)
    Par Flipper dans le forum Langage
    Réponses: 3
    Dernier message: 28/11/2002, 23h45

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