hashaam-zahid/crud-pdo-operation

dev-master 2023-11-28 12:19 UTC

This package is auto-updated.

Last update: 2024-09-22 02:47:05 UTC


README

This project implements a CRUD (Create, Read, Update, Delete) operations package using Object-Oriented Programming (OOP) with PDO in PHP. It includes classes for database configuration, database connection, and operations on a "country" entity example.

Contrubition

[Hashaam Zahid] (https://www.linkedin.com/in/hashaam-zahid)

Install Setup

composer require hashaam-zahid/crud-pdo-operation

How to Load object

require_once("classes/country.php");
$objCountry = new country();

//Get All Countries

$resultGetAllCountry = $objCountry->GetAllCountry();

// Check if countries exist

if ($resultGetAllCountry->num_rows > 0):

    while ($rowGetAllCountry = $resultGetAllCountry->fetch_array(MYSQLI_BOTH))
   {
         echo $rowGetAllCountry->name;
   }

else:
    echo ('Something went wrong while fetching country, Try Later');

endif;

Folder Structure

/configuration
configuration.php
/dbconnect
db_connect.php
/classes
country.php

Main directory

country_process.php

Usage

The primary goal of this project is to offer a maintainable and easily understandable solution for performing CRUD operations on a database. It focuses on clean code practices to enhance readability, Reusability and ease of use for developers working with database entities.

configuration/configuration.php

Contains a class with constants defining database connection details.

dbconnect/db_connect.php

Implements a class responsible for CRUD operations using PDO. It establishes a database connection and provides methods for insertion, selection, deletion, and updating records.

classes/country.php

Defines a class for handling "country" entities. It contains methods to perform operations like fetching all countries, retrieving cities by country ID, inserting, updating, and deleting country records.

country_process.php

An example usage file where the country class methods are instantiated and demonstrated. It showcases how to retrieve countries, cities, insert, update, and delete country records.

Project Structure

  • configuration/configuration.php: Defines database configuration constants.
  • dbconnect/db_connect.php: Handles database connections and CRUD operations.
  • classes/country.php: Manages operations related to the "country" entity.
  • country_process.php: Demonstrates the usage of the country class methods.

License

This project is licensed under the MIT License - see the LICENSE file for details. Ensure that you have a LICENSE file in your project root directory, which includes the MIT License details. You can use the following MIT License text:

MIT License

Copyright (c) [2023]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Replace [2023] with the current year or range of years the project has been developed.

This README.md file structure provides an overview of your project, its directory layout, usage, and licensing information. Adjust it as needed to match your project's specific details and requirements.