Intro

Il progetto è volto alla creazione di un sito web completo per una struttura B&B o simile. Attraverso questo sito per l’utente normale è possibile:
− Registrarsi.
− Visualizzare i giorni disponibili alla prenotazione e quelli invece occupati.
− Prenotare.
− Visualizzare le eventuali prenotazioni e cancellarle.
− Modificare i propri dati utente.
Per l’amministratore, oltre le già elencate caratteristiche, è possibile:
− visualizzare tutte le prenotazioni effettuate nella struttura compresi i dati del cliente.
− Modificare o eliminare le prenotazioni.

Il sito è raggiungibile cliccando QUI !

Server Side

Dal punto di vista Server-Side il sito si divide principalmente in due parti.
Una parte in cui l’applicazione web è sviluppata come un’applicazione web classica ovvero usando script in php che fanno query e che utilizzano le session. In questo modo gestisco la registrazione di un nuovo utente, la modifica dei dati di un utente e il log in.
Un’altra parte invece è sviluppata con le RESTful API quindi con lo sviluppo di metodi raggiungibili mediante specifici URL che riescono a ricevere ed a inviare informazioni al server senza conservarne lo stato (stateless), quindi dove ogni comunicazione con il server è indipendente dalle altre. Questi metodi vengono richiamati da funzioni Javascript, ricevono infomazioni dal server sotto forma di oggetto json e compongono dinamicamente la pagina.
Ho deciso di usare quest’approccio sulla parte che riguarda le prenotazioni e per poche funzioni adibite solo alla visualizzazione di alcuni dati utente.
I metodi che ho sviluppato sono i seguenti:

  1. GET che si comporta diversamente in base a come viene richiamato, ovvero:
    − “Api.php/prenotazione/mese/anno” restituisce tutte le prenotazioni di quel mese/anno.
    − “Api.php/prenotazione/mese” restituisce tutte le prenotazioni di quel mese indipendentemente dall’anno.
    − “Api.php/prenotazione/” restituisce tutte le prenotazioni.
    − “Api.php/users/id” restituisce nome, cognome, email dell’ utente corrispondente all’id indicato.
    − “Api.php/users/” restituisce nome, cognome, email di tutti gli utenti.
  2. GETADMIN restituisce tutto il contenuto delle tabelle “users”, “prenotazione”.
  3. PUT modifica i dati di una prenotazione.
  4. POST inserisce la prenotazione.
  5. DELETE rimuove la prenotazione.

Descrizione sito e funzioni

Homepage

La pagina principale del sito descrive la struttura mostrandone i servizi disponibili, le informazioni di contatto, descrivendo il luogo e mostrando una mappa per condurre il cliente interessato nel posto giusto. Aprendo la pagina iniziale notiamo una barra di navigazione scritta in HTML che si serve anche del PHP per capire se l’utente è loggato o meno andando a vedere se la la variabile “email” nella session è stata impostata. Nel caso fosse loggato mostrerebbe delle voci in più per accedere all’area privata e per effettuare il log out. Il resto della pagina è solo HTML esclusione fatta per la mappa inserita sfruttando le API di Google Maps.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *