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 Madrasa kiganjani 👉2 Dua za Mitume na Manabii 👉3 Tafasiri ya Riyadh Swalihina 👉4 Kitau cha Fiqh 👉5 web hosting 👉6 Bongolite - Game zone - Play free game
Post zinazofanana:
PHP - somo la 32: Jinsi ya kutumia filter_var() function kwenye PHP
Katika somo hili utajifunza jinsi ya kutumia filter_var() function kwa ajili ya kuchuja code zilizo hatari kwenye PHP file
Soma Zaidi...PHP somola 69: jinsi ya kutuma email kwa watu zaidi ya mmoja kwa kutumia PHPMailer
Katika somo il utajifunza kutuma email kwa watu wengi kwa kutumia PHPMailer. Pia utajifunza jinsi ya kuweka Carbon Copy na Blind Carbon Copy
Soma Zaidi...PHP somo la 57: class traits kwenye PHP
Katika somo hili utakwenda kujifunza concept ya traits kwenye OOP. hii itakusaidia ku solve baadhi ya changamoto zinazotokana na inheritance
Soma Zaidi...PHP somo la 53: class inheritance kwenye PHP Object Oriented Programming
Katika somo hili utakwenda kujifunza kuhusu class inheritance kwenye object oriented programming.
Soma Zaidi...PHP somo la 71: Jinsi ya kutengeneza PDF kwa kutumia PHP na library ya tcpdf
Katika somo hili utakwenda kujifunza jinsi ya ku generate PDF automatik kutoka kwenye php code , html, javascript na css.
Soma Zaidi...PHP -somo la 31: Matumizi ya include() na require() function kwenye php
Katika somo hili utakwenda kujifunza jinsi ya kuandika function za PHP kama require() na iclude()
Soma Zaidi...