Probleme d'Echange de données Flash/PHP ...HELP ME PLEASE!!!

ganja31200 Messages postés 29 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 6 février 2009 - 18 mars 2004 à 01:49
jdeboer Messages postés 254 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 4 février 2006 - 20 sept. 2005 à 21:46
Bonjour à tous!

Alors voilà, je desire faire afficher dans flash un texte qui est stocké dans une base de données en passant par un script PHP... mais je rencontre des problemes aux niveau de l'echange des Données...
Je m'explique:
sur ma Scène Flash sur la 1ere image j'ai juste un champ texte Dynamique ayant pour occurence "Texte", avec dedans une texte ecrit par defaut ("texte initial") et une scrollbar l'affectant.
dans un calque Action, toujours sur la 1ere image j'ai fais le code suivant!:

//Initialisation des différentes variables.

Fichier = ("http://localhost/AfficherTextes.php");//Chemin du Script Php
Chargement = new LoadVars();//Déclaration de l'Objet LoadVars appellé "Chargement"

//Fonction à effectuer à la reception des données du script Php
Chargement.onLoad = function() {
_root.Texte.text = this.Renvoi;//placer la variable "Renvoi" dans le champ texte "Texte"
_root.Texte.scroll = 0;// Mettre la position de la scrollbar à 0.
trace(this.Renvoi);//ecrire la valeur de la variable reçue dans la fenetre de sortie
};
//Déclaration de la fonction d'Envoi & Récéption de la Variable
function Charger() {
Chargement.nom = "Sexionkmikaze"; //Declaration de la variable "nom"
Chargement.sendAndLoad(Fichier, Chargement);//Envoi de l'Objet LoadVars "Chargement" au script PHP
}
// Déclaration de la Fonction D'Initialisation du champ "Texte"
function Effacer() {
_root.Texte.text = "";
}
// Début du Programme
Effacer();
Charger();

et dans le fichier PHP appellé "AfficherTextes.php" le code suivant!:

<?php
//Initialisation des différentes variables exploitées
$Hote ="localhost"; //Déclaration du serveur Hôte MySql
$Utilisateur="root"; //Déclaration du nom d'utilisateur pour se connecter à la BDD
$Pass=""; //Déclaration du mot de pass pour accéder à la BDD

$Base="sexionkmikaze";//Déclaration de la BDD sur laquelle on désire travailler

//Déclaration de la connexion "$Connexion"
$Connexion=mysql_connect($Hote,$Utilisateur);//Demande de connexion au serveur "Hote" MySql avec l' "Utilisateur" comme login
or die ("Echec de la tentative de connexion sur le serveur MySql");// Message d'Erreur affiché en cas d'echec à la connexion.

//Déclaration de la BDD "$db" à exploiter
$db=mysql_db($Base,$Connexion);//Demande d'accés à la base "sexionkmikaze" par le biai de la connexion "$Connexion".
or die ("Impossible de se connecter à la BDD sexionkmikaze");//Message d'Erreur en cas d'Echec d'accés à la BDD "sexionkmikaze"

//Déclaration de la Requête "$Rq" MySql à éffectuer.
$Rq="SELECT Contenu FROM Texte WHERE Intitulé='$nom';";

//Récupération de la Variable issue de Flash et envoi de la requête "$Rq"
if ($nom != "")
{
//Envoi de la Requête "$Rq" , le tout stocké dans la variable "$Requete"
$Requete=mysql_query($Rq);
//Déclaration de la variable "$Resultat" contenant les resultats de la Requête "$Requete" sous forme de tableau
$Resultat=myql_fetch_array($Requete);
//Déclaration de la variable Renvoi "$Renvoi" que Flash doit récuperer (elle contiend le texte de la colonne "Contenu" du tableau "$Requete"
$Renvoi=$Resultat['Contenu'];
// Envoi de la variable "$Renvoi" contenant le texte à afficher vers Flash
echo UTF8_encode("Renvoi=".'$Renvoi');
}
else
{
echo UTF8_encode("Renvoi="."Echec de récuperation de la variable ");
}
/?>

seulement tout mon code est bien beau, mais le probleme est que dans flash, la variable reçue ("Renvoi") est indéfinie, en effet, dans la fenetre de sortie apparait le mot fatidique UNDEFINED!!! arg!

