Forum de discussion
Forum « Flash et Shockwave » (archives)
Re: Passage de Variables Flash/PHP
Envoyé: 9 février 2004, 8h34 par Oznog
Partons du début. Un exemple simple. J'y vais par numéro, dit moi à quel numéro ça ne va plus ou que les trace ne donne rien. FACON SIMPLE SANS OBJET TEXTE OU SCROLL ou CLIP VIDE.
Le texte saisie (sSaisie) va passer via HTTP (hEnvoi) au script PHP (ou ASP) qui le retournera via HTTP (hTest) dans le texte dynamique (sRetour).
1. Met sur tn serveur un script PHP qui contient ceci
<?
// Exemple PHP
echo "hTest=" + $hEnvoi
?>
- OU -
<%
' Exemple ASP
response.write "hTest=" & request("hEnvoi")
%>
2. Bouton Envoyer
Avant de vraiment envoyer on va faire le bouton question de l'utiliser lors des tests.
- Glisse donc l'instance d'un symbole "button" sur la scène.
- Pour donner une action, sélectionne le bouton et ouvre la fenêtre des action "buton" [F9]. Entre ce code qui servira à tester l'étape 3 :
on (release) {
trace(_root.sSaisie);
}
3 . Champ de type "Input" pour la saisie
Pour envoyer une valeur au PHP (ou ASP), tu dois avoir un champ de saisie, c'est à dire tracer sur la scène un champ texte (avec l'outil texte) et ouvre la fenêtre "propriétés" [ctrl-F9]. Sélectionne dans la liste de sélection le choix "input". Et donne lui le nom de variable "sSaisie"
TEST : Tu peux déjà tester ton Flash, entre un texte dans la boîte de saisie et clic le bouton, tu devrais voir ton texte. Sinon, refaire l'étape 3!
4. Affichage au retour.
Pour récupérer une variable du PHP ou du FLash il faut pouvoir l'afficher (remarque qu'une trace aurait suffit).
- Tu trace un champ texte sur la scène mais cette fois tu sélectionne "Dynamique" (pas besoin d'être de saisir ici).
- Donne lui le nom de variable "sRetour".
TEST : Tu peux lui donner une valeur par défaut en tappant à l'intérieur du champ "Un moment..." par exemple. Et pour s'assurer qu'il fonctionne, ajouter cette ligne à l'action de notre bouton :
on (release) {
trace(_root.sSaisie);
trace(_root.sRetour);
}
Qui devrait afficher (sinon, refaire l'étape 4) :
[texte saisie]
Un moment...
Donne le nom de variable
5. Le bouton envoyé.
Pendant qu'on est dans ce bouton, terminons. Il suffit d'ajouter ce code MAIS ATTENTION, les noms de variables doivent être respectés "hEnvoi" est ce que le PHP ou ASP s'attend de reçevoir et "hTest" est ce qu'ils vont retourner!
on (release) {
var oCharge = new LoadVars();
// J'envoie la saisie
oCharge.hEnvoi = _root.sSaisie;
// Au PHP
oCharge.sendAndLoad("script.php", oCharge, "POST")
// Quand chargé
oCharge.onLoad = function (success) {
// J'assigne la valeur de retour.
if (success) _root.sRetour = this.hTest;
// Confirmation visuelle
trace(_root.sSaisie);
trace(_root.sRetour);
}
}
Encore une fois : Le texte saisie (sSaisie) devrait donc passer via HTTP (hEnvoi) au script PHP (ou ASP) qui le retournera via HTTP (hTest) dans le texte dynamique (sRetour).
Ciao
Oznog
Réponses
|