Nemesis68
Messages postés4Date d'inscriptionmardi 30 décembre 2003StatutMembreDernière intervention28 juin 2006
-
28 juin 2006 à 10:00
Nemesis68
Messages postés4Date d'inscriptionmardi 30 décembre 2003StatutMembreDernière intervention28 juin 2006
-
28 juin 2006 à 15:44
Bonjour,
Je découvre un peu le PHP (je n’y suis confronté que très rarement et pour des choses simples), et j’ai voulu essayer de crée un formulaire d’enregistrement dans une base de donnée via Flash et php.
Je me suis basé sur un tutorial que j’ai modifié avec mes courtes connaissances pour avoir toutes les infos que je demande.
Dans les grandes ligne cela marche, mais il y a deux chose qui bloquent. Une fois les infos enregistrer, je voudrai envoyer automatiquement un email récapitulatif à l’inscrit j’ai écrit ça : $ToEmail "$emailnew"; alors que ça fonctionne avec une adresse pré remplie genre $ToEmail "test@test.com";
2e problème, je voudrais que le mot de passe envoyer dans l’email soit « décodé », et mes connaissances sont insuffisantes pour comprendre le fonctionnement de cette fonction.
Voici mon code complet, et merci d’avance pour votre aide.
<?
// Fonction pour parser les variables vers FLASH
function Parse($variable,$valeur) {
echo "&" . $variable . "=" . utf8_encode($valeur);
}
$lognew=$HTTP_POST_VARS['lognew'];
$mpsnew=$HTTP_POST_VARS['mpsnew'];
$nomnew=$HTTP_POST_VARS['nomnew'];
$prenomnew=$HTTP_POST_VARS['prenomnew'];
$societenew=$HTTP_POST_VARS['societenew'];
$emailnew=$HTTP_POST_VARS['emailnew'];
$adressenew=$HTTP_POST_VARS['adressenew'];
$cpnew=$HTTP_POST_VARS['cpnew'];
$villenew=$HTTP_POST_VARS['villenew'];
$paysnew=$HTTP_POST_VARS['paysnew'];
$telnew=$HTTP_POST_VARS['telnew'];
$faxnew=$HTTP_POST_VARS['faxnew'];
include ('./connect.php');//ici on inclut le fichier avec l'accès MySQL.
$crypt=md5($mpsnew);
$sql "SELECT * FROM tbl_user WHERE login '$lognew'";//On sélectionne dans la table "tbl_user" le login qui a pour valeur la variable "$login"
$req = mysql_query($sql);
$result = mysql_numrows($req);// on compte le nombre de résultats
if($result!=0) // le login existe déjà
{
Parse("resultat","le login '$lognew' existe déjà, désolé"); //alors on renvoi au Flash que le login '$lognew' existe déjà
}
else //sinon le login n'existe pas
{
$sql = "INSERT INTO tbl_user (login,pwd,nom,prenom,societe,email,adresse,cp,ville,pays,tel,fax) VALUES ('$lognew','$crypt','$nomnew','$prenomnew','$societenew','$emailnew','$adressenew','$cpnew','$villenew','$paysnew','$telnew','$faxnew')"; //Alors on insert dans la table le nouvel utilisateur
mysql_query ($sql);
Parse("resultat"," $lognew, enregistrement reussi");//alors on renvoi au Flash que le membre est enregistré
}
$ToEmail3 = "$emailnew";
$ToEmail = "$emailnew";
$ToSubject = "Confirmation";
$EmailBody = "Informations sur l'internaute\n\n NOM : $lognew\n PRENOM : $crypt\n\n ADRESSE : $nomnew\n CODE POSTAL : $prenomnew\n VILLE : $societenew\n PAYS : $emailnew\n\n Téléphone : $adressenew\n Fax : $cpnew\n EMAIL : $villenew\n\n COMMENTAIRE : $paysnew\n\n $telnew \n $faxnew" ;
cs_PaDa
Messages postés1804Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention22 septembre 20095 28 juin 2006 à 14:23
Tu "cryptes" ton mot de passe en md5
md5 n'est pas un algorithme réversible, il n'y a pas de méthode pour
depuis la trace md5 retrouver le pass d'origine (rien de faisable en
php ou flash en tout cas et avec un seul ordi)
Pour ton mail, à un moment tu utilises sur $emailnew la fonction decode()
Or cette fonction va remplacer le "@" par "%40", donc ca ne risque pas de fonctionner pour la suite ;o)
Le code est pas très joli sinon, mais je suppose que ce n'est pas le but de ton post alors je t'ennuie pas avec ca...
Pour découvrir les bases de php, je te conseille de "perdre" une demie
journée sur http://www.siteduzero.com/, leur cours est relativement
bien fait et pensé pour les débutants :)
Nemesis68
Messages postés4Date d'inscriptionmardi 30 décembre 2003StatutMembreDernière intervention28 juin 2006 28 juin 2006 à 15:28
Merci pour le lien, j’ai pas trop le temps en ce moment, mais je sens que ça va bien m’occuper pendant les 12h d’avion qui m’attende dans 3 semaines. Ainsi que pour le compliment sur le code (même si la partie cryptage n’ait pas de moi).
En effet, l’email arrive sous la forme suivante :
Email : test%40test%2Ecom je vais voir pour modifier ça.
Sinon pour la partie cryptage, j’ai contourné le problème. J’ai recopié le code dans une nouvelle variable avant qu’elle ne soit encodée. Comme ça j’envoie celle encoder a ma BDD et le clone dans l’email. Ça marche nickel.
Nemesis68
Messages postés4Date d'inscriptionmardi 30 décembre 2003StatutMembreDernière intervention28 juin 2006 28 juin 2006 à 15:44
Dernière remarque au cas où quelqu’un voudrai s’en inspirer (on ne sait jamais, les choses simples sont parfois les meilleurs). La partie « Envoie de l’email » doit être déplacé dans la condition « else //sinon le login n'existe pas {… » Sinon, si le login existe déjà, la personne enregistrée recevra un mail alors comme quoi elle est enregistrée avec un login qui ne marchera pas.