Skip to content
PHP7 Courses management application, with subjects, students, grades and registrations support. Feel free to use this application to manage a small school, institute, academy or similar...
Branch: master
Clone or download
Latest commit 82498db Apr 17, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app Minor changes... Apr 17, 2019
.gitignore First commit for University Application! Apr 9, 2019
.htaccess First commit for University Application! Apr 9, 2019
LEEME.TXT First commit for University Application! Apr 9, 2019
LICENSE
README.md Minor changes... Apr 17, 2019
composer.json First commit for University Application! Apr 9, 2019
composer.lock First commit for University Application! Apr 9, 2019
database.sql Changed fictitious names in database file Apr 10, 2019
index.php

README.md

Courses management application, with subjects, students, grades and registrations support

Requires PHP 7.x, MySQL 5.4.x

v0.1.1
08/04/2019
(c)Juan Luis Ramírez Tutor
Email: juanluis.ramirez.tutor@gmail.com
GitHub: https://github.com/jlrtutor
LinkedIn: https://es.linkedin.com/in/juan-luis-ramirez-tutor
Languages supported: english|spanish

Feel free to use this application to manage a small school, institute, academy or similar, where you have to control the student's registration, grades, etc...

Please, report any issue you may have using this application.

#Installation

  1. Create an empty database
    | name: university
    | user: root
    | password: [empty]
  1. Change config database, if required, at file /app/config.php

  2. Upload and execute "database.sql" onto your database.

  3. The application is prepared to run into a folder called "university-app", so the URL would be: http://localhost/university-app

  4. If the application is installed into another folder, change the path on the following file /app/config.php, line 2

define( 'BASE_URL', '/university-app/');  //WEB directory, external path url
  1. Locale (spanish default), choose english (en-EN) or spanish language (es-ES) by changing /app/config, line 10:
define( 'LANG', 'es-ES');   //es-ES|en-EN
  1. LOGIN. You must authenticate before you use this application:
    | user: root@root.com
    | password: admin
  1. Make
composer install

to download and install all packages and dependencies.

##Technical notes

The framework used in this project was created from scratch, thinking on an easy and fast development.

It implements a system based on a data model, where you define basically all the fields that the model needs and its relationships with other tables or entities. So, the system can validate data automatically, for example:

$this->field('id',         'integer', ['PK'=>true, 'validate'=>false] );
$this->field('student_id', 'integer', ['FK'=>true]); //FK of Student table
$this->field('course_id',  'integer', ['FK'=>true]); //FK of Course table
$this->field('level',      'integer');
$this->field('date_of_creation','date', [ 'validate'=>false,
                                          'required'=>false, 
                                          'default'=>date('Y-m-d') ] );

Here you can see the entity registrations and its fields and relationships with other tables, like Student and Course.

These relationships make it easier to obtain information from foreign tables:

//Load object Registration
$obj_registration = new Registration($id);
//Binding with Students table
echo "The name of the students is: " . $obj_registration->getStudent()->name;
echo "And he courses " . $obj_registration->getCourse()->name;

App structure


/app
    /Http
        /Controllers
        /Models
    /public
        /views
            //...
/vendor
You can’t perform that action at this time.