Bonjour, je suis entrain de créer mon site tout en flash, vient le moment du formulaire et là c'est de le drame.
Une journée que je galère, je m'explique :
J'ai été sur plein de site dont flashkod pour récupérer des sources,
et a chaque fois que je met mes éléments chez mon hébergeur "Amen" j'ai toujours une erreur PHP.
Voici le dernier en date :
code dans flash : // Auteur : BOUAMOUT Younes - Maroc
// FORMULAIRE FLASH MX & PHP - Console Mail (version 3.0)
// Version console mail FlashMX/PHP avec utilisation de la méthode loadVars
// ======================== INITIALISATION
en_cours._visible = false ;
// efface le clip "en_cours" tant que l'on ne lance pas l'envoi du mail. (voir calque -> Clip "encours")
// ======================== INITIALISATION (^.^;)
// ======================== FONCTIONS
// Cette fonction permet l'activation ou la désactivation des champs dynamique du formulaire
// elle est agrémentée d'effets sur les TextField pour toute information consultez la référence de flash MX.
function switch_champs(boule) {
if (boule) {
var couleur_texte = 0x000000; // couleur du texte si actif
} else {
var couleur_texte = 0xBBBBBB; // couleur du texte si inactif
}
nom_id.border = boule;
nom_id.textColor = couleur_texte;
nom_id.selectable = boule;
mail_id.border = boule;
mail_id.textColor = couleur_texte;
mail_id.selectable = boule;
numtel_id.border = boule;
numtel_id.textColor = couleur_texte;
numtel_id.selectable = boule;
message_id.border = boule;
message_id.textColor = couleur_texte;
message_id.selectable = boule;
en_cours._visible = !boule; // on rend visible ou invisible le clip en fonction de la valeur bouléene de la variable boule.
}
// Fonction pour envoyer le mail
// il manque à ce tutorial des tests sur les champs dynamiques (adresse mail correcte, etc..) ceci est traité dans d'autres tutoriaux sur le forum.
function envoyer_mail() {
_root.resultat = ""; // on initialise la variable resultat
switch_champs(false); // on désactive les champs du formulaire.
var envoi = new LoadVars(); // création de l'objet "envoi" qui permet d'envoyer les variables nécessaire au traitement dynamique via le php.
var recup = new LoadVars(); // création de l'objet cible "recup" qui reçoit les variables téléchargées.
// on rempli l'objet "envoi" avec les champs du formulaire.
envoi.nom = nom_id.text;
envoi.mail = mail_id.text;
envoi.numtel = numtel_id.text;
envoi.message = message_id.text;
// fonction qui permet lorsque l'opération de récupération des informations parsée par le PHP d'afficher le résultat voulu.
recup.onLoad = function(success) { // utilisez la référence de flash pour en savoir plus sur les méthodes et propriétés de loadVars.
switch_champs(true); // on réactive les champs du formulaire.
if (success) { // si l'opération de chargement s'est déroulée avec succès
_root.resultat = this.resultat; // on assigne la valeur renvoyée par le PHP au champ dynamique résultat.
} else {
_root.resultat = "Problème avec le fichier PHP"; // problème côté serveur l'opération n'a pas pu se faire.
}
};
envoi.sendAndLoad("envoie.php", recup, "POST"); // méthode pour envoyer les variables vers le PHP et récupérer dans "recup" les variables que parse le PHP.
}
// ======================== FONCTIONS (^.^;)
// ======================== PROGRAMME PRINCIPAL
// action sur le bouton pour envoyer le mail.
_root.bouton.onRelease = function () {
_root.envoyer_mail(); // on envoi le mail :D
}
// ======================== PROGRAMME PRINCIPAL (^.^;)
Code PHP<?php
$nom=$HTTP_POST_VARS['nom'];
$mail=$HTTP_POST_VARS['mail'];
$numtel=$HTTP_POST_VARS['numtel'];
$message = " Nom Prenom : \t ";
$message .="$nom \n ";
$message .= "Adresse Mail : \t ";
$message .="$mail \n ";
$message .= "Numero Telephone : \t ";
$message .="$numtel \n ";
$message .= "Message : \t ";
$message .=$HTTP_POST_VARS['message'];
$destinataire=$mail; /* votre adresse mail ici, j ai fais $mail juste pour le test
car je fesais mon adresse mail et ma boîte perso est presque saturée*/
$sujet = "Test PHP Flash";
/*function decoder($texte){
$texte = utf8_decode($texte);
$texte = stripslashes($texte);
$texte = trim($texte);
$texte = htmlentities($texte, ENT_QUOTES);
$texte = strip_tags($texte);
$texte = nl2br($texte);
$texte = str_replace(">", ">", $texte);
$texte = str_replace("<", "<", $texte);
return $texte;
}
$sujet = decoder($sujet);
$message = decoder($message);
*/
$headers = $sujet;
$mail_OK=mail($destinataire, $sujet, $message, $headers) ;
if ($mail_OK) {
echo "resultat=Envoi effectué";
} else {
echo "resultat=Probleme lors de l'envoi ou @mail non valide";
}
?>
Si quelqu'un peux m'aider ca serait top, je suis graphiste et pas super à l'aise avec le code.