Soucis avec un formulaire AS/php

ROTTpyk74460 Messages postés 7 Date d'inscription samedi 15 mai 2010 Statut Membre Dernière intervention 1 février 2011 - 1 oct. 2010 à 01:28
BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 - 1 oct. 2010 à 14:52
Bonjour,


Suite a différentes recherche sur la "toile", je me retourne vers vous car j'ai un enorme besoin de vos lumière.

Je créer un site internet qui me permet de montrer des Lan, en organiser. Sur mon site fait en Flash, j'ai voulu créer un formulaire "d'inscription" qui devrait permettre a un internaute interessé par cette lan de s'y inscrire via le site.

J'ai créer sur flash, la platforme du site, les zones textes, ...:



Avec pour code:

_____________________________________________________________________________

function envoyer_mail() {
_root.resultat = "";
switch_champs(false);
var envoi = new LoadVars();
var recup = new LoadVars();
// on rempli l'objet "envoi" avec les champs du formulaire.
envoi.pseudo = pseudo_id.text;
envoi.nom = nom_id.text;
envoi.prenom = prenom_id.text;
envoi.daten = daten_id.text;
envoi.ville = ville_id.text;
envoi.pays = pays_id.text;
envoi.jeux = jeux_id.text;
envoi.rem = rem_id.text;

recup.onLoad = function(success) {
switch_champs(true);
if (success) {
_root.resultat = this.resultat;
} else {
_root.resultat = "Problème avec le fichier PHP";
}
};
envoi.sendAndLoad("envoie.php", recup, "POST");
}

_root.bouton.onRelease = function () {
_root.envoyer_mail();
}

________________________________________________________________________________



Suite a ca, j'ai créer un script php pour l'envoi:

_________________________________________________________________________________




<?php

$peudo=$HTTP_POST_VARS['pseudo'];
$nom=$HTTP_POST_VARS['nom'];
$prenom=$HTTP_POST_VARS['prenom'];
$daten=$HTTP_POST_VARS['daten'];
$ville=$HTTP_POST_VARS['ville'];
$pays=$HTTP_POST_VARS['pays'];
$jeux=$HTTP_POST_VARS['jeux'];
$rem=$HTTP_POST_VARS['rem'];


$message = " Pseudo: : \t ";
$message .="$pseudo \n ";
$message .= "Nom de famille: : \t ";
$message .="$nom \n ";
$message .= "Prénom: \t ";
$message .="$prenom \n ";
$message = " Date de naissance: : \t ";
$message .="$daten \n ";
$message = " Il habite à: : \t ";
$message .="$ville \n ";
$message = " Il est dans le pays de: : \t ";
$message .="$pays \n ";
$message = " Jeux joués par ce joueur: : \t ";
$message .="$jeux \n ";
$message .= "Message : \t ";
$message .=$HTTP_POST_VARS['rem'];

$destinataire=rottpyk@live.fr;
$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";
}

?>


_________________________________________________________________________________


J'ai tout mit sur mon FTP (free), essayé d'aller sur le site internet (ce qui fonctionne si je vais sur ce lien: http://sebastien.bau.free.fr/74slan2/Sans%20nom-1.html


Je vais dans "INFO", "ACCEPTER" et je remplis mon formulaire ...

Mais quand je clique sur le bouton d'envoi, rien ne se passe, je ne ressois pas de Mail.

Je suis novice dans ce domaine, ca fait presque 24h que je me penche dessus sans trouver de solution (malgré que google est mon ami ...). Je me retourne vers vous pour une grande demande d'aide.


Cordialement,

Sebastien.

6 réponses

ROTTpyk74460 Messages postés 7 Date d'inscription samedi 15 mai 2010 Statut Membre Dernière intervention 1 février 2011
1 oct. 2010 à 01:31
Je suis en ActionScript 2 (Adobe CS3) et Dreamveaver CS3.
0
BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 6
1 oct. 2010 à 08:47
Hello,

à priori c'est normal que ça ne fonctionne pas car il me semble que les serveurs Free ne gèrenet pas les interactions avec php -> renseigne toi afin de savoir si ton hébergeur prend en charge les scripts php, et si tel n'est pas le cas... Et bien tu es condamné à souscrire une offre d'hébergement payante ou à trouver un hébergeur gratuit qui gère le php.

A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
0
ROTTpyk74460 Messages postés 7 Date d'inscription samedi 15 mai 2010 Statut Membre Dernière intervention 1 février 2011
1 oct. 2010 à 10:52
En ce qui concerne mon hébergeur, je peux affirmer que ca marche, vue que le site actuel de 74's LAN a deja un formulaire PHP d'inscription (mais ce n'est pas moi qui l'ai fait ...) et ca marche. Le site actuel est en php (nuked-klan) et je voulais en avoir un bien special a "moi" avec un formulaire ou j'aurais fait quelque chose.

Cordialement.

PS: Le code dans l'ensemble a-t-il un soucis quelconque ?
0
BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 6
1 oct. 2010 à 12:25
Re,

j'ai essayé ton formulaire en ligne et effectivement rien ne se passe, je pense que la connexion avec ton php foire -> est-ce que ça vient du php ou du Flash ? A voir... Le code dans ton Flash m'a l'air correct, donc je pense que ça viendrait plutôt de ton php. Quand tu testes en local tu obtiens bien "Probleme lors de l'envoi ou @mail non valide" ? Si en local tu n'obtiens pas ça c'est que la connexion Flash -> php ne s'effectue pas.

Sinon remarque subsidiaire : ne mets pas des champs de texte dynamique dans tes boutons, ou alors décoche "sélectionnable" dans les propriétés dans le Flash, car du coup on peut sélectionner les textes de tes boutons... donc pas facile de cliquer dessus .

A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
0

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

Posez votre question
ROTTpyk74460 Messages postés 7 Date d'inscription samedi 15 mai 2010 Statut Membre Dernière intervention 1 février 2011
1 oct. 2010 à 13:02
Justement, j'ai testé en local et rien ne se passe, mais vraiment rien ... c'est comme ci rien n'etait actif, j'entre les infos dans les partie de saisie de texte, et quand je clic sur le boutton d'envoi ... rien, queudale :/, rien n'est selectionnable dans mon flash (dans mes boutton) dans certains tuto lus, ils disaient bien de ne pas le mettre en selectionnable ...


Cordialement.
0
BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 6
1 oct. 2010 à 14:52
Re,

en relisant ton code je remarque 2 erreurs qui pourrait être la raison du souci :
- ton champ de texte dynamique qui doit afficher le résultat d'envoi des données n'est pas défini correctement :

_root.resultat = "";//...pas bon !

resultat.text = "";/...bon 


- ta fonction envoyer_mail() n'est pas appelée correctement :
_root.bouton.onRelease = function () { 
_root.envoyer_mail();//...pas bon du tout !!! 
} 


bouton.onRelease = function () { 
envoyer_mail();//...là c'est ok
} 


Essaie donc avec le code modifié pour voir ce que ça donne :

function envoyer_mail() { 
resultat.text = ""; 
switch_champs(false); 
var envoi = new LoadVars(); 
var recup = new LoadVars(); 
// on rempli l'objet "envoi" avec les champs du formulaire. 
envoi.pseudo = pseudo_id.text; 
envoi.nom = nom_id.text; 
envoi.prenom = prenom_id.text; 
envoi.daten = daten_id.text; 
envoi.ville = ville_id.text; 
envoi.pays = pays_id.text; 
envoi.jeux = jeux_id.text; 
envoi.rem = rem_id.text; 

recup.onLoad = function(success) { 
switch_champs(true); 
if (success) { 
resultat.text = this.resultat; 
} else { 
resultat.text = "Problème avec le fichier PHP"; 
} 
}; 
envoi.sendAndLoad("envoie.php", recup, "POST"); 
} 

bouton.onRelease = function () { 
envoyer_mail(); 
}


Evite également de mettre des "_root" dans ton code -> ça ne sert strictement à rien et ça ne sera bon qu'à semer le trouble dans ton code. Pointe tes objets suivant leurs niveaux ; si "bouton" est au 1er niveau, donc sur ta scène -> utilise "bouton" pour l'identifier dans ton code (tout simplement ). Si tu veux pointer un élément qu'on appellera pour l'exemple "toto", qui se trouve dans un clip nommé "bob", et que ce clip "bob" est sur la scène -> utilise
bob.toto.onrelease = function(){...tatatata...}


A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
0
Rejoignez-nous