Share |

lunedì 21 febbraio 2011

PHP: ricavare la URL della pagina corrente

Oggi mostrerò un piccolo ed utilissimmo script PHP per recuperare l'URL, o l'indirizzo http, della risorsa corrente in modo dinamico ed infallibile.

Gli script PHP, come risaputo, girano lato server e quest'ultimo mette a disposizione tutte le informazioni necessarie, vediamo di seguito quali informazioni ci servono e come recuperarle con gli oggetti standard di PHP.

Sapere dove si trova un utente nel flusso applicativo dà molteplici vantaggi: dal punto di vista dei controlli di sicurezza come per la gestione della navigazione utente nell'ambito applicativo.

L'oggetto $_SERVER

$_SERVER è un array_associativo: come i più utilizzati $_GET e $_POST, anch'esso conserva un set di informazioni abbinate, o associate, a chiavi.

Le informazioni sono quindi conservate nel array con la forma di coppie di chiavi/valori.

Per recuperare le informazioni necessarie allo scopo dell'articolo, userò un ristretto set di chiavi associative: HTTPS, SERVER_PORT, SERVER_NAME e REQUEST_URI.

Di seguito un breve ripasso:

  • la chiave HTTPS indica se è attivo il protocollo di sicurezza HTTPS;
  • la chiave SERVER_PORT indica la porta su cui è attivo il servizio HTTP del server, generalmente la porta HTTP standard è la numero 80;
  • la chiave SERVER_NAME risolve l'indirizzo IP del server restituendone il nome;
  • la chiave REQUEST_URI restituisce il nome della risorsa corrente, con tanto di querystring a seguito;

Dopo questa breve rifrescata riguardo il significato delle chiavi da utilizzare, passo a mostrare nella sua immensa brevità lo script.

Per mia comodità di utilizzo, ho incapsulato la logica in un metodo statico di una utility class PHP.

class UrlUtils{

  /**
   * Restituisce l'indirizzo della risorsa HTTP corrente.
   * 
   * @return String L'indirizzo HTTP dell'URL corrente.
   */
  public static function getCurrentPageURL(){
    $pageURL = 'http';

    if (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == "on") {
      $pageURL .= "s";
    }

    $pageURL .= "://";

    if ($_SERVER["SERVER_PORT"] != "80") {
      $pageURL .= $_SERVER["SERVER_NAME"].":"
            .$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
    }
    else {
      $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
    }

    return $pageURL;    
  }

}

Bhè, la semplicità e la brevità dello script sono a dir poco disarmanti: direi che non c'è bisogno di aggiungere altro.

Alla prossima,
MA.

domenica 6 febbraio 2011

BlackBerry: Tips & Shortcuts

In questo articolo propongo una lista di scorciatoie, o shortcuts, e truccheti, o tips, per muoversi agilmente e velocemente all'interno dei menù delle applicazioni più importanti ed utilizzate: il centro messaggi, il calendario, l'orologio, il BlackBerry Messenger ed altre ancora.

Per chi possiede uno smartphone BlackBerry in lingua italiana le scorciatoie standard spesso non funzionano e questo perchè riportate in lingua anglosassone. Infatti per produrre l'elenco che segue ho tradotto le varie shortcuts applicazione per applicazione.

Come consigliato dal supporto ufficiale BlackBerry, e precedentemente riportato in questo utile articolo, utilizzare le scorciatoie da tastiera è un atteggiamento che contribuisce a preservare la carica della batteria del proprio device.

Di seguito l'elenco di shortcuts suddiviso per applicazione:

Centro Messaggi

  • Per inviare, o mostrare, la propria versione di OS ed il proprio modello digitare miaver+SPACE. Nel mio caso appare 9700/5.0.0.351;
  • Per inviare, o mostrare, il proprio PIN digitare miopin+SPACE. Nel mio caso appare pin: XXXXXXXX;
  • Dopo aver ri-aperto un'email premendo g si viene portati nel punto esatto in cui si era abbandonata la lettura;
  • Nella home del centro messaggi premere:
    • s per visualizzare la cartella dei messaggi salvati;
    • b per scorrere velocemente la lista dei messagi fino in basso;
    • c per creare una nuova email;
    • d per scorrere velocemente la lista dei messagi fino in alto, ovvero al day odierno;
    • i per risalire velocemente la lista dei messaggi giorno per giorno, posizionandosi sull'intestazione con la data precedente;
    • t per scorrere velocemente la lista dei messaggi giorno per giorno, posizionandosi sull'intestazione con la data successiva;
    • u per visualizzare i messaggi non ancora letti, o unread;
    • e per visualizzare i messaggi con errori di consegna;
    • j e k per visualizzare l'elenco dei thread relativi al messaggio su cui si è posizionati;
    • ALT+m per visualizzare solo la lista dei messaggi MMS;
    • ALT+v per visualizzare solo la lista dei messaggi vocali presenti nella segreteria telefonica;
    • ALT+f per visualizzare solo la lista dei messaggi con contrassegni;
    • ALT+s per visualizzare solo la lista dei messaggi inviati ed entrare in modalità invia SMS a;
    • ALT+o per visualizzare la lista completa di tutti i tipi di messaggi inviati, email e chat compresi;
    • ALT+i per visualizzare la lista completa di tutti i tipi di messaggi arrivati, email e chat compresi;
    • ALT+t per visualizzare la lista completa di tutte le chiamate effettuate,ricevute e perse;

Video Camera

  • Avviare la video camera e premere SPACE per attivare il flash e utilizzare il BlackBerry come fonte di illuminazione;

Rubrica

  • Per filtrare velocemente i contatti digitare l'iniziale del nome e quella del cognome separate da SPACE;

BlackBerry Messenger

Dalla home dell'applicazione premere:

  • SPACE per scorrere velocemente i rami che contengono le chat, i contatti, i gruppi e gli inviati;
  • INVIO per esplodere/comprimere velocemente i rami che contengono le chat, i contatti, i gruppi e gli inviati;

Calendario

Dalla home dell'applicazione premere:

  • m per passare immediatamente alla visualizzazione mensile;
  • s per passare immediatamente alla visualizzazione settimanale;
  • g per passare immediatamente alla visualizzazione giornaliera;
  • d per passare immediatamente alla visualizzazione diario o agenda;
  • n per creare un nuovo appuntamento;
  • f per muoversi immediatamente ad una data precisa del calendario;
  • o per muoversi immediatamente alla data odierna, cioè oggi;
  • i per muoversi immediatamente alla settimana successiva;
  • t per muoversi immediatamente alla settimana precedente;
  • INVIO per visualizzare e modificare i dettagli dell'appuntamento selezionato;
  • DEL per eliminare l'appuntamento selezionato;

Orologio

Dalla home dell'applicazione premere:

  • b per attivare/disattivare la modalità comodino;
  • s per attivare la modalità cronometro;
  • c per tornare alla home dell'applicazione da qualunque altra modalità attiva;



Personalmente sono un utilizzatore assiduo di alcune scorciatoie del centro messaggi, del calendario e del filtraggio rapido dei contatti, le altre non mi capita spesso di utilizzarle e quindi faccio fatica ad assimilarle.

Se tu conosci altre scorciatoie o trucchi utili puoi contribuire a migliorare questo elenco aggiungendo un commento all'articolo.

Alla prossima,
MA.