Coding challenge for a online shop
Go to file
2018-07-15 08:53:15 +02:00
src Implemented color filters to navbar 2018-07-15 08:53:15 +02:00
docker-compose.yml Updated docker configuration 2018-07-14 16:51:51 +02:00
Dockerfile Updated docker configuration 2018-07-14 16:51:51 +02:00
README.md Added table create routine 2018-07-14 20:09:56 +02:00
start.sh Added table create routine 2018-07-14 20:09:56 +02:00
test.sh Updated docker configuration 2018-07-14 16:51:51 +02:00

coding-challenge-online-shop

Coding challenge for a online shop

tasks

requirements

  1. Create a web application with PHP which works like a really small online shop.
  2. Create a database with at least 20 products automatically per script.
  3. Create a product listing which display all products from the database. The following information are required:
  • price net and gross
  • image
  • product name
  • color
  1. Add a “to the basket” button to each product in the listing.
  2. Make the product basket work and display all products which are in the basket as a list with small images.
  3. Create a login and registration with e-mail address, password and a name.
  4. The login should be session based.
  5. Crete a checkout where the user have to be logged in.
  6. The user should be able to choose between 2 payment methods. Call them method1 and method2.
  7. Store the order at the database.
  8. Add a color filter to the product list. The user should be able to filter the listing with the existing colors.

specifications

  • Please use PHP, MySQL and HTML. You can also use CSS, JavaScript, Bootstrap and jQuery.
  • Save your code online at github.
  • Please use an autoloader and namespaces.
  • Dont use a ready to go framework. Build the application from the scratch.
  • Use transactions if it makes sense.
  • Please cover your code with unit tests.

start

To run the program execute:

  bash ./start.sh

Attention

This is a demo program; Everytime when you start the demo the database will be reset.

test

To run the tests execute:

  bash ./test.sh