O adresă IP (IP Address) este un număr unic atribuit fiecărui dispozitiv conectat la Internet. Din diferite motive, poate fi utilă obținerea adresei IP a utilizatorului, cum ar fi blocarea unui utilizator de spam în cadrul unei aplicații de chat, de exemplu. În acest tutorial, vă vom arăta cum să obțineți și să afișați adresa IP a utilizatorului utilizând PHP și ActionScript.
Să aruncăm o privire asupra rezultatului final pe care îl vom strădui:
Notă: acest SWF este doar pentru a arăta interfața, nu va afișa IP real deoarece nu este conectat la un server PHP.
Scriptul PHP și SWF pe care le creați în acest tutorial pot fi utilizate împreună pentru a afișa adresa IP reală a utilizatorului.
Veți învăța cum să scrieți și să utilizați codul php pentru a prelua datele generate de server utilizând ActionScript 3 și apoi să le utilizați în aplicație.
Lansați Flash și creați un nou document. Setați dimensiunea scenei la 540x300px și rata de cadre la 24fps.
Aceasta este interfața pe care o vom folosi: un fundal simplu, un buton pentru a apela funcția care va primi datele și câteva TextFields pentru a afișa datele obținute de pe serverul web.
Continuați cu pașii următori pentru a vedea cum se face.
Selectați Rectangle Tool (R), creați un dreptunghi înalt de 540px, 300px și umpleți-l cu acest gradient radial # 424A57, # 232730. Centurați dreptunghiul pentru a se potrivi scenei.
Un buton va fi folosit pentru a apela funcția care va citi fișierul PHP de pe serverul web.
Utilizați instrumentul Oval (O) pentru a crea un cerc 64x64px #EEEEEE și pentru ao centra pe scenă.
Pentru a crea săgeata în mijloc, vom folosi instrumentul PolyStar (clic și țineți apăsat butonul Rectangle Tool și un meniu contextual va apărea unde puteți selecta instrumentul), cu instrumentul selectat, mergeți la panoul Proprietăți și faceți clic pe butonul Opțiuni.
Setați numărul de fețe la 3 și faceți clic pe OK.
Creați un triunghi de 35x19 pixeli și folosiți instrumentul Rectangle (R) pentru a desena un dreptunghi de 19x18 pixeli. Aliniați-le pentru a forma o săgeată.
Umpleți săgeata cu o altă culoare, plasați-o în centrul cercului și Break it apart (Cmd + B), aceasta va tăia forma săgeții din cerc.
Transformați forma într-un buton și denumiți-o getButton.
Selectați instrumentul Text (T) și creați un câmp text dinamic, acesta este formatul utilizat în exemplul: DIN Bold, 70pt, #EEEEEE. Folosind același instrument creați un alt câmp, de data aceasta este un câmp static care va afișa "Adresa dvs. IP:" folosit ca feedback pentru utilizator.
Centrează câmpurile de text după cum se arată în imagine:
Denumiți câmpul de text dinamic ipField.
Veți dori probabil să utilizați un font bun care nu are fiecare utilizator, astfel încât pentru a vă asigura că utilizatorul vede ceea ce dorim ca el să vadă, trebuie să încorporăm fontul.
Selectați dinamicul TextFields și mergeți la Proprietăți panou, Caracter și apăsați tasta Încorporare… buton.
Va apărea o nouă fereastră, selectați caracterele pe care doriți să le încorporați (în acest caz cifre) și faceți clic pe OK.
Veți observa în Demo faptul că TextFields și Butonul par să aibă o anumită teșitură, acesta este un efect de tip letterpress simplu.
Pentru a da câmpurile de text și apăsați acest aspect, duplicați formele deja pe scenă și folosiți săgețile de la tastatură mutați-l cu 1px în sus. Modificați culoarea la # 1B1E25 pentru a finaliza efectul.
PHP este un limbaj puternic de scripting care permite aplicației dvs. să ruleze codul pe partea serverului, în acest caz vom obține adresa IP a utilizatorului utilizând un script într-un server web.
Deschideți editorul PHP preferat (orice editor de text va face lucrarea) și scrieți următoarele rânduri:
< ?php //Opening Tag, tell PHP server to interpret the following lines as php code $ip = $_SERVER['REMOTE_ADDR']; //Sets the ip variable, its value is a method that will get the user ip echo $ip; //The echo keyword outputs the assigned string, in this case the ip variable ? > // Închideți eticheta
Acest cod îi spune serverului să primească adresa de la distanță a vizitatorului (IP) și apoi returnează adresa obținută, care este stocată în $ ip variabil.
Un server Web compatibil PHP este necesar pentru a rula aplicația cu succes; în zilele noastre, aproape orice server web suportă și a instalat PHP, astfel încât ar fi rar dacă dvs. nu (cu excepția gazde web gratuit).
Salvați fișierul PHP ca script.php și încărcați-l pe serverul dvs. web, amintiți-vă că vom apela acest fișier mai târziu folosind ActionScript, așa că nu uitați calea în care l-ați încărcat.
Acum este timpul pentru limbajul nostru preferat ...
Creați o nouă clasă ActionScript 3.0 și salvați-o ca Main.as în dosarul dvs. de clasă.
pachet
Cuvântul cheie pentru pachete vă permite să vă organizați codul în grupuri care pot fi importate de alte scripturi, este recomandat să le denumiți începând cu o literă mică și să utilizați intercaps pentru cuvinte ulterioare (de exemplu: myClasses). Este, de asemenea, obișnuit să le numiți utilizând adresa URL a companiei dvs., astfel încât http://mycompany.com ar folosi: com.mycompany.classesType.myClass.
În acest exemplu, folosim o singură clasă, deci nu este necesar să creați un folder de clase sau să setați un pachet.
Acestea sunt clasele pe care trebuie să le importăm pentru ca clasa noastră să funcționeze import directiva face ca clasele și pachetele definite extern să fie disponibile pentru codul dvs..
import flash.display.Sprite; import flash.net.URLLoader; import flash.net.URLRequest; importul flash.events.Event; importul flash.events.MouseEvent; import fl.transitions.Tween; import fl.transitions.easing.Strong;
extinde cuvântul cheie definește o clasă care este o subclasă a unei alte clase. Subclasa moștenește toate metodele, proprietățile și funcțiile, astfel încât le putem folosi în clasa noastră.
clasa publică principală extinde Sprite
În acest exemplu, Clasa principală moștenește toate metodele și proprietățile Clasa Sprite.
Vom folosi două variabile. Adăugați această declarație de mai jos:
var urlLoader: URLLoader = noul URLLoader (); var tween: Tween;
URLLoader creează o instanță a clasei URLLoader, care va ocupa încărcarea fișierului PHP extern, în timp ce Tween declară un obiect care va folosi clasa Tween pentru animație.
Constructorul este o funcție care rulează atunci când un obiect este creat dintr-o clasă, acest cod este primul care se execută atunci când faceți o instanță a unui obiect sau executați utilizând Clasa de documente.
funcția publică Main (): void
Următorul rând adaugă un ascultător butonului din stadiu pentru a reacționa pe un mouse-ul MOUSE_UP.
getButton.addEventListener (MouseEvent.MOUSE_UP, getIP);
Acest cod se execută atunci când butonul este apăsat, încarcă pagina php pe care am scris-o mai devreme pe server și sună o funcție când încărcarea este completă. De asemenea, se ocupă de animația butonului.
funcția privată getIP (e: MouseEvent): void urlLoader.load (nou URLRequest ("http://www.mywebsite.com/script.php")); urlLoader.addEventListener (Event.COMPLETE, showIP); tween = Tween nou (getButton, "y", Strong.easeOut, getButton.y, 340, 1, true);
Următoarea funcție este executată atunci când fișierul PHP este încărcat complet. Acesta afișează datele recepționate (adresa IP pe care le-am repetat) folosind TextFields în stadiu.
funcția privată showIP (e: Event): void ipField.text = e.target.data; ipFieldPressed.text = e.target.data;
Du-te înapoi la FLA și în Panoul Proprietăți> Publicați secțiunea> Câmp clasă, adăuga Principal ca valoare. Aceasta va lega această clasă ca fiind Clasa de documente.
Acum știți cum să obțineți și să utilizați adresa IP a utilizatorului în filmul dvs. Flash, să experimentați și să implementați acest exemplu în propriile proiecte!
Sper că ți-a plăcut acest tutorial, mulțumesc pentru lectură!