We have had a lot of interest in the topic of dating sites as they are closely related to the social networks of today. So we decided we will start a series of tutorials where we will build a very basic dating site to give everyone a good introduction to php development. It is always our belief that one can not learn without building something, rather than learning basic language constructs which can be frightfully boring to learn, lets just build something fun and when you are done you have something to show for your effort.
First of all lets quickly cover the scope of the site. We need the following:
- Login Screen.
- Registration form with email based activation.
- A basic profile manager.
- Very simple messaging system.
- A basic way of adding potentially compatible people to your favourites list.
In order to make the website versatile, we will split the entire site into two components, back end and front end. Generally the back end will deal with all things related to our database and the front end will be showing things on screen. We will achieve this with the following technologies:
The technology to be used in our php development project
- PHP (Our backend language)
- MySql (Our backend database)
- AngularJS 1.X (Frontend MVW – Model View Whatever Framework)
- HTML (Frontend)
- Bootstrap (Some css styling etc, to make things easier to manage)
Just on the above. Your php will essentially connect to our mysql database and return JSON (Java script object notation) to the browser. We will be handed off to AngularJS to include in our html pages. For those who don’t fully understand MVW or MVC. As a result these basically are divided into sections where presentation logic and data logic is separated.
What is MVC?
M (Model) this mainly deals with data logic, retrieving information from databases etc.
V (View) this mainly contains the code which will be what the user will see.
C (Controller) This ties and binds the view and model together in a logical way and controls the flow of data between them.
In addition programmers just need to bare in mind, in the case of AngularJS (MVW) was adopted as a result of it not being the most strict about how controllers get put together thus it was termed “Whatever” furthermore I will explain later on in this tutorial series why this is the case and how this is implemented.
In our next tutorial we will look at our database structure and the data fields required to get the basic over all database design going.