HOME
 
 
home corporate info portfolio
Web production Software development Hosting Networking Training Multimedia & Graphic lab
 
 
DISPLAY ARTICLES SORTING BY
   
  Programming
  Networking
  Design Style
* you are here
  Introduzione
  Esempio
Lato Client - Richiesta Login
  La connessione
  Validazione del login - Lato Server
  Cifrature - Metodi ed Algoritmi
  Lo script in PHP
AUTHOR PROFILE
  Go to the author info GO TO GHE AUTHOR INFO
  Mail to the author MAIL TO GHE AUTHOR
BOOKMARKS THE AUTHOR
  SourceForge SourceForge
 
the largest repository of Open Source code and applications available on the Internet. SourceForge.net provides free services to Open Source developers.
 
  Freshmeat Freshmeat
 
freshmeat maintains the Web's largest index of Unix and cross-platform software, themes and related "eye-candy", and Palm OS software. Thousands of applications, which are preferably released under an open source license, are meticulously cataloged in the freshmeat database.
 
  CERT® CERT
 
The CERT® is a center of Internet security expertise, located at the Software Engineering Institute, a federally funded research and development center.
 
  OpenBSD OpenBSD
 
The OpenBSD project produces a FREE, multi-platform 4.4BSD-based UNIX-like operating system
 
 


FOCUS ON
PROGRAMMING
print document
download PDF
Flash & Php – Rendere sicure le autenticazioni.
Parte III
Lato Client - Richiesta Login
Un utente che deve effettuare l’autenticazione su un sistema, ovviamente deve disporre di ‘user’ e ‘password’ poiché tramite questi due valori viene riconosciuto dal sistema che gli consente quindi l’accesso alle informazioni di sua competenza. Il filmato Flash allegato a questo documento non fa altro che chiedere a l’utente di inserire la sua user e la sua password per poi inviarle al server e aspettare da quest’ultimo una risposta contenente l’esito dell’autenticazione che può essere o il fallimento del login, o l’informazione riservata di quell’utente. Vediamo nel dettaglio quali sono i passi da seguire:

Il client richiede ‘user’ e ‘password’ all’utente
Il client le invia al server
	Il server le confronta con quelle degli utenti fidati
	Se trova una corrispondenza
		Invia l’informazione riservata
	Se non la trova
		Invia un codice di errore
Il client riceve la risposta del server
Se è un codice di errore 
	lo comunica all’utente e chiede di riprovare
Se non è un codice di errore
	Visualizza l’informazione riservata
Fine

Tutto questo potrebbe essere eseguito anche da un semplice form in HTML, ma noi lo realizzeremo in Flash 4 e 5. Chi non fosse interessato al Flash può saltare questa spiegazione e utilizzare il form HTML (login.html) allegato a questo documento.

Si faccia riferimento al file allegato (login4.fla) per quanto riguarda l’interfaccia mentre qui esamineremo nel dettaglio il codice (Action Script) che svolgerà il compito sopra descritto:

Per comunicare all’utente lo stato del login, giusto per dare un tocco di professionalità, utilizzeremo un movie clip chiamato ‘messaggi’ nel quale ci saranno appunto tutti i messaggi come la verifica, l’errore o il TimeOut del server, noi ci limiteremo a pilotarlo dicendogli di volta in volta su quale messaggio (frame) posizionarsi.


Scena Principale:

Nel primo frame:
Si creano/azzerano le variabili da utilizzare;
Si consente l’inserimento di user e password nei relativi campi di testo dinamico;
Si attende la pressione del tasto login;

On (Release) 
// alla pressione del tasto
      If (user eq "" or password eq "")
      // ci si accerta che le variabili non siano vuote
          Begin Tell Target ("/messaggi")
          // nel caso siano vuote si richiede di completarle
                Go to and Stop ("valorimancanti")
          End Tell Target
      Else
          Begin Tell Target ("/messaggi")
          // se tutto è ok si visualizza un messaggio
                Go to and Stop ("verifica")
                // di ‘verifica in  corso’
          End Tell Target
          Load Variables ("http://www.medialeader.it/login.php", 0, vars=POST)
          // con questa istruzione si inviano con POST tutti campi allo script php
          // e si caricheranno i valori che tale script restituirà nel filmato al livello 0
          Set Variable: "timeout" = gettimer
          // si inizializza il contatore di timeout
          Play
          // si dice al filmato di andare in play
      End If
End On
Nel terzo frame:
Per arrivare a questo frame vuol dire che è stato premuto il login, che le variabili erano valide e quindi siamo in attesa di una risposta da parte del server.
In questo frame si esegue un controllo per evitare che in una situazione
di TimeOut (il server non risponde) l’utente aspetti inutilmente.
If (gettimer-timeout > 5000)			
// Se il timeout supera i 5 secondi
      Go to and Stop (1)			
      // si ricomincia tutto dall’inizio
      Begin Tell Target ("/messaggi")		
      // e si comunica all’utente la mancata risposta
            Go to and Play ("timeout")
      End Tell Target
Else
      If (reply eq "")				
      // se non arriva la risposta ma non si sono superati i 5 secondi
            Go to and Play ("loop")		
            // si attende ancora mandando il filmato in loop
      End If
End If
Nel quarto frame:
Per arrivare a questo frame vuol dire che il caricamento è andato a buon fine e abbiamo ricevuto una risposta, quindi non ci resta che controllarla:
If (reply eq "" or reply eq "false")
// Se la risposta è negativa
      Go to and Stop (1)			
      // torniamo all’inizio
      Begin Tell Target ("/messaggi")
      // e comunichiamo l’errore	
            Go to and Stop ("errore")
      End Tell Target
End If					
// Altrimenti il filmato proseguirà normalmente
Nel quinto frame:
Per arrivare a questo frame vuol dire che la risposta del server contiene un’informazione e quindi ci limiteremo a dare il benvenuto e a visualizzarla:
Set Variable: "benvenuto" = "Benvenuto "&user
Stop
  previous
1 2 3 4 5 6 7
 next  
  Introduzione
  Esempio
Lato Client - Richiesta Login
  La connessione
  Validazione del login - Lato Server
  Cifrature - Metodi ed Algoritmi
  Lo script in PHP
   
   * you are here
print document
download PDF

Web production Software development Hosting Networking Training
Multimedia & Graphic lab
privacy policy corporate info portfolio