Ottieni l'indirizzo IP dell'utente usando PHP e ActionScript 3

Un indirizzo IP (indirizzo IP) è un numero univoco assegnato a ogni dispositivo connesso a Internet. Per diversi motivi, può essere utile ottenere l'indirizzo IP dell'utente, ad esempio il blocco di un utente di spammer in un'applicazione di chat. In questo tutorial, ti mostrerò come ottenere e visualizzare l'indirizzo IP dell'utente usando PHP e ActionScript.


Anteprima del risultato finale

Diamo un'occhiata al risultato finale su cui lavoreremo:

Nota: questo SWF è solo per mostrare l'interfaccia, non mostrerà l'IP reale perché non è connesso a un server PHP.

Lo script PHP e SWF che crei in questo tutorial possono certamente essere usati insieme per visualizzare l'effettivo indirizzo IP dell'utente.


Passaggio 1: breve panoramica

Imparerai come scrivere e utilizzare il codice php per recuperare i dati generati dal server utilizzando ActionScript 3 e quindi utilizzarli nella tua applicazione.


Passaggio 2: impostare il file Flash

Avvia Flash e crea un nuovo documento. Imposta la dimensione dello stage su 540x300px e la frequenza fotogrammi su 24 fps.


Passaggio 3: interfaccia

Questa è l'interfaccia che useremo: uno sfondo semplice, un pulsante per chiamare la funzione che otterrà i dati e alcuni campi di testo per visualizzare i dati ottenuti dal server web.

Continua con i prossimi passi per vedere come è fatto.


Passaggio 4: sfondo

Seleziona lo strumento Rettangolo (R), crea un rettangolo alto 540px largo 300px e riempilo con questo gradiente radiale # 424A57, # 232730. Centra il rettangolo per adattarlo al palco.


Passaggio 5: pulsante di azione

Verrà utilizzato un pulsante per chiamare la funzione che leggerà il file PHP dal server web.

Utilizzare lo strumento Ovale (O) per creare un cerchio #EEEEEE 64x64px e centrarlo sul palco.

Per creare la freccia nel mezzo utilizzeremo lo strumento PolyStar (fai clic e tieni premuto il pulsante Strumento rettangolo e apparirà un menu contestuale in cui puoi selezionare lo strumento), con lo strumento selezionato, vai al pannello Proprietà e fai clic il pulsante Opzioni.

Impostare il numero di lati su 3 e fare clic su OK.

Crea un Triangolo 35x19px e usa lo Strumento Rettangolo (R) per disegnare un rettangolo 19x18px. Allinearli per formare una freccia.

Riempi la freccia con un colore diverso, posizionala al centro del cerchio e rompili a parte (Cmd + B) questo taglierà la forma della freccia nel cerchio.

Converti la forma in un pulsante e nominalo getButton.


Passaggio 6: campi di testo

Seleziona lo strumento Testo (T) e crea un campo di testo dinamico, questo è il formato utilizzato nell'esempio: DIN Bold, 70pt, #EEEEEE. Utilizzando lo stesso strumento crea un altro campo, questa volta è un campo statico che visualizzerà "Il tuo indirizzo IP:" usato come feedback per l'utente.

Centrare i campi di testo come mostrato nell'immagine:

Assegna un nome al campo di testo dinamico ipField.


Passaggio 7: incorporare il carattere

Probabilmente ti piacerà usare un font di bell'aspetto che non tutti gli utenti avranno, quindi per assicurarti che l'utente veda ciò che vogliamo che lui veda, dobbiamo incorporare il nostro font.

Seleziona i tuoi campi di testo dinamici e vai al Proprietà pannello, Personaggio sezione e premere il Incorporare… pulsante.

Verrà visualizzata una nuova finestra, selezionare i caratteri che si desidera incorporare (in questo caso i numeri) e fare clic su OK.


Step 8: un piccolo dettaglio

Nella Demo si noterà che i campi di testo e il pulsante sembrano avere una smussatura, questo è un semplice effetto di stampa tipografica.

Per dare ai campi di testo e al pulsante questo aspetto, duplica le forme già sul palco e usando le frecce della tastiera spostalo di 1px in su. Cambia il colore in # 1B1E25 per completare l'effetto.


Passaggio 9: PHP

PHP è un potente linguaggio di scripting che consente all'applicazione di eseguire codice sul lato server, in questo caso otterremo l'indirizzo IP dell'utente usando uno script in un server web.

Apri il tuo editor PHP preferito (qualsiasi editor di testo farà il lavoro) e scrivi le seguenti righe:

 < ?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 ? > // Chiudi tag

