Redirection Flash/PHP
Bonjour,
J'ai un formulaire flash qui est traité via un page php.
J'aimerais qu'après ce traitement, mes données s'affichent dans un page X.php.
Seulement le header ne marche pas, puisque ma page de traitement n'est pas visible.
Comment faire?
Merci,, Zorg
J'ai un formulaire flash qui est traité via un page php.
J'aimerais qu'après ce traitement, mes données s'affichent dans un page X.php.
Seulement le header ne marche pas, puisque ma page de traitement n'est pas visible.
Comment faire?
Merci,, Zorg
Configuration: Windows XP Firefox 3.0.4
18 réponses
-
je suis peut etre bête, mais je n'ai rien compris du tout. tu peux ré-expliquer stp
-
J'ai un formulaire en flash. Dedans l'utilisateur entre des données. Puis appuie sur le bouton "Envoyer".
Là, cela envoie mes données à une page de traitement PHP qui les insère dans la base de données.
Après cela, j'aimerai que s'ouvre une nouvelle page. Mais je ne trouve pas comment faire.
J'espère avoir été plus claire. -
ah la je suis désolé je n'y connais rien en flash je ne peux rien pour toi. ce doit etre faisable en javascript je pense mais la encore une fois je ne suis pas compétente ^^ (oui je sais je suis bonne a rien) bon courage
-
merci quand meme
-
Je ne comprend pas si tu veux le moyen lancer ton script PHP depuis Flash ou si tu veux la redirection après avoir envoyé et traité ces données.
Lancer un script PHP depuis Flash (en AS3) : navigateToURL(new URLRequest("tapage.php"), "_parent");
Redirection en PHP : <?php header('Location:http://tonsite.com/'); ?> -
Je veux afficher une nouvelle page, pas ma page de traitement.
En mettant le header à la fin de ma page de traitements, rien ne se passe. -
Tu peux détailler un peu ? Tu travailles sur un serveur virtuel ?
-
Un serveur EasyPHP oui.
Détailler? Que dire de plus? -
J'ai compris que tu avais un fichier Flash quilance un script PHP et tu veux qu'a la fin de ce sript, ça lance une autre page PHP c'est bien cela ?
Si oui il te suffit de terminer ton script PHP par " <?php header('Location:lautrepage.php'); ?>" en t'assurant que lautrepage.php est dans le même dossier. -
Oui mais cela ne fonctionne pas!
-
C'est la seul instruction qui ne fonctionne pas ?
-
Ouep le reste fonctionne parfaitement.
-
Tu utilises des includes dans ton fichier ?
Peut tu me l'envoyer que je le test ? -
Voila le fichier php (de traitement des données flash donc):
<?php //Insertion dans la base de donnée function decoder($texte){ $texte = utf8_decode($texte); // converti en iso-8859-1 $texte = stripslashes($texte); // élimine les anti-slashs d'échappement $texte = nl2br($texte); // converti les retours en <br /> $texte = trim($texte); // élimine les '\n', '\r', '\t' etc return $texte; } $erreurPHP=""; //Paragraphe à decommenter pour tester le script php sans le flash /*$_POST['codereg'] = 'test'; $_POST['coord'] = 'formulaire Test'; $_POST['email'] = 'formulaire Test'; $_POST['tel'] = 'formulaire Test'; $_POST['nbsal'] = 'formulaire Test'; $_POST['nomapp'] = 'formulaire Test'; $_POST['ageapp'] = 'formulaire Test';*/ if(isset($_POST['codereg']))$code = $_POST['code']; else $erreurPHP .= "Variable 'code' non transmise\n"; if(isset($_POST['coord']))$coord = $_POST['coord']; else $erreurPHP .= "Variable 'coord' non transmise\n"; if(isset($_POST['email']))$email = $_POST['email']; else $erreurPHP .= "Variable 'email' non transmise\n"; if(isset($_POST['tel']))$tel = $_POST['tel']; else $erreurPHP .= "Variable 'tel' non transmise\n"; if(isset($_POST['nbsal']))$nbsal = $_POST['nbsal']; else $erreurPHP .= "Variable 'nbsal' non transm ise\n"; if(isset($_POST['nom']))$nom = $_POST['nom']; else $erreurPHP .= "Variable 'nom' non transmise\n"; if(isset($_POST['age']))$age = $_POST['age']; else $erreurPHP .= "Variable 'age' non transmise\n"; if($erreurPHP != "") echo utf8_encode("erreurPHP=".$erreurPHP); else { require "fonctions.php"; fonctions de connexion et d'exécution de requête connexion(); //Générer le paramètre URL $chaine = random(9); génère un paramètre unique qui servira pour voir les infos via l'URL //Requête d'insertion dans la base de données $req="INSERT INTO estim VALUES('$code','$coord','$email','$tel','$nbsal','$nom','$age','$chaine');"; $res = requete($req); //header('location:estimation.php?code=$chaine'); le header qui ne marche pas ?>
Même sans le paramètre, le header ne fonctionne pas. -
Ton dernier else n'est pas fermé ( " }" manquant ) ça ne vient pas de là ?
-
nan c'est juste que j'ai effacé des essais javascript avant de le coller ici...
Je CRAQUE -
Voici le bout de code AS2 qui envoie les infos à ma page PHP:
btEnvoyer.onRelease = function():Void { trace("bouton envoyer"); //Vérification du formulaire: var erreurs:String = validerFormulaire(); Vérification du formulaire, champs bien remplis, etc... //S'il n'y a pas d'erreurs, envoi du formulaire: if (erreurs == "") { envoyerForm(); } //S'il y en a, affichage des erreurs: else { trace(erreurs); afficherEnSortie(erreurs); } }
Dans ma fonction envoyerForm on a:function envoyerForm():Void { btEnvoyer.enabled = false; var envoyeur:LoadVars = new LoadVars(); var receveur:LoadVars = new LoadVars(); envoyeur.code = code; envoyeur.coord = coord; envoyeur.email = email; envoyeur.tel = tel; envoyeur.nbsal = nbsal; envoyeur.nom = nom; envoyeur.age = age; envoyeur.sendAndLoad("flashphp.php", envoyeur, "POST"); } -
Même le javascript ne fonctionne pas... bouh!