j'en deduit donc que le php n'arrive pas a recuperer la variable "$nom" (déclaré dans flash par "Chargement.nom="Sexionkmikaze") ou alors c'est que j'ai pas bien compris le fonctionnement du fameux LoadVars().....
donc si quelques bonnes âmes pouvaient m'écalairer de leur lumiere bienveillantes et m'expliquer d'ou viens le probleme, et comment le resoudre, ce serait super!!!

D'avance merci!

9 réponses

pamafaut Messages postés 3 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 18 mars 2004
18 mars 2004 à 18:53
j'ai un peu le même problème (voir sujet précédent) et je crois que tout tient dans le "protocole" d'envoi de la variable sous flash... moi aussi j'ai l'impression que php ne récuppère pas la variable... :(
0
cs_Helmer Messages postés 132 Date d'inscription mardi 14 octobre 2003 Statut Membre Dernière intervention 2 décembre 2004 2
6 avril 2004 à 18:29
Salut,

Je crois pas que se soit la solution miracle mais bon...

Voilà pour l'objet LoadVars() ou l'objet XML, la construction, pour que s'éxécute une fonction après chargement des données dans l'objet, se déclare ainsi :

fonction aExecuter (){
...
}
tonObjet = new LoadVars();
tonObjet.onLoad = aExecuter ;
tonObjet.load("http://taPage.php");

En gros ... Et c'est la même chose pour l'objet XML ...
Voilou..
+
0
nicolas.sabio Messages postés 7 Date d'inscription samedi 11 octobre 2003 Statut Membre Dernière intervention 5 avril 2004
9 avril 2004 à 20:49
si tu tournes sur un serveur apache sous windows
tentes cette petite modif dans le php.ini (c:\winnt ou c:\windows)

dans la section [ DATA HANDLING ]
mets :
register_globals = On

faut voir ...

Nicolas Sabio
[mailto:nicolas.sabio@free.fr nicolas.sabio@free.fr]
0
jdeboer Messages postés 254 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 4 février 2006
12 mai 2004 à 17:48
Moi j ai le meme probleme . Mais si tu listes les variables, tu verras qu'il a bien recupere la variable. Quand tu fais un trace tu as Undefined mais dans la liste de variable tu verras le contenu de la variable suivi d'un /n. J ai l impression que c'est ce putain de /n qui fait tout foire. Mais je suis pas sur
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jdeboer Messages postés 254 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 4 février 2006
12 mai 2004 à 17:49
Moi j ai le meme probleme . Mais si tu listes les variables, tu verras qu'il a bien recupere la variable. Quand tu fais un trace tu as Undefined mais dans la liste de variable tu verras le contenu de la variable suivi d'un /n. J ai l impression que c'est ce putain de /n qui fait tout foire. Mais je suis pas sur
0
jdeboer Messages postés 254 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 4 février 2006
12 mai 2004 à 20:38
J ai trouve !!! J ai enleve le mot php apres <? et ca marche.
donc ton code doit etre de la forme suivante:
<?
.....nananan....
?>

IL FAUT PAS METTRE <?php sinon Flash aime pas.
0
cs_kodia Messages postés 4 Date d'inscription jeudi 2 septembre 2004 Statut Membre Dernière intervention 5 mars 2005
19 mars 2005 à 11:15
même en mettant <? ... ?>


j'ai toujours le pb de undefined.



Sam
0
Tigerkill Messages postés 1 Date d'inscription lundi 4 avril 2005 Statut Membre Dernière intervention 20 septembre 2005
20 sept. 2005 à 03:39
Salut,



Je voulais savoir s'il pouvait y avoir un problème de sécurité quand on
utilise le passage d'une variable directement dans l'appel du swf

ex : param name="movie" src="jeuflash.swf?nombredevie=<?php echo $nombredevie ; ?>"

la variable $nombredevie est définie sur la même page plus haut...

est-ce qu'une personne malvaillante pourrait (plus ou moins facilement)
hacker cette page pour changer cette variable et trucker le jeu ????



Merci d'avance...



Mat
0
jdeboer Messages postés 254 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 4 février 2006
20 sept. 2005 à 21:46
Ouais il peut avoir un probleme de securite.
Un conseil, utilise loadVars ou loadVariable pour charger la variable a l'interieur du swf. La personne n'aura pas acces a cet echange.

Julien
0
Rejoignez-nous