Guigui pti flooder :p
Nombre de messages : 93 Age : 40 Localisation : Blois Date d'inscription : 09/12/2005
| Sujet: [Flash][PHP] question sur le code d'un FLA Mar 15 Mai - 22:26 | |
| je fais un site en ce moment, et sur la partie contact, j'utilise un swf. il y a 3 parties par rapport au visiteur : le nom, le prénom, l'email. Et il y a une partie pour le message. j'ai un problème... quand je met des caractères comme un point, une virgule (ou autre), rien n'est enregistré dans la base. je voudrais savoir si il est possible d'éviter ce problème grace à de l'actionscript ? le code actionscript du swf est : - Citation :
- stop();
var varloader1 = new LoadVars(); // Personnalise l'ordre de tabulation des champs de texte prenom_txt.tabIndex = 1; nom_txt.tabIndex = 2; email_txt.tabIndex = 3; message_txt.tabIndex = 4;
// fonction pour effacer les champs de texte function effacerChamps(){ prenom_txt.text=""; nom_txt.text=""; email_txt.text=""; message_txt.text=""; }
// Appel la fonction "effacerChamps" effacerChamps();
// Organisation des fonctions de boutons // Fonctionement de efface_btn quand effacerChamps marche… efface_btn.onRelease=function(){ effacerChamps(); }
// Bouton "envoi" utilisant la méthode POST, exploitable avec PHP et MySQL envoi_btn.onRelease=function(){ varloader1.attribute_nom = nom_txt.text; varloader1.attribute_prenom = prenom_txt.text; varloader1.attribute_email = email_txt.text; varloader1.attribute_message = message_txt.text; _root.conteneurContact_mc.gotoAndStop(2); varloader1.send("dbinsert.php","","POST"); } et le code du fichier php est : - Citation :
- <?php
$connect = mysql_connect("localhost","root",""); $db=mysql_select_db("declicphoto"); if(isSet($db) && isSet($connect)){ echo "connection <b>établie</b>"; if($_POST['attribute_nom']!="" && $_POST['attribute_prenom']!="" && $_POST['attribute_email']!="" && $_POST['attribute_message']!=""){ $query=mysql_query("INSERT INTO personne (nom_personne,prenom_personne,email_personne,message_personne) VALUES ('".$_POST['attribute_nom']."','".$_POST['attribute_prenom']."','".$_POST['attribute_email']."','".$_POST['attribute_message']."')"); if($query){ echo "<br>enregistrement <b>effectué</b>"; }else{ echo "<br>enregistrement <b>non effectué</b>"; } }else{ echo "<br>enregistrement <b>non effectué</b>"; echo "<br>cause : vous devez remplir tous les champs"; }
}else{ echo "<b>connection impossible</b> à la base de données"; } ?> et la base est: - Citation :
- nom base de donnée : declicphoto
nom de la table : personne nom des éléments de la table : nom_personne, prenom_personne, email_personne, message_personne | |
|
rabou Actif du SrC
Nombre de messages : 716 Age : 38 Localisation : au fond... sisi, et même à droite Date d'inscription : 02/12/2005
| Sujet: Re: [Flash][PHP] question sur le code d'un FLA Mer 16 Mai - 9:26 | |
| Le problème est assez simple. Tu n'aura auunes solutions avec l'actionscript, car il envoie très bien les informations. Le problème maintenant vient du PHP. Quand tu fais ta requête SQL, il y a des éléments qui détruise la syntaxe de ta requête. Ces éléments sont les " ou peuvent aussi être les '. Généralement, lorsque l'on tape un script en PHP, et qu'on veux mettre les " par exemple dans un echo, ca va tout casser: - Code:
-
echo " This "monster" in the picture, as you say, its my wife"; dira qu'il y aura un problème, car il y a des " dans ta ligne en plein milieu de la phrase. C'est pourquoi on doit mettre des \ devant chaques éléments comme ça pour éviter ce genre de problème: - Code:
-
echo " This \"monster\" in the picture, as you say, its my wife"; Affichera This "monster" in the picture, as you say, its my wifeTout ça pour en venir au fait qu'il faut ajouter des slash dans les informations dans ta requête SQL. Comment dit on en anglais : ajouter des slash? addslashesDonc, pour ta reqête, voici la solution: - Code:
-
$query=mysql_query("INSERT INTO personne (nom_personne,prenom_personne,email_personne,message_personne) VALUES ('".addslashes($_POST['attribute_nom'])."','".addslashes($_POST['attribute_prenom'])."','".addslashes($_POST['attribute_email'])."','".addslashes($_POST['attribute_message'])."')");
Et avec ça tout ira mieu. | |
|
Guigui pti flooder :p
Nombre de messages : 93 Age : 40 Localisation : Blois Date d'inscription : 09/12/2005
| Sujet: Re: [Flash][PHP] question sur le code d'un FLA Mer 16 Mai - 14:01 | |
| merci je vais essayer cela tout de suite | |
|
Guigui pti flooder :p
Nombre de messages : 93 Age : 40 Localisation : Blois Date d'inscription : 09/12/2005
| Sujet: Re: [Flash][PHP] question sur le code d'un FLA Jeu 17 Mai - 19:32 | |
| j'ai encore une petite question. si je veux envoyer le message directement sur l'e-mail du destinataire (au lieu de la base MySQL), dois-je utiliser le code : - Citation :
- nomBouton_btn.onRelease=function(){
getURL("mailTo:EmailDestinataire"); } | |
|
rabou Actif du SrC
Nombre de messages : 716 Age : 38 Localisation : au fond... sisi, et même à droite Date d'inscription : 02/12/2005
| Sujet: Re: [Flash][PHP] question sur le code d'un FLA Jeu 17 Mai - 21:19 | |
| un petit truc n'ira pas dans on code, tu laisse une variable comme un texte. Il faut plutot mettre ca comme cela: - Code:
-
nomBouton_btn.onRelease=function(){ getURL("mailTo:"+EmailDestinataire); } Comme ca tu montre bien que c'est une variable. | |
|
Contenu sponsorisé
| Sujet: Re: [Flash][PHP] question sur le code d'un FLA | |
| |
|