Questo codice indica al server di ottenere l'indirizzo remoto (IP) del visitatore e quindi restituisce l'indirizzo ottenuto, che è memorizzato nel file $ ip variabile.


Passaggio 10: server

Per eseguire correttamente l'applicazione è necessario un server Web compatibile con PHP; al giorno d'oggi, quasi tutti i server Web supportano e hanno installato PHP, quindi sarebbe raro se il tuo non lo facesse (tranne che per gli host web gratuiti).

Salva il file PHP come script.php e caricarlo sul tuo server web, ricorda che chiameremo questo file in un secondo momento utilizzando ActionScript, quindi non dimenticare il percorso in cui lo hai caricato.


Passaggio 11: ActionScript

Ora è il momento della nostra lingua preferita ...

Crea una nuova classe ActionScript 3.0 e salvala come Main.as nella tua cartella di classe.


Passaggio 12: pacchetto

pacchetto 

La parola chiave package ti consente di organizzare il tuo codice in gruppi che possono essere importati da altri script, si consiglia di nominarli partendo da una lettera minuscola e utilizzare gli intercapori per le parole successive (ad esempio: le mie classi). È anche comune denominarli utilizzando l'URL del sito Web della tua azienda, quindi http://mycompany.com utilizzerà: com.mycompany.classesType.myClass.

In questo esempio, stiamo usando una singola classe, quindi non c'è davvero bisogno di creare una cartella di classi o di impostare un pacchetto.


Step 13: Direttiva sull'importazione

Queste sono le classi che dovremo importare affinché la nostra classe funzioni, il importare direttiva rende disponibili classi e pacchetti definiti esternamente al codice.

import flash.display.Sprite; import flash.net.URLLoader; import flash.net.URLRequest; import flash.events.Event; import flash.events.MouseEvent; importare fl.transitions.Tween; importare fl.transitions.easing.Strong;

Passaggio 14: dichiarare ed estendere la classe

Il si estende keyword definisce una classe che è una sottoclasse di un'altra classe. La sottoclasse eredita tutti i metodi, le proprietà e le funzioni, in questo modo possiamo usarli nella nostra classe.

 public class Main estende Sprite 

In questo esempio, il Classe principale eredita tutti i metodi e le proprietà del Classe Sprite.


Passaggio 15: variabili

Faremo uso di due variabili. Aggiungi questo sotto la dichiarazione della classe:

var urlLoader: URLLoader = new URLLoader (); var tween: Tween;

URLLoader crea un'istanza della classe URLLoader, che gestirà il carico del file PHP esterno, mentre gemello dichiara un oggetto che utilizzerà la classe Tween per l'animazione.


Passaggio 16: costruttore

Il costruttore è una funzione che viene eseguita quando viene creato un oggetto da una classe, questo codice è il primo ad essere eseguito quando si crea un'istanza di un oggetto o viene eseguita utilizzando la classe documento.

 funzione pubblica Main (): void 

Passaggio 17: ascolta l'evento del mouse

La riga seguente aggiunge un listener al pulsante nello stage per rispondere a un mouseEvent MOUSE_UP.

getButton.addEventListener (MouseEvent.MOUSE_UP, getIP);

Passaggio 18: Ottieni IP

Questo codice viene eseguito quando viene premuto il pulsante, carica la pagina PHP che abbiamo scritto in precedenza sul server e chiama una funzione quando il caricamento è completo. Gestisce anche l'animazione del pulsante.

 funzione privata getIP (e: MouseEvent): void urlLoader.load (new URLRequest ("http://www.mywebsite.com/script.php")); urlLoader.addEventListener (Event.COMPLETE, showIP); tween = new Tween (getButton, "y", Strong.easeOut, getButton.y, 340, 1, true); 

Passaggio 19: ricezione e visualizzazione dei dati

La funzione successiva viene eseguita quando il file PHP è completamente caricato. Visualizza i dati ricevuti (l'indirizzo IP che abbiamo "echo") utilizzando i campi di testo nello stage.

funzione privata showIP (e: Event): void ipField.text = e.target.data; ipFieldPressed.text = e.target.data; 

Passaggio 20: Classe documento

Torna al FLA e nel Pannello Proprietà> sezione Pubblica> campo Classe, Inserisci Principale come valore. Questo collegherà questa classe come Documento di classe.


Conclusione

Ora sai come ottenere e utilizzare l'indirizzo IP dell'utente nel tuo filmato Flash, sperimentare e implementare questo esempio nei tuoi progetti!

Spero che questo tutorial ti sia piaciuto, grazie per la lettura!