picha

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.

Jiunge nasi WhatsApp kupata update zetu
Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

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

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 web hosting     👉2 Kitabu cha Afya     👉3 ai web app     👉4 Simulizi za Hadithi Audio     👉5 Kitau cha Fiqh     👉6 kitabu cha Simulizi    

Post zinazofanana:

PHP - somo la 11: Jinsi ya kutuma tarifa zilizojazwa kwenye form

Katika somo hili utakwenda kujifunza jinsi ya kukusanya taarifa za watumiaji kwa kutumia html form.

Soma Zaidi...
PHP somo la 83: Server Variables

Katika somo hili utakwend akujifunza kuhusu server variables

Soma Zaidi...
PHP somol la 55: PHP Abstract Class na abstract method

Katika somo hili utakwenda kujifunza concept mpya ya abstract class na abstract method kwenye OOP.

Soma Zaidi...
PHP - somo la 3: Maana ya variable na inavyoandika kwenye PHP

Katika somo hili utakwenda kujifunza kujusu PHP variable, maana yake na sheria za uandishi wa variable

Soma Zaidi...
PHP - somo la 10: Jinsi ya kundika condition statement if, ifelse na switch case

Katika somo hili utakwenda kujifunza kuhusu condition statements if, ifelse na switch case. Hata utajifunza jnsi ya kuziandika na zinavyofanya kazi

Soma Zaidi...
PHP BLOG - somo la 4: Jinsi ya kutengeneza ukurasa kwa ajili ya kupost

Katika somo hili utakwenda kujifunza jinsi ya kutengeneza ukurasa wa kupost kwa kutumia html form

Soma Zaidi...