PHP somo la 99: Jinsi ya kutumia ORM kwa kutumia library ya RedBeanPHP

PHP somo la 99: Jinsi ya kutumia ORM kwa kutumia library ya RedBeanPHP

Katika somo hili utakwenda kujifunza Jinsi ya kutumia ORM kwa kutumia library ya RedBeanPHP

Hapa sasa ndipo tunakwenda kuitumia database yetu ili kuweza kutengeneza shopmanagement app. Tutatumia table zile zile tulizozitumia awali. Tutafanya kile kile tulichokifanya. Hapa utaona urahisi zaidi wa kutumia ORM.

 

Hii ni setup nzuri kwa mfumo wa "Shop Management" kwa kutumia RedBeanPHP. ✅ Nitakuandikia kila ukurasa (products.php, customers.php, transactions.php) hatua kwa hatua na kuhakikisha kuwa unaweza:

  1. Kuongeza bidhaa (products)
  2. Kuongeza wateja (customers)
  3. Kufanya manunuzi (transactions)
  4. Kuonyesha data zote
  5. Kuhariri (edit) na kufuta (delete) rekodi

? Kwanza: Unda Database shop

Hakikisha umeunda database shop, kisha RedBeanPHP itajenga tables moja kwa moja.

CREATE DATABASE shop;

Kisha hakikisha umeinstall RedBeanPHP kama nilivyoeleza awali.


? 1. db.php - Kusanidi RedBeanPHP

Faili hili litatumika katika kila ukurasa kuunganisha database. Kutumia composer kunaweza kuleta shida ikawa baadhi ya mafaili hayapatikani hivyo ukiwa na tatizo hilo vyema kutembelea kwenye website yao kisha download faili husika la driver, kisha include kwenye faili la database configuration. rejea somo lililotangualia.

<?php
require 'vendor/autoload.php';

R::setup('mysql:host=127.0.0.1;dbname=shop', 'root', ''); 

if (!R::testConnection()) {
    die('Database haijaunganishwa!');
}
?>

? 2. products.php - Kusimamia Bidhaa (Products)

<?php
require 'db.php';

// Ongeza Product
if (isset($_POST['add'])) {
    $product = R::dispense('products');
    $product->name = $_POST['name'];
    $product->price = $_POST['price'];
    R::store($product);
    header("Location: products.php");
}

// Futa Product
if (isset($_GET['delete'])) {
    $product = R::load('products', $_GET['delete']);
    R::trash($product);
    header("Location: products.php");
}

// Hariri Product
if (isset($_POST['edit'])) {
    $product = R::load('products', $_POST['id']);
    $product->name = $_POST['name'];
    $product->price = $_POST['price'];
    R::store($product);
    header("Location: products.php");
}

// Pata Products zote
$products = R::findAll('products');
?>

<h2>Manage Products</h2>
<form method="post">
    <input type="text" name="name" placeholder="Product Name" required>
    <input type="number" name="price" placeholder="Price" required>
    <button type="submit" name="add">Add Product</button>
</form>

<table border="1">
    <tr><th>Name</th><th>Price</th><th>Action</th></tr>
    <?php foreach ($products as $product): ?>
    <tr>
        <td><?= $product->name; ?></td>
        <td><?= $product->price; ?></td>
        <td>
            <a href="?delete=<?= $product->id; ?>">Delete</a>
            <form method="post" style="display:inline;">
                <input type="hidden" name="id" value="<?= $product->id; ?>">
                <input type="text" name="name" value="<?= $product->name; ?>">
                <input type="number" name="price" value="<?= $product->price; ?>">
                <button type="submit" name="edit">Edit</button>
            </form>
        </td>
    </tr>
    <?php endforeach; ?>
</table>

? 3. customers.php - Kusimamia Wateja (Customers)

<?php
require 'db.php';

// Ongeza Customer
if (isset($_POST['add'])) {
    $customer = R::dispense('customers');
    $customer->name = $_POST['name'];
    $customer->email = $_POST['email'];
    R::store($customer);
    header("Location: customers.php");
}

// Futa Customer
if (isset($_GET['delete'])) {
    $customer = R::load('customers', $_GET['delete']);
    R::trash($customer);
    header("Location: customers.php");
}

//...
Ingia sasa ili uweze kusoma makala hii yote.

Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

       
Author: Rajabu Rajabu
Tarehe: 2025-03-16 17:14:57 Topic: PHP Main: Masomo File: Download PDF Views: 860

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 web hosting     👉2 Madrasa kiganjani     👉3 Tafasiri ya Riyadh Swalihina     👉4 Simulizi za Hadithi Audio     👉5 ai web app     👉6 Dua za Mitume na Manabii    

Post zinazofanana:

PHP - somo la 27: aina za variable kwenye PHP

Katika somo hili utakwenda kujifunza aina kuu 3 za variable katika PHP mabzo ni local variable, global variable na static variable.

Soma Zaidi...
PHP somo la 67: Project ya CUDE operaton wa utuma OOP na PDO

Katika somo hii utakwenda kujifunza jinsi ya kufanya CRUDE operation kwa kutumia PDO. crude operation inahusu create, read, update. Delete.

Soma Zaidi...
PHP somola 78: Cookie Headers

Katika somo hili utakwenda kujifunza kuhusu Cookie Headers

Soma Zaidi...
PHP - somo la 40: Jinsi ya kutumia htaccess file kubadilisha muonekano wa link

Katika somo hili uatakwenda kujifunza jinsi ya kutumia htaccess ili kubadili muonekano wa link ya website ama blog ili kuifanya iwe rafiki zaidi.

Soma Zaidi...
PHP somo la 60: namespace na matumizi yake kwenye PHP

Katika somo hili utakwendakujifunza concept ya namespaces na jinsi inavyosaidi kwenye OOP

Soma Zaidi...
PHP - somo la 21: Jinsi ya kutafuta kitu kwenye database kwa mutumia PHP

Katika somo hili utakwenda kujifundisha jinsi ya kutafuta taarifa maalumu kwenye database kwa kutumia PHP

Soma Zaidi...