Developed a book reservation website that will allow users to manage their account, search for and reserve library books. The technology stack utilised in this website are PHP, MySQL, HTML & CSS.
- Users can login using session identifications
- Login details are verified against saved information in the database for registered user
Validation of user registration includes:
- Usernames must be unique, no duplicate usernames can exist in the database
- Passwords must be minimum 6 characters long & must be entered twice to confirm that masked password is correct in both entries
- Mobile phone numbers must be 10 characters long and numeric only
Users can search (partial or full) filter for a book by:
- Author
- Title
- Author and Title
- Category
The details of each book are displayed including:
- ISBN
- Book Title
- Author
- Edition
- Year
- Reservation Status
- User can reserve a book if not reserved by another user
- View list of all books reserved
- Delete reserve book from account
Terminates the user's session so that nobody can access their account information. Once logged out, a user must login again to access the website.
To set up the database:
-
On XAMPP Control Panel, start Apache and MySQL
-
On your browser, type the following command on your browser address:
http://localhost/phpmyadmin/
-
Go to "Import" --> "Choose File" and upload the sql file named "novella.sql"
To set up the website:
-
On your local machine, Locate
"xampp/htdocs"
and add the folder "Code" to the directory -
To run the website, type the following command on your browser address:
http://localhost/Code/
I then made some wireframes or Low Fidelity Prototype to visualise how the website will come to exist. Using the website www.wireframe.cc, I designed the website layouts as shown:
The logo was created using https://designapp.io/app.
Hex | Result |
---|---|
#0cd316 #017bf8 |
Color | Hex |
---|---|
Primary Color | #000000 |
Background Color | #FFFFFF |
Accent Color | #0CD60E |
Text Color | #000000 |
The following tables were created for the database:
Stores user registration and password details. Each user is uniquely identified by a user name.
UserName | Password | FirstName | LastName | AddressLine1 | AddressLine2 | City | Telephone | Mobile |
---|---|---|---|---|---|---|---|---|
alanjmckenna | t1234s | Alan | McKenna | 38 Cranley Road | Fairview | Dublin | 9998377 | 856625567 |
joecrotty | kj7899 | Joseph | Crotty | Apt 5 Clyde Road | Donnybrook | Dublin | 8887889 | 876654456 |
tommy100 | 123456 | tom | behan | 14 Hyde Road | dalkey | dublin | 9983747 | 876738782 |
Storing all book details, indexed by ISBN number
ISBN | BookTitle | Author | Edition | Year | Category | Reserved |
---|---|---|---|---|---|---|
093-403992 | Computers in Business | Alicia Oneill | 3 | 1997 | 003 | N |
23472-8729 | Exploring Peru | Stephanie Birchi | 4 | 2005 | 005 | N |
237-34823 | Business Strategy | Joe Peppard | 2 | 2002 | 002 | N |
23u8-923849 | A guide to nutrition | John Thorpe | 2 | 1997 | 001 | N |
2983-3494 | Cooking for children | Anabelle Sharpe | 1 | 2003 | 007 | N |
82n8-308 | Computers for idiots | Susan O'Neill | 5 | 1998 | 004 | N |
9823-23984 | My life in picture | Kevin Graham | 8 | 2004 | 001 | N |
9823-2403-0 | DaVinci Code | Dan Brown | 1 | 2003 | 008 | N |
9823-98345 | How to cook Italian food | Jamie Oliver | 2 | 2005 | 007 | Y |
9823-98487 | Optimising your business | Cleo Blair | 1 | 2001 | 002 | N |
98234-029384 | My ranch in Texas | George Bush | 1 | 2005 | 007 | Y |
988745-234 | Tara Road | Maeve Binchy | 4 | 2002 | 008 | N |
993-004-00 | My life in bits | John Smith | 1 | 2001 | 001 | N |
9987-0039882 | Shooting History | Jon Snow | 1 | 2003 | 001 | N |
Indicating the list of book categories (fiction, business etc). It is linked to the Books table by category code
CategoryID | CategoryDescription |
---|---|
001 | Health |
002 | Business |
003 | Biography |
004 | Technology |
005 | Travel |
006 | Self-Help |
007 | Cookery |
008 | Fiction |
Holding a list of books reserved by the user (identified by username). It is linked to the books table by ISBN number and the Users table by username.
ISBN | UserName | ReservedDate |
---|---|---|
9823-98345 | tommy100 | 2008-10-11 |
98234-029384 | joecrotty | 2008-10-11 |
|-- Code
| |-- Assets
| | |-- CSS
| | | '-- site.css
| | |-- Images
| | | |-- my_logo.png
| | | '-- novella_logo.png
| |-- account.php
| |-- accountReservedBook.php
| |-- authentication.php
| |-- db.php
| |-- delete.php
| |-- index.php
| |-- login.html
| |-- novella.sql
| |-- register.php
| |-- reserve.php
| |-- search.php
| |-- searchResults.php
| '-- signout.php