Créer un système de connexion Flash avec PHP et MySQL - Partie 2

Dans la partie 1, nous avons créé le système de connexion frontal permettant aux utilisateurs de saisir leurs informations. Dans ce tutoriel, nous allons créer un formulaire de registre qui permettra aux utilisateurs de s’inscrire. Cela ajoutera ensuite leurs détails à la base de données, après quoi ils pourront se connecter..


Étape 1: Configuration de la classe de document

Tout d'abord, configurons notre classe de document et notre fichier Flash. Ouvrez un nouveau fichier Flash, puis appelez-le. register.fla. Ensuite, créez un fichier ActionScript et appelez-le. s'inscrire

Puis tapez registre dans le champ de texte de la classe dans le panneau Propriétés.


Étape 2: Structure du code d'installation

Maintenant que nous avons connecté notre document à notre code, nous devons créer notre classe dans le fichier as.

 package import flash.display. *; public class register étend MovieClip public function register (): void trace ("success"); 

Étape 3: Créer l'interface de formulaire de registre

Dessinez un rectangle rempli de 460x300px et choisissez la couleur de fond que vous préférez. Créez le titre - Inscrivez-vous avec nous - et un champ de texte - Enregistrez-vous.

Votre interface devrait ressembler à ceci:


Étape 4: Configuration des champs de formulaire

Créez trois champs de saisie avec les noms d’occurrence de username_text, password_text et userbio_text.


Étape 5: Créer le bouton d’enregistrement

Cliquez sur le champ de texte "Enregistrer" que vous avez créé à l'étape 3 et convertissez-le en clip. Donnez-lui un nom d'instance de register_button.

A présent, votre interface devrait ressembler à ceci:


Étape 6: Créer le texte du résultat

Créez un nouveau champ de texte dynamique à côté du registre et donnez-lui un nom d'occurrence result_text. Nous avons terminé tous les objets dont nous avons besoin. Notre interface finie devrait ressembler à ceci.


Étape 7: obtenir des actifs de la partie 1

Pour vous faire gagner du temps, je ne couvrirai pas la connexion dans cette partie, comme vous pouvez l’apprendre dans la première partie. Obtenez le fichier connect.php à partir du php dossier dans la partie 1. Je l’ai aussi inclus dans le téléchargement zip de la partie 2 Source.

C’est tout ce dont nous avons besoin dans la partie 1. Créons maintenant le code ActionScript.


Étape 8: Créer les paramètres d'objet - Bouton Enregistrer

Nous devons d’abord attribuer un curseur de survol au bouton d’enregistrement. Nous faisons cela en utilisant le boutonMode propriété.

 register_button.buttonMode = true;

C'est tout ce que nous devons faire pour formater notre bouton de registre.


Étape 9: Configuration du bouton d’enregistrement

Nous avons maintenant besoin de notre bouton d’enregistrement pour exécuter une fonction qui valide l’entrée d’un utilisateur. Nous pouvons le faire en ajoutant un écouteur d'événement et en déclenchant la fonction lorsque l'utilisateur appuie sur le bouton.

 / * Lorsque le bouton d'enregistrement est enfoncé, la fonction checkForm est exécutée. * / register_button.addEventListener (MouseEvent.MOUSE_DOWN, checkForm);

Étape 10: Valider le formulaire

Avant que l'utilisateur puisse soumettre le formulaire, il doit remplir tous les champs. N'oubliez pas d'importer le flash.events. * classes dans votre fichier AS. Suivez les commentaires…

 fonction publique checkForm (e: MouseEvent): void / * Si tous les champs ont plus d'un caractère, sendForm () est entré. Sinon, result_text leur indiquera de les renseigner. * / If (username_text.text! = "" && password_text.text! = "" && userbio_text.text! = "") SendForm ();  else result_text.text = "VEUILLEZ REMPLIR TOUS LES CHAMPS"; 

Étape 10: Configurez la classe URLVariables

N'oubliez pas d'importer le flash.net. * classes dans votre fichier AS. le URLVariables La classe est utilisée pour stocker des données que vous enverriez ultérieurement à une source externe..

Nous devons créer une variable pour contenir ces données dans:

var phpVars: URLVariables = new URLVariables ();

Nous utilisons des variables d'instance pour stocker des données:

 phpVars.username = username_text.text; phpVars.password = password_text.text; phpVars.userbio = userbio_text.text;

Étape 11: Configurez la classe URLRequest

Ensuite, nous devons faire une demande d'URL pour obtenir l'emplacement de notre fichier php. Cette URLRequest est aussi ce par quoi nous transmettons nos variables php. Lorsque nous chargeons cette requête, les variables php sont envoyées au fichier php.

 var urlRequest: URLRequest = new URLRequest ("php / register.php"); / * la méthode POST est utilisée ici afin que nous puissions utiliser la fonction $ _POST de php afin de recevoir nos variables php. * / urlRequest.method = URLRequestMethod.POST; / * cela attache nos variables php à la requête url * / urlRequest.data = phpVars;

Étape 12: Configurez la classe URLLoader

le URLLoader Class vous permet d'envoyer et de recevoir des données provenant de sources externes. Dans ce cas, nous enverrons nos données URLVariables au fichier php via notre URLRequest. Suivez les commentaires…

 / * nous utilisons la classe URLLoader pour envoyer la requête URLVariables au fichier php * / var urlLoader: URLLoader = new URLLoader (); urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES; / * exécute la fonction une fois que le fichier php a parlé à Flash * / urlLoader.addEventListener (Event.COMPLETE, showResult); / * nous envoyons la demande au fichier php * / urlLoader.load (urlRequest);

Étape 13: Créez la fonction showResult ()

dans le sendForm () fonction nous avons ajouté un auditeur pour exécuter le Afficher le résultat() fonctionne lorsque le fichier php a été exécuté. Maintenant, créons-le…

 / * fonction pour afficher le résultat * / fonction publique showResult (e: Event): void // e.target.data fait référence à la sortie du fichier php. Nous définissons ultérieurement result_message dans le fichier php. result_text.text = "" + e.target.data.result_message; 

Étape 14: Créez le fichier PHP

Créez un nouveau fichier php, nommez-le register.php et enregistrez-le dans un nouveau dossier appelé php.


Étape 15: Communication flash en PHP

Afin de continuer, nous devons être sûrs que nos fichiers php et flash se parlent. Ouvrez votre éditeur de texte de choix et ouvrez le register.php vous venez de créer. Encore une fois, suivez les commentaires…

 

Maintenant, téléchargez les fichiers sur votre serveur pour les tester et les vérifier. Si le texte résultant est maintenant identique au nom d'utilisateur, la communication entre Flash et php est établie avec succès. Maintenant, supprimez le contenu de register.php.


Étape 16: Inclure le fichier de connexion

Maintenant que nous avons une connexion réussie, nous pouvons nous connecter à notre base de données à partir de la partie 1. Nous le faisons en incluant notre fichier connect.php que nous avons créé dans la partie 1.

 

Étape 17: Créer le POST Vars

Nous devons créer des variables POST pour recevoir les variables php que nous avons envoyées et définies comme variables POST..

 / * créer des vars POST pour recevoir des données à partir de flash * / $ username = $ _POST ['username']; $ password = $ _POST ['password']; $ userbio = $ _POST ['userbio']; 

Étape 18: Créer l'instruction SQL

Créons maintenant l'instruction SQL qui ajoutera nos valeurs et les stockera dans un nouvel enregistrement de la base de données. Suivez les commentaires…

 / * INSERT INTO users - Cela signifie que nous voulons insérer un enregistrement dans la table users. (nom d'utilisateur, mot de passe, user_bio) - Nous spécifions ensuite les champs auxquels nous voulons ajouter nos données. VALEURS ('$ username', '$ password', '$ userbio') - Nous spécifions ensuite les données que nous voulons dans chaque champ. * / $ sql = "INSERT INTO utilisateurs (nom d'utilisateur, mot de passe, user_bio) VALEURS ('$ nom d'utilisateur', '$ mot de passe', '$ utilisateurbio')";

Étape 19: Retour au flash

 / * Ensuite, nous envoyons la requête pour communiquer avec la base de données. Pour renvoyer le result_message au flash, nous utilisons la fonction exit. * / mysql_query ($ sql) ou exit ("result_message = Error"); exit ("result_message = Success");

Étape 20: script PHP terminé

 

Étape 21: fichier ActionScript terminé

 package import flash.display. *; importer flash.events. *; importer flash.net. *; public class register étend MovieClip public function register (): void / * Nous devons d'abord attribuer un curseur de survol au bouton du registre. Nous faisons cela en utilisant la propriété buttonMode. * / register_button.buttonMode = true; / * donne au bouton de registre un événement de souris * / register_button.addEventListener (MouseEvent.MOUSE_DOWN, checkForm); / * ne définit aucun caractère dans tous les champs * / username_text.text = ""; password_text.text = ""; userbio_text.text = "";  / * valider l'entrée * / fonction publique checkForm de l'utilisateur (e: MouseEvent): void if (username_text.text! = "" && password_text.text! = "" && userbio_text.text! = "") sendForm () ;  else result_text.text = "VEUILLEZ REMPLIR TOUS LES CHAMPS";  / * fonction utilisée pour envoyer le formulaire * / fonction publique sendForm (): void / * nous utilisons la classe URLVariables pour stocker nos variables php * / var phpVars: URLVariables = new URLVariables (); phpVars.username = username_text.text; phpVars.password = password_text.text; phpVars.userbio = userbio_text.text; / * Nous utilisons la méthode URLRequest pour obtenir l’adresse de notre fichier php et joindre les vars php. * / var urlRequest: URLRequest = new URLRequest ("php / register.php"); / * la méthode POST est utilisée ici afin que nous puissions utiliser la fonction $ _POST de php afin de recevoir nos variables php. * / urlRequest.method = URLRequestMethod.POST; / * cela attache nos variables php à la requête url * / urlRequest.data = phpVars; / * nous utilisons la classe URLLoader pour envoyer la requête URLVariables au fichier php * / var urlLoader: URLLoader = new URLLoader (); urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES; / * exécute la fonction une fois que le fichier php a communiqué avec flash * / urlLoader.addEventListener (Event.COMPLETE, showResult); / * nous envoyons la demande au fichier php * / urlLoader.load (urlRequest);  / * fonction pour afficher le résultat * / fonction publique showResult (e: Event): void result_text.text = "" + e.target.data.result_message; 

Conclusion

Maintenant, vous pouvez aller à la démo, vous inscrire, puis aller à la page de connexion et l'essayer. Merci d'avoir lu cette série en deux parties!