Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[FlashMX2004]?faire passer un array dans php

1 réponse
Avatar
tabascomuypicante
Bonjour,
J'ai 2 arrays dans Flash :
var un = [ 0,1,1,0,0] ;
var deux = ["mot1", "mot2", "mot3", "mot4", "mot5"];
ainsi que d'autres variables, le tout ?tant positionn? au _level0.

Lorsque je les envoie vers un script php ? l'aide de :
loadVariablesNum("blabla.php", 0, "POST");

j'arrive ? r?cup?rer les valeurs des varibles mais $un et $deux sont vides ...
snif...

Quelqu'un saurait-il comment faire ?

Par avance merci :confused;

Claire

1 réponse

Avatar
Patrice Balat
Une possibilité est d'utiliser un composant connector que vous liez à votre
page php.
Ensuite dans votre php vous récuperer le flux xml en utilisant la
bibliotheque SAX
voir http://fr.php.net/manual/fr/ref.xml.php ou DOM XML
http://fr.php.net/manual/fr/ref.domxml.php

pour récuperer le flux xml dans php:
// initialise le parser
$xml_parser=xml_parser_create();

//enleve le fait que le parser met en lettres capitales par defaut
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, FALSE);

// ouvre le ficher xml envoyé par flash
if (!($fp = fopen("php://input","r"))){
die("<error>ouverture du fichier input</error></result_packet>");
}

//definie les fonctions callback (avec SAX)
xml_set_element_handler($xml_parser, "start_element_handler",
"end_element_handler");

// parse le doc xml
while($data = fread($fp, 4096)){
if(!xml_parse($xml_parser, $data, feof($fp))){
die("<error>le fichier xml n'est pas bien
formatté</error></result_packet>");
}
}

le defaut c'est qu'il faut generer du flash 7.
l'avantage c'est que vous pouvez recuperer une infinité de données, les
analyser tres facilement, voire les dispatcher facilement dans les tables
MySQL.

Vous pouvez lire et telecharger une applicatio flash sur ses problemes à
http://philflash.inway.fr/contactphp/contactphp.html
cette appli utilise DOM XML ce que je ne conseille car le module est
experimental, mais elle est tres instructive.

a+
Patrice Balat