ramoures / PHP-Phone-Book

PHP Phone Book (Apache HTTP Server - MySQL database, PDO Connection - OOP - MVC - Twig template engine - Bootstrap) - Licensed MIT

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PHP-Phone-Book

This is my first public repository on github.


Demo

UTC Timezone

Setup

  1. Create a new MySQL database.
  2. Set your database information and your PROJECT_URL in config.php.
  3. Browse /setup to create the required tables and admin sign up.

    Ex. https://localhost/PHP-Phone-Book/setup/

  4. Remove /setup directory.
  5. Set media directory permission to 777.

    sudo chmod -R 777 media


Information

  • HTTP server: Apache
  • Programming language: PHP 8.2.4
  • Programming paradigm: OOP
  • Architectural patterns: MVC
  • Template engine: TWIG 3.0
  • Database: MySQL
  • Licensed under MIT

I used:

  • Multi language suppourt.
  • PDO & Prepared Statements MySQL Connection.
  • Errors handling method.
  • Singleton design patterns for some required classes.
  • Many options for configuration. config.php
  • Sorting and pagination of items.
  • Client and server side captcha for sign in form.

    Optional config: Google reCaptcha or Cloudflare Turnstile

  • Bootstrap and jQuery.

HELP

Add new language

  1. Create your language file in the lang folder.

Ex. fr.php or ar.php and develop similar to lang/fa.php.

  1. Add your new language for frontend pages.
<!-- Example: -->
<div class="changeLanguage">
     <button id="fr">Fr</button>
     <button id="en">En</button>
</div>
<!-- Look at: .changeLanguage click function on view/assets/js/app.js or backend.js  -->


** Ready to develop for other pure PHP projects **

Connect with me:

Linkedin: ramoures
E-mail: ramoures@gmail.com

About

PHP Phone Book (Apache HTTP Server - MySQL database, PDO Connection - OOP - MVC - Twig template engine - Bootstrap) - Licensed MIT

License:MIT License


Languages

Language:PHP 48.3%Language:HTML 39.1%Language:JavaScript 7.4%Language:CSS 5.2%