A second hand shopping website with dynamically generated PHP pages and an SQLite database based on 2 main SQL files.
HTML and CSS provide all the styling that beautifies the website and makes its pages responsive.
JavaScript makes the website more interactive and with the resource to Ajax live search results and assynchronous data updates are possible;
Project done in the Web Languages and Technologies class of the 2nd year of L.EIC course.
1 - Install SQLite3 and PHP
sudo apt-get install php-cli sqlite3 php-sqlite3 unzip wget
2 - Clone this repository
git clone https://github.com/davidm-g/Twice-as-Nice-Website.git
3 - Navigate to the main directory
cd Twice-as-Nice-Website/
4 - Open a localhost to access our webpages
php -S localhost:9000
5 - Navigate to 'localhost:9000' on your favourite browser and explore our website
If you need to reset to the original project database just execute these commands:
cd Twice-as-Nice-Website/database/
sqlite3 site.db
.read create.sql
.read populate.sql
.exit
Instructions: Project Description
We have used the following external libraries:
- Font Awesome
General:
- Register a new account.
- Log in and out.
- Edit their profile, including their name, username, password, and email.
Sellers should be able to:
- List new items, providing details such as category, brand, model, size, and condition, along with images.
- Track and manage their listed items.
- Respond to inquiries from buyers regarding their items and add further information if needed.
- Print shipping forms for items that have been sold.
Buyers should be able to:
- Browse items using filters like category, price, and condition.
- Engage with sellers to ask questions or negotiate prices.
- Add items to a wishlist or shopping cart.
- Proceed to checkout with their shopping cart (simulate payment process).
Admins should be able to:
- Elevate a user to admin status.
- Introduce new item categories, sizes, conditions, and other pertinent entities.
- Oversee and ensure the smooth operation of the entire system.
Security: We have been careful with the following security aspects:
- SQL injection
- Cross-Site Scripting (XSS)
- Cross-Site Request Forgery (CSRF)
Password Storage Mechanism:
PASSWORD_DEFAULT --> bcrypt algorithm (default as of PHP 5.5.0)
Aditional Requirements:
We also implemented the following additional requirements (you can add more):
- Rating and Review System
- Promotional Features
- Analytics Dashboard
- Multi-Currency Support
- Item Swapping
- API Integration
- Dynamic Promotions
- User Preferences
- Shipping Costs
- Real-Time Messaging System
Made by David Gonçalves | [email protected]