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:
- Kuongeza bidhaa (products)
- Kuongeza wateja (customers)
- Kufanya manunuzi (transactions)
- Kuonyesha data zote
- 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)
- Kuongeza bidhaa
- Kuhariri bidhaa
- Kufuta bidhaa
- Kuonyesha bidhaa zote
<?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)
- Kuongeza mteja
- Kuhariri mteja
- Kufuta mteja
- Kuonyesha wateja wote
<?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");
}
//...Umeionaje Makala hii.. ?
Share On:
👉1 Simulizi za Hadithi Audio 👉2 web hosting 👉3 ai web app 👉4 Kitabu cha Afya 👉5 Tafasiri ya Riyadh Swalihina 👉6 Bongolite - Game zone - Play free game
Post zinazofanana:
PHP somo la 49: utangulizi wa Object Oriented Programming katika PHP
Huu ni mwendelezo wa mafunzo ya PHP na hapa tunaaza rasmi advanced PHP. tutakwenda kuingia ndani zaidi kwenye PHP. Ni vyema kabla ya kuanza course hii ya advanced PHP uwe una uelewa wa kutosha kuhusu mafunzo yetu ya PHP.
Soma Zaidi...PHP - somo la 38: Jinsi ya ku upload mafaili zaidi ya moja kwa kutumia PHP
katika somo hili utajifunza jinsi ya ku upload multiple file yaani mafaili mengi kwa wakati mmoja kwa kutumia PHP
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 101: Advanced RedBeanPHP - Usimamizi wa Database, Usalama, na Ufanisi
Hili ni somo la mwisho katika mfululizo huu wa ORM, kupata ujuzi zaidi endelea kusoma ORM nyinginezo ambazo nimetangulia kuzitaja awali ya masomo haya.
Soma Zaidi...PHP somo la 75: Content-Type Header
Katika somo hili utakwenda kujifunza kuhusu content-type header.
Soma Zaidi...PHP BLOG - somo la 11: Jinsi ya kutumia prepared statement
Katika somo hili utajifnza jinsi ya kufanya prepared statement kama njia ya kuzuia sql ingection kwenye PHP blog
Soma Zaidi...