MAFUNZO YA PHP LEVEL 2




MAFUNZO YA PHP LEVEL 2 (PHP, SQL(DATABASE) & HTML)

  1. 1 UTANGULIZI

Karibu tena katika mafunzo ya PHP na hii ni level 2. Katika level 1 tulijifunza mambo mengi kuhusu basic za PHP na pia tulweza kufanya baadhi ya project kama 4 kwa kutumia HTML na php. Naamini katika level hii utajifunza mambo mengi zaidi.

 

Katika level hii tutakwenda kujikita kwenye php na database tu. hatutaangalia mabo mengine meengi. Katika php level 3 tutajifunza zaidi kuhusu PHP na tutaona baadhi ya concept nyingi ambazo mpaka sasa hatujazigusa. Hivyo katika level hii utajifunza kuchanganya PHP, HTML na database.

 

  1. 2 YALIYOMO:

KATIKA LEVEL HII UTAJIFUNZA:

  1. Namna ya kuunganisha DATABASE SERVER NA PHP 

  2. NAMNA YA KUTENGENEZA DATABASE KWA KUTUMIA PHP

  3. NAMNA YA KUTENGENEZA TABLE KWA KUTUMIA PHP

  4. NAMNA YA KUFUTA DATABASE NA TABLE KWA KUTUMIA PHP

  5. NAMNA YA KUWEKA TAAFIFA KWENYE DATABASE KWA KUTUMIA PHP

  6. NAMNA YA KUEDIT NA KU UPDATE TAARIFA KWENYE DATABASE

  7. NAMNA YA KUFUTA TAARIFA KWENYE DATABASE

  8. KUPANGILIA MUONEKANO WA TAARIFA KWENYE DATABASE KWA KUTUMIA PHP

  9. KUSEARCH DATA KWENYE DATABASE KWA KUTUMIA PHP

  10. KUZIFANYIA MAHESABU TAARIFA ZA KWENYE DATABASE  KWA KUTUMIA PHP

  11. KUTUMIA CONDITION STATEMENT (if, else, ifelse) KWENYE DATABASE KWA KUTUMIA PHP

  12. JINSI YA KUTUMIA HTML FORM NA DATABASE

  13. KU UPLOAD FAILI KWENYE DATABSE KWA KUTUMIA PHP

  14. PROJECT YA CHAT APP (APP YA KUCHATI) KWA KUTUMIA PHP NA HTML

  15. KUHOST PHP PROJECT

 

Baada ya hapo tutakuwa tumefunga somo la PHP level 2. matarajio yetu ni kuwa kumaliza level zote tatu ili kuanza kutengeneza full website na blog yetu wenyewe bila ya kuhitaji msaada. Baada ya kumaliza level 3 za PHP mafunzo ya kutengeneza Android App yataanza rasmi.

 

  1. 3. SIFA ZA MSHIRIKI WA MAFUNZO HAYA YA LEVEL 3

  2. Awe na ufahamu kuhusu misingi ya php na database, ama awe ameshajifunza kupitia mafunzo yetu php leve1 na database

  3. awe na kompyuta ama simu ya smart phone. utaratibu mzima wa kuandaa simu ama kompyuta yako umeshatoka katika mafunzo yaliyotangulia.

  4. awe anajuwa kusoma na kuandika, angalau aujuwe kusoma maneno marahisi ya kiingereza akama select, update, order, where, by na mengineyo tutakayoyaona.

  5. awe mjanja na pupa ya kutaka kujifunza.

 

  1. 4 MUDA WA MAFUNZO.

kama orodha inavyojionuesha hapo kuna masomo 15, na kila somo ni siku moja. maratajio mafunzo yatakuwa ni wiki 2 ila endapo kutatokea uhitaji zaidi yanaweza yasimalize wiki hizo 2.

 

  1. 5 GHARAMA ZA KUJIFUNZA

Masomo haya yanatolewa bure, gharama yako ni bando la kifaa chako. hakika tunatowa mafunzo haya bure, hutahitaji kulipia gharama yeyote ile. tutafanya hivi kwa masomo mengine yanayofuata baada ya haya. kama utaona haja ya kutuunga mkono kwa kiasi kidogo cha kununua kikombe cha kahawa itakuwa vyema pia.

 

  1. 6 SEHEMU YA KUJIFUNZIA:

Masomo yetu ni ya ONLINE. na sehemu ambayo tutajifunza ni hapa tu, hatuna grupu la wasap, wala telegram, na itakuwa hivyo hatutakuwa na marupu mengine zaidi ya hili. hivyo usiwe na shaka kama unatumia free fb kuwa huru na hapa.

 

hata hivyo mafunzo haya pia unaweza kuyapata kwenye tovuti yetu bongoclass.com. hivyo wakati mwingine ninaweza kuweka link ya mafunzo, kabla ya kuweka post yenyewe. ni kwa sababu mafunzo haya kabla ya kuletwa fb yanawekwa kwenye tovuti yetu kisha ndipo yahamie fb. kuna sababu za msingi za SEO kufanya hivi.

 

 

MWISHO.

Nikutakie ujifunzaji mwema, na endelea kuwa nasi katika mafunzo mengineyo. tembelea kama utakuwa na maoni na mapendekezo yeyote usisite kuungaa nami kwenye comment na mawasiliano ya wasap.

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

WhatsApp: 0774069753

 

 

SOMO LA 02

Katika somo lililotangulia ulikuwa ni utangulizi wa course. hapa sasa ndipo tunakwenda kuanza somo letu rasmi. katika somo hili utakwenda kujifunza namna ya kuunganisha database kwenye faili la PHP. Hii ni hatuwa ya kwanza na muhimu unatakiwa uijuwe kama unataka kujifunza utengenezaji wa website na blog.

 

Ni kwa nini tunaunganisha PHP na databae?

Hili ni swali muhimu na ni la msingi sana. Jibu fupi ni kuwa ili uweze kuzisoma data zilizopo kwenye database kwenye blog yako ama website unahitaji uconnect na hiyo databse ili upate ruhusa ya kuziona hizo data,

 

Yaani ipo hivi, Fikiria kuwa una database inaitwa blog na  kwenye hiyo database kuna post kwa ajili ya blog yako. Sasa unataka hizo post zionekane kwenye blog yako. Kwanza utahitajika kuunganisha hiyo blog yako na hiyo database yako. kufanya hivi tutatumia php pamoja na ujuzi wa SQL kama tulivyojifunza katika course ya database. baada ya kuunganisha ndipo utaweza kuziweka hizo post kwenye ukurasa wa wavuti (web page)

Njia zinazotumika kuunganisha PHP na MySQL database

kwa maelezo ya w3school kuna njia kuu mbili za kuunganisha PHP na MySQL database. njia hizo ni:-

  1. MySQLi 

  2. PDO

Hiyi ya kwanza herufi i ina maana improved, na hiyo ya pili kirefu chake ni PHP Data Object) unaweza kutumia nji yeyote kati ya hizi. ila hii yenye MySQLi yenyewe inafanyakazi kwenye MySQL tu, lakini hiyo ya PDO inafanyakazi kwenye aina nyinginezo za database pamoja na hii ya MySQL.

 

Mambo muhimu kwenye wakati wa kkonect na database:

 

  1. kjuwa jina la database, passowd, na server

  2. kuanda variable kwa ajili ya kuunganisha na database.

  3. kufunguwa connection (open connection)

  4. kukonect kwenyewe (database connection)

  5. alert message hii ni kwa ajili ya kutoa taarifa kama kuna error ama kama umefanikiwa kukonnect

  6. kufunga connection

 

Kukonekt database kwa kutumia MySQLi:

kuna namna mbili ya kuunga database kwa kutumia MySQLi ambazo ni kama tutakavyoziona hapo chini. Unaweza kuchaguwa yeyote kati ya hizo. Utajifunza zaidi kuhusu njia hizi kwenye masomo yetu ya mbele.

  1. MySQLi object oriented

  2. MySQLi procedural

 

hatuwa kwa hatuwa kukonekt database:

  1. Maandalizi ya variable: 

tulisha jifunza namna ya kuandaa variable kwenye course ya PHP somo la 3. katika kukonekt na databse variable zako ni tatu, kwa ajili ya server, kwa ajili ya database (jina la database) na kwa ajili ya password. Variable zako zinaweza kuwa hizi:

$servername = "localhost";

$username = "username";

$password = "password"

 

localhost ni jina la server ambayo databse yetu ipo. kama unatumia wapserver, ama xamp au aWevServer kwa watumiaji wa simu basi jina la server yako ni localhost. uername ni jina la mtumiaji wa hiyo database. Hii ni akaunt inayomiliki hiyo databse. kama hujabadili jina ama username kwenye database yako basi jina lililopo ni root. na password kama unatumia local host mara nyingi password hakuna unaacha kama ilivyo, hivyo variable hapo zitasomeka  hivi

 

$servername = "localhost";

$username = "root";

$password = ""

 

  1. kufunguwa database na kuconnect

Bada ya kuziweka variable zako sasa ni muda wa kuunganisha PHP na database kwa kutumia hizo variable. Kuna variable nyingine sasa tunatakiwa kuijuwa na hii ni muhimu kwa ajili ya kufanya hiki tunachokitaka. variable hii hutumiaka kuunganisha database. variable hii ni

$conn = new mysqli($servername, $username, $password);

variable $conn inakwenda kuwakilisha function new mysqli()ambapo ndani yake utawka variable zako za database name, server name na username. hivyo kusomeka

$conn = new mysqli($servername, $username, $password);

 

  1. Kuangalia kama connection imefanikiwa ama imefeli

Hapa kuna jambo unatakiwa ulijuwe, ni kuwa unatakiwa uweke meseji ambayo itakueleza kama connection imefanikiwa ikuambie mfani you are connected. na kama connection imefele inatakiwa iseme mfano connection failed. kwa haraka haraka hapa utajuwa kuwa panatakiwa patumike condition sentenses kama tulivyojifunza kwenye php matumizi ya if, else, ifelse n.k.

 

kufanya hivi tutatumia

if (mysqli_connect_error()) {

die("connection failed " . mysqli_connect_error());

}

echo "you are connected";

 

Hapo panajionyesah wazi kuwa mysqli_connect_error() ni kwa ajili ya kuangalia kama connection imefanikiwa ama imefeli. kama imefele itareject (die) hivyo if itatupa matokeo connection failed. Na kama connection imefaniliwa if itatupa matokeo ya else itatupa matokeo ya you are connected.

 

  1. Kufunga connection

Katika hali ya kawaida, connection hijifunga automatik. lakini pia unaweza kuifunga wewe mwenyewe punde tu baada ya kuconnect. kufanya hivyo utatumia $conn->close();kwa Myqli object oriented au mysqli_close($conn);kwa MySQLi procedural au $conn = null; kwa PDO

 

CONNECTION NZIMA IPO HIVI:

Tengeneza faili la php kisha lipejina mfano test.php. hakikisha unaweka faili hilo kwenye localhost server kama ulivyoelekezwa kwenye mafunzo ya php. Kisha pest code hizo hapo chini, load file, itakuletea meseji you are connected kama imesha connect.

  1. MySQLi object oriented

<?php

$servername = "localhost";

$username = "root";

$password = "";

 

// Kufanya connection

$conn = new mysqli($servername, $username, $password);

 

// Kuangalia connection

if (mysqli_connect_error()) {

   die("you are not connected: " . mysqli_connect_error());

}

echo "You are connected";

?>

 

hii itakupa matokeo

kama ukijaribu kubadilisha hapo mfano wela username karatasi, itakupa error.

kama unatumia localhost meeji hii ya error itaambatana na maelezo marefu kukuambia error imetokra wapi. kama inavyojionyesha pic hapo chini. Error hii itajitokeza pekeyake kama utahost website yako.

 

  1. MySQLi procedural

Tengeneza faili la php kisha lipejina mfano test.php. hakikisha unaweka faili hilo kwenye localhost server kama ulivyoelekezwa kwenye mafunzo ya php. Kisha pest code hizo hapo chini, load file, itakuletea meseji you are connected kama imesha connect.

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password);

 

// Check connection

if (!$conn) {

   die("You are not connected: " . mysqli_connect_error());

}

echo "You are connected";

?>

 

Hapa utaona kuna tofauti kidogo kati ya tulivyoona hapo mwanzo na hapa. Utaona kuna mabadiliko kwenye kukonect na kwenye kutoa error. Utachaguwa mwenyewe ni njia ipi utumia ila zote zinakupa matokeo sawa. Tutajifunza zaidi utofauti wao masomo ya mbeleni.

 

Kukonekt database kwa kutumia PDO:

kama nilivyokueleza hapo mwanzo kuwa hakuna utofauti mkubwa kati ya MySQLi na PDO. ila kama unataka kutumia MySQL tu kwa ajili ya databse yako, ukitumia MySQLi hakuna shida. na kama una matarajio kuwa siku za mbeleni utumie aina ingine ya databse kwenye blog ama website yako basi PDO inakufaa maana yenyewe inaweza kufanya kazi kwenye zaidi ya aina 10 za database.

 

sasa katika PDO tofauti na variable kuu tatu tulizoziona hapo juu hapa utatakiwa utaje na jina la database yako. yaani PDO inahitaji iunganishwe kwenye datanase husika tu na si vinginevyo. na hii ni tofauti yao ingine na MySQLi. katika Somo la PHP tulitengeneza databse yetu utaipata somo la 8,9 na 10. database hiyo iliitwa hotel. hivyo tutaitumia database hii katika siku zijazo. hapa tutaitumia kuconnect na PDO.

 

Code za ku connect PHP kwa kutumia PDO

Tengeneza faili la php kisha lipejina mfano test.php. hakikisha unaweka faili hilo kwenye localhost server kama ulivyoelekezwa kwenye mafunzo ya php. Kisha pest code hizo hapo chini, load file, itakuletea meseji you are connected kama imesha connect.

 

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

//kuweka connection

try {

   $conn = new PDO("mysql:host=$servername;dbname=hotel", $username, $password);

   // kuangalia connection

   $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

   echo "you are connected";

} catch(PDOException $e) {

   echo "you are not connected: " . $e->getMessage();

}

?>

 

 

Kufunga connection:

weka hizo code za kufunga connection nimekuonyesha, weka mwisho kabla ya tag ya ?>. Mfano:

 

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

 

// Kufanya connection

$conn = new mysqli($servername, $username, $password);

 

// Kuangalia connection

if (mysqli_connect_error()) {

   die("you are not connected: " . mysqli_connect_error());

}

echo "You are connected";

$conn->close();

?>

 

Endelea kufanya mazoezi, tukutane somo la tatu tutakapojifunza jinsi ya kutengeneza databse kwa kutumia PHP. Somo linalofata litategemea na msingi wako kutoka kwenye somo hili la pili.

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

 

SOMO LA 3

Katika somo la pili tiliona namna ya kuunganisha databe na PHP.  Katika somo hili tutajifunza jinsi ya kutengeneza database kwa kutumia php. Somo hili linategemea sana somo lililotangulia. hapa tutakwenda kutengeneza database ambayo tutaiita mafunzo. unaweza pia kutengeneza kulingana na unavyotaka wewe.

 

 

Ili uweze kutengeneza database kwa kutumia PHP kwana unatakiwa ujuwe jinsi ya ku open connection kwenye server na kisha kuunganisha connection hiyo na PHP kama tulivyojifunza somo lililotangaulia. baada ya kukonnect server sasa tutakwenda kutengeneza database.

 

 

kama ulishiriki vyema somo lililopita utakuwa umeelewa nama ya kuuganisha php na server.

<?php

$servername = "localhost";

$username = "root";

$password = "";

 

// kufanya connection

$conn = mysqli_connect($servername, $username, $password);

 

// kuangalia connection

if (!$conn) {

   die("You are not connected: " . mysqli_connect_error());

}

echo "You are connected";

?>

 

Kama umeshafika hapo kuna kazi ya ziada unatakiwa uifanya. Kwanza ni kuandaa variable kwa ajili ya kutengeneza database. Pia unatakiwa ujuwe SQL command ya kutengeneza database. rejea mafunzo ya database. Kama mambo yapo kama hivyo wacha nikujuze tena kuwa tunatengeneza database kwenye MySQL kwa kutumia SQL kwa “CREATE DATABASE

” kisha utahiyajika kutaja jina la database unalotaka kutengeneza. Mfano tunataka kutengeneza database inayoitwa mafunzo. hivyo tutasema CREATE DATABASE mafunzo

 

Baada ya hapo unatakiwa utengeneze sasa PHP variable kwa ajili ya kuwakilisha CREATE DATABASE mafunzo Kwa mara nyingi variable inayotumika ni $sql ila unaweza tumia yeyote ile unayotaka mfan ukasema $chai. Kama tayari unaelewa jinsi ya kuandaa variable hapa hutapata shida. hivyo variable yetu itasomeka:-

$sql = "CREATE DATABASE mafunzo"; 

 

 

Baada ya hapo kinachofuata ni kuweka meseji kwa ajili ya kutujuza kama database imeshatengenezwa ama laa. kufanya hivi tutatumia if else statement kufanya hivyo.  Hivyo tutaangalia variable zetu ambazo ni $conn kwa ajili ya ku connect databse na $sql kwa ajili ya kutengeneza database. hapa tunachoangalia ni je hizi variable zimefanya kazi. hivyo ytahitaji function ya kuangalia variable hizo. function yeyewe ni hii mysqli_query($conn, $sql) hiyo mysqli_query ndio function yenyewe ya kuangalia variable hizo.

 

 

Hivyo kama tumekwenda vizuri php code za kutengeneza database zitakuwa hivi:-

<?php

 

//kuandaa variable

$servername = "localhost";

$username = "root";

$password = "";

 

// kufanya connection

$conn = mysqli_connect($servername, $username, $password);

 

// kuangalia connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

 

// kutengeneza database

$sql = "CREATE DATABASE mafunzo";

if (mysqli_query($conn, $sql)) {

   echo "Database created successfully";

} else {

   echo "Error creating database: " . mysqli_error($conn);

}

 

//kufunga connection

mysqli_close($conn);

?>

 

Ukimaliza hapo pesti hizo code kwenye ukurasa wako wa php, kisha ufunguwe na browaer yako, hakikisha faili lipo kwenye localhost. kama utafanya hivyo utakuwa umeshatengeneza database yako. rudi kwenye phpmyadmin uone database yako.

 

Mwisho

Tukutane somo linalofuata utajifunza jinsi kutengeneza table na kufuta database na table kwa kutumia php.

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

 

SOMO LA 4.

Katika somo lililotangulia tumejifunza namna ya kutengeneza database kwa kutumia PHP. Hivyo umejifunza pia namna ya kuandaa variable kwa ajili ya kutumia SQL. Hivyo katika somo hili utakwenda kujifunza jinsi ya kutengeneza table. Tafadhali rejea mafunzo ya database level 1 kujikumbusha naman ya kutengeneza table.

 

Maandalizi

Maandalizi ni yale yale tuliokwisha kuyaona. kwanza ni kuandaa variable zinazohusu database, server na password, kisha ijuwe SQL ststement za kutengeneza table, kisha ujuwe ku connect database. Hivyo nitakuorodheshea haya yote ili iwe rahisi kwako.

 

  1. Variable zinazohusu database:

Hapa kuna variable nyingine tutaiongeza nayo ni variable ya kuwakilisha jina la database. Yaani kwa kuwa tunataka kutengeneza table, lazima sasa tuseme table hiyo tunakwenda kuitengenezea kwenye database ipi?. Hivy hapa nitatumia $dbname kunaanisha database name, hivyo kuwakilisha jina la database.

 

katika somo lililopita tulitengeneza databse iliyoitwa hoteli. Hivyo katika somo hili tutakwenda kutengeneza table yenye jina menu katika hiyo database yetu ya hotel. kumbuka jina la server ni localhost, na username ni root. password hakuna, hivyo patakuwa kama palivyo.

 

//kuandaa variable

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

 

  1. SQL statement za kutengeneza table

CREATE TABLE IF NOT EXISTS `menu` (

  `id` int(100) NOT NULL,

  `name` varchar(255) NOT NULL,

  `description` varchar(255) NOT NULL,

  `price` int(100) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Hii ni table tulioitengeneza katika somo la 9 mafunzo ya database bofya hapa kurejea somo

 

  1. variable za ku connect database

/ Create connection

$conn = mysqli_connect($servername, $username, $password);

 

  1. function kwa ajili ya kuangalia kama kuna tatizo ama umefanikiwa. apa ndipo tunatumia if else statement, kwa ajili ya kueleza kama table imefanikiwa itatuambia “table menu imetengeneza” Vinginevyo itatuambia “kuna tatizo” Tafadhali rejea mafunzo ya PHP kurejea jinsi condition ststement zinavyofanyakazi.

 

mysqli_query($conn, $sql)

 

Jinsi ya kutegeneza table:

Hapa ni kama ambavyo tumejifunza katika somo lililotangulia. Kitu ambacho kinabadilika ni pale tulipoweka SQL statemet za kutengeneza database hapa tutaweka za kutengeneza table. Hivyo code nzima zitaonekana hivi:-

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Kufanya connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

// kuangalia connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

 

// sql to CREATE TABLE IF NOT EXISTS

$sql = "CREATE TABLE IF NOT EXISTS `menu` (

 

 `id` int(100) NOT NULL,

 

 `name` varchar(255) NOT NULL,

 

 `description` varchar(255) NOT NULL,

 

 `price` int(100) NOT NULL

 

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;";

 

if (mysqli_query($conn, $sql)) {

   echo "Table menu imetengenezwa";

} else {

   echo "Kuna tatizo " . mysqli_error($conn);

}

 

mysqli_close($conn);

?>

 

Tengeneza faili la php kwenye local host kisha pest code hizo. ukimaliza funguwa faili hilo kwa kutumia browser yako, kama umeenda vizuri itakupa ujumbe kuwa tab menu imetengenezwa.

 

Tukutane somola 5 tutakapojifunza namna ya kufuta table na database. hakikisha unaelewa vyema somo lililotangulia kwani masomo haya yote yanategemeana. masomo yatakayofuata yatakuwa ni mazuri zaidi endapo haya yaliopita yameeleweka vyema.

 

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

SOMO LA 5

Tumesha jifunza namna ya kutengenezadatabase na table kwa kutumia PHP. Sasa somo hili tutajifunza namna ya kufuta database na table. Unaweza kufuta vyote kwa pamoja ama kufuta kimoja kimoja. Endapo utachaguwa kufuta table tu, basi database itabakia lakini ukifuta database, na table pia itafutika na data zilizomo.

 

Maandalizi makubwa hapa ni kama yaliotangulia Andaa variable zote zinazohitajika kama vile server name, database name, username, na password. Tutakwenda kufuta table yenye jina menu kwenye databse inayoitwa hotel. Hivyo database name yetu itakuwa hotel

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

Katika mafunzo ya database hakuwahi kusoma namna ya kufuta table kwa kutumia SQL. Sasa hapa nitakwenda kukujuza jinsi ya kufanya hivyo. SQL inayotumiaka ni DROP TABLE kisha unaweka jina la database yenye hiyo table kisha utaweka kidoto kati kisha ndipo utaweka jina la hiyo database. mfano DROP DATABASE hotel . menu. Hivyo variable ya statement hii itakuwa  $sql = "DROP TABLE `hotel`.`menu`";

 

Baada ya hapo utaandaa if else kwa ajili ya kukupa mrejesho kama umefanikiwa ama umefeli. Kama tulivyoona katika masomo yliyopita kufanya hivyo tutatumia function hii mysqli_query($conn, $sql)

 

CODE ZA KUFUTA TABLE ZITAONEKANA HIVI    

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

// Check connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

 

// delete database

$sql = "DROP TABLE `hotel`.`menu`";

if (mysqli_query($conn, $sql)) {

   echo "table DELETED successfully";

} else {

   echo "Error DELETING table: " . mysqli_error($conn);

}

 

mysqli_close($conn);

?>

 

 

JINSI YA KUFUTA DATABASE

Hakuna tofauti kubwa sana kati ya kufuta table na kufuta database. Kinachobaldilika hopo ni SQL statement baada ya DROP TABLE hotel.menu itakuwa DROP DATABASE hotel. baada ya hapo utafunguwa faili lako kwenye browser na majibu utayapata. ila hakikisha umebadili alert message za kujulisaha kuwa table imefutwa kuwa zikujulishe kuwa database imefutwa.

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

// Check connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

 

// delete database

$sql = "DROP database `hotel`";

if (mysqli_query($conn, $sql)) {

   echo "Database DELETED successfully";

} else {

   echo "Error DELETING database: " . mysqli_error($conn);

}

 

mysqli_close($conn);

?>

 

Mwisho

Tukutane somo la 6 tutajifunza jinsi ya kuweka data kwenye databse kwa kutumia PHP. Pia tutajifunza kuedit data hizo. Somo hili litakuwa chachu ya kujifunza matumizi ya html form katika kukusanaya madodoso.

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

 

SOMO LA 6 

KUINGIZA DATA KWENYE DATABSE

Kwa kuwa katika somo lililotangulia tmezifuta databse ze ztu sasa nitakuba code hapa za SQL ili uweze kutengeneza database na table kisha tutaendelea somo kwa kuingiza data kwenye hiyo databse yako.

 

tengeneza databse iite hotel kisha itengenezee table kwa kupest code hizi hapo chini kwenye uwanja wa SQL. (Rejea mafunzo ya database jinsi ya kutengeneza table)

 

CREATE TABLE IF NOT EXISTS `menu` (

  `id` int(100) NOT NULL,

  `name` varchar(255) NOT NULL,

  `description` varchar(255) NOT NULL,

  `price` int(100) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

 

MAANDALIZI:

kama tulivyoona hapo mwanzoni kwanza unatakiwa u connect database. Na kuandaa variable zote pamoja na SQL kwa ajili ya kuingiza data. Kama tulivyojifunza katika mafunzo ya databse. tunatumia INSERT INTO ili kuingiza taarifa kwenye databse. (tafadhali rejea mafunzo ya database namna ya kuingiza data kwenye dable). Hivyo $sql variable itakwenda kuwakilisaha SQL statemen t ya kuingiza datada. Hakikisha unahusisha na jina la databse. mfano INSERT INTO menu.

 

jambo linguine unatakiwa ukumbuke majina ya column za table yako. kwani hizo data unazokwenda kuziweka zinaingia kwenye column. table yetu ya menu kama inavyoonekana hapo juu, ina column 4 ambazo ni, id, name, description na price. Yaani ni kuwa tnanakwenda kuweka values kwenye hizo column 4. VALUE ni kile unachokwenda kuweka. Mfano name ukiweka ugali, inamaana value hapo ni ugali. (tafadhali rejea mafunzo ya database jinsi ya kuingiza data). 

 

Kwa mfano tunataka kuweka menu yenye id 1, name Ugali, description iwe karibu ugali mtamu, na price iwe 1500  hivyo SQL variable itakuwa hivi   

$sql = "INSERT INTO menu (id, name, description, price)

VALUES ('1', 'ugali', 'pata ugali mtamu', 1500)";

 

Baada ya hapo utaandaa alert message ili kukujulisha kuwa kazi imefanyika. Kama kawaida tutatumia if else ili kutuambia kuwa kama data imeingizwa itupe meseji “taarifa zimeingizwa kikamilifu” vingineyo ituambie “kuna tatizo” kufanya hivi tutatumia  mysqli_query($conn, $sql)

 

CODE NZIMA ZA KUINGINZA DATA KWENYE TABLE ZITAONEKANA HIVI:

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

// Check connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

 

// delete database

$sql = "INSERT INTO menu (id, name, description, price)

VALUES ('1', 'ugali', 'pata ugali mtamu', 1500)

";

if (mysqli_query($conn, $sql)) {

   echo "Taarifa zimeingingwa kikamilifu";

} else {

   echo "Kuna tatizo: " . mysqli_error($conn);

}

 

mysqli_close($conn);

?>

   

Hakikisha umeshatengeneza table ya menu kwa kutumia SQL code nilizozitoa hapo mwanzoni mwa somo hili. Kama utakuwa umefanya kila kitu sawa, pest code hizo hao juu kwenye faili la php kisha lifunguwe kwa prowser yako, hakikisha faili lipo kwenye localhost.

Kama umefanya kila kitu sawa taona data zimeshaingia.

 

KUINGIZA DATA NYINGI KWA PAMOJA

Pia unaweza kuingiza data nyingi wa kwakati mmoja. Mfano unataka kuongez menu za vyakula kama ubwabwa, makande, chips na chai. Hizi zote utaweza kuzifanya kwa pamoja. kwanza andaa SQl ststemen ya kufanya hizi.

mfano:

 

Hivyo hapa utahitajika kuandaa $sql variable 4 kwa ajili ya kuwakilisha hizo dada kwa kila moja na variable yeke. Hii inamaana $sql variable zitaonekana hivi:-

$sql = "INSERT INTO menu (id, name, description, price)

VALUES ('2', 'wali', 'pata wali tamu', '2000');";

$sql .= "INSERT INTO menu (id, name, description, price)

VALUES ('3', 'Chips', 'Chips kuku', '2300');";

$sql .= "INSERT INTO menu (id, name, description, price)

VALUES ('4', 'makande', 'makande safi laini', '1900')";

 

Kuna jambo hapo nikujuze. Baada ya alama ya = kuanzia kwenye $slq ya pili utaona kuna alama ya nukta. Hicho kidot huitwa   concatenation operator    hapo kimetumiaka kuunganisha hizo statemen. Tutakuja jifunz zaidi mbeleni. 

 

Kitu kingen hpa cha kuangalia ni kuwa hapa tutabadili ile function ya kuangalia kama data zieongezwa. hapa tutatumia hii mysqli_multi_query($conn, $sql)) yaani hapa tunaangalia kuwa je multi query kumaanisha kuwa data zilizoingizwa ni zaidi ya moja. je zimeingizwa kimamilifua ama laa. 

 

 

CODE NZIMA ZITAONEKANA KAMA HIVI

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

// Check connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

 

$sql = "INSERT INTO menu (id, name, description, price)

VALUES ('2', 'wali', 'pata wali tamu', '2000');";

$sql .= "INSERT INTO menu (id, name, description, price)

VALUES ('3', 'Chips', 'Chips kuku', '2300');";

$sql .= "INSERT INTO menu (id, name, description, price)

VALUES ('4', 'makande', 'makande safi laini', '1900')";

 

if (mysqli_multi_query($conn, $sql)) {

   echo "Taarifa mpya zimeingizwa kikamilifu";

} else {

   echo "Error: " . $sql . "<br>" . mysqli_error($conn);

}

 

mysqli_close($conn);

?>

 

Kama mabo yote yalikaa sawa utapata matokeo hata

 

Mwisho

Tukutane somo la 7 tutakwenda kujifunza namna ya kuzisoma data kwenye database kwa kutumia PHP. Kuzisoma data kutoka kwenye databse kwa kutumia PHP ni katika hatuwa muhimu sana. Hivyo usikose somo hilo.

 

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

 

SOMO LA 7

KUSOMA DATA KUTOKA KWENYE DATABSE KWA KUTUMIA PHP

katika somo liliopita umejifunza jinsi ya kuingiza data kwenye databse. Sasa somo hili nitakujuza namna ya kuzisoma data hizo kwnye ukurasa wa php. hii ni hatuwa muhimu, kwani huwezi ktengeneza blog kama hujui jinsi ya kusoma database kwenye ukurasa wa wavuti.

 

Maandalizi:

Kma kawaida kwanza tunandaa variable muhimu kwa ajili ya ku connect databse. variable hizo ni servername, database name, username na password. Hivyo variable hizo zitakuwa hizi:

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

$conn = mysqli_connect($servername, $username, $password, $dbname);

 

?>

 

Hapo nimekukusanyia variable sa database, server, user na password, pia kuna variable $conn kwa ajili ya ku connect database. Kwa ufupi hapo umesha connect kilichobakia ni kuzisoma data.

 

Kumbuka tumejifunza SQL ya kusoma daata ni SELECT FROM kisha utaweka jina la table. Mfano wa SQL hii itakuwa ‘SELECT * FROM menu’. kumbuka hiyo * inamaanisha All, yaani data zote.

 

Hatuwa inayofata ni kutengeneza $sql variable ambayo itahisika kuwakilisha SQL statement ya ku select data (kuzisoa data) kutoka kwenye table menu. hivyo variable hiyo ni kama tulivyotangulia kuiona inaweza kuwa hivi:-

$sql = mysqli_query($conn, "SELECT * FROM `menu` ");

 

Kinacchofuwata ni kuzinyakuwa hizo data zilizosomwa na php yaani fetching data. Hapa tutatumia method inayoitwa $fetch  kwa pamoja hii inakuwa hivi while($fetch = mysqli_fetch_array($sql)){ Tutakuja jifunza zaidi kuhusu while inavyotumika ila kwa ufupi ni kuwa while ni ndugu na if statement. Hapo imetumika kuselect row zote zilizopo kwenye hiyo table.  Hii ya mysqli_fetch_array($sql) Hii function hapa imetumika ili kuunganisha $sql variable iliyosoma data na kuzileta kwenye php. Kwa pamoja hapa inatengeneza code hii

<?php

 

       $sql = mysqli_query($conn, "SELECT * FROM `menu` ");

       while($fetch = mysqli_fetch_array($sql)){

 

       ?>

 

Hii ndio sasa hutumika kuzisoma data zote za kwenyetable yako. Hiyo SELECT FROM menu unaweza kuibadilisha kadiri unavyohitaji, unaweza kutumia WHER, ORDER BY, LIMIT na kadhalika. (rejea somo la 8,9, na 10 mafunzo ya databse)

 

Baada ya hapo sasa ni wewe kuzosoma hizo data kadiri unavyotaka. hapa tutatumia echo ama print ili kuonyesha php result (rejea somo la 2 na 3 mafunzo ya php level 1). kwa mfano sisi tunataka kusoma majina yote ya menu hivyo tutatumia

<?php echo $fetch['name']; ?><br>

 

Hapo tume fetch name yaani maina yote. kama ukiondoa name ukaweka price maana yake utasoma price tu na kama utaweka <?php echo $fetch['name']; ?><?php echo $fetch['description']; ?><?php echo $fetch['price']; ?><br> hapo utasoma majina, description zao na price zao. hebutuone mfano wa code yote

 

CODE NZIMA IPO HIVI

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

$conn = mysqli_connect($servername, $username, $password, $dbname);

?>

<?php

$sql = mysqli_query($conn, "SELECT * FROM `menu` ");

       while($fetch = mysqli_fetch_array($sql)){

       ?>

<?php echo $fetch['name']; ?><br>

<?php }?>

 

 

Hii inatkupa matokeo haya

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

$conn = mysqli_connect($servername, $username, $password, $dbname);

?>

<?php

$sql = mysqli_query($conn, "SELECT * FROM `menu` ");

       while($fetch = mysqli_fetch_array($sql)){

       ?>

<?php echo $fetch['name']; ?><?php echo $fetch['description']; ?><?php echo $fetch['price']; ?><br>

<?php }?>

 

 

hii itakupa matokeo haya

 

Mwisho

Somo litakalofata nitakuelekeza namna ya kuzipanga vizuri kwenye table. Pia tutakwenda kujifunza jisnsi ya kuangilia muonekano wa data zako kwa kutumia where , order by na kadhalika.

 

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

 

SOMO LA 8

Katika somo la 7 ulijifunza jinsi ya kusoma data za kwenye table kutoka kwenye databse. Katika somo hili utajifunza anmna ya kupangilia muonekano wa taarifa zako kutoka kwenye database. Hapa pia tutajifunza kutengeneza table ya ajili ya kuinyesha data ama kutumia paragraph.

 

Kabla ya kuendelea na somo kuna kitu kwanza nahitaji ukijuwe. Ni kuwa data za kwenye database unaweza kuzisoma kwenye HTML paragraph na table ama kwenye dag za kuorodhesga na namna ingine unayoitaka. Sasa hapa nataka nikufundishe kutengeneza kajitable kadogo kwa ajili ya kuwekea data zetu.

Tumia code hizi kutengeneza table ya HTML kwa ajili ya kuwekea data zetu. Tafadhali rejea mafunzo ya HTML Angalia video hii

<style>

   table, th, td {

       border: 1px solid black;

   }

</style>

<table style="width:100%">

   <tr>

       <th>id</th>

       <th>Name</th>

       <th>Description</th>

       <th>Price</th>

   </tr>

   <tr>

       <td></td>

 

   </tr>

</table>

 

Baada ya hapo sasatutakwenda kuzisoma data zetu kwenye hii table. Hivyo unatakiwa utumie SELECT kwa ajili ya kusoma database. Rejea somo lililotangulia.Kwa ,ujibu wa somo lililotangulia code nzima tunayoitumia kusoma database kwenye html ni hizi 

<?php

$sql = mysqli_query($conn, "SELECT * FROM `menu` ");

       while($fetch = mysqli_fetch_array($sql)){

       ?>

Kisha katika kila tagi hii <td> ndani yake kutakwenda kuziweka data zetu kwa kutumia echo au print. Itambulike kuwa <th> maana yake ni table head na <td> maana yake ni table data. Hivyo <th> ni kwa ajili ya title au heading za kila column, na <td> ni kwa ajili ya kuwekea hizo data. rejea mafunzo ya html level 2). Ili kutumia echo kuweka hizo data kwenye <td> kwa mujibu wa somo lililoangulia tunatumia code hizi:-

<?php echo $fetch['x']; ?> hapo kwenye x unaweza kuweka jina la column, kama id, au name au price au description. Kwa ufupi <td> itasomeka hivi 

<tr>

       <td><?php echo $fetch['id']; ?></td>

       <td><?php echo $fetch['name']; ?></td>

       <td><?php echo $fetch['description']; ?></td>

       <td><?php echo $fetch['price']; ?></td>

   </tr>

 

Kama utafuata maelekezo vizuri code nzima zitakuwa hivi:-

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

$conn = mysqli_connect($servername, $username, $password, $dbname);

?>

<style>

   table, th, td {

       border: 1px solid black;

   }

</style>

<table style="width:100%">

   <tr>

       <th>id</th>

       <th>Name</th>

       <th>Description</th>

       <th>price</th>

   </tr>

 

<?php

$sql = mysqli_query($conn, "SELECT * FROM `menu` ");

       while($fetch = mysqli_fetch_array($sql)){

       ?>

   <tr>

       <td><?php echo $fetch['id']; ?></td>

       <td><?php echo $fetch['name']; ?></td>

       <td><?php echo $fetch['description']; ?></td>

       <td><?php echo $fetch['price']; ?></td>

   </tr>

</ta<?php }?>ble>

 

Hizi zitakupa matokeo haya:-

Sasa kama umeshafika hatuwa hii hapa ndipo tutaanza na somo letu. Tytakwenda kubadili mpangilio wa hizi data kwa kutumia PHP na WHERE na ORDER  kwenye SQL. Jambo la kuangalia hapa ni kubadili SQL za kwenye kuselect, maeneo yaliyobaki ni sawa.

 

MATUMIZI YA ORDER

1.Kuzipanga kwa kuzingatia alphabeti (kutoka A kwenda Z)

SELECT * FROM `menu` order by name asc

 

2. Kuzipanga kwa kuzingatia alphabet (kutoka Z kwenda A)

SELECT * FROM `menu` order by name desc

 

3. Kuzipanga kulingana na price kutoka ndogo kwenda kubwa

SELECT * FROM `menu` order by price asc

 

4. Kuzipanga kulingana na price kutoka kubwa kwenda ndogo

SELECT * FROM `menu` order by price desc

 

5. Kuzipanga kwa mvurugiko yaani random

SELECT * FROM `menu` order by rand()

 

6. kupanga idadi maalumu ya taarifa unazotaka kuzionyesha mfano unataka kuona idadi maalumutu. Tuseme unataka kuona menu 3 tu hapa tutatumia limit 3. (Rejea mafunzo ya database)

SELECT * FROM `menu` limit 3

 

7. Kuina tatu za mwisho tu

SELECT * FROM `menu` order by id desc limit 3

 

MATUMIZI YA WHERE

1. Tunataka kuona menu ambazo price yake ni zaidi ya 3000

SELECT * FROM `menu` where price > 2000

 

2. kutaka kuona data kulingana na prie kati ya 1300 mpaka 2400

SELECT * FROM `menu` where price between 1200 and 2400

 

3. kutaka kuona data ambazo id yake ni ndogo kuliko 3 

SELECT * FROM `menu` where id <3

 

Unaweza kuendelea na mifano mingi zaidi ya hiyo. Tafadhali rejea mafunzo ya database somo la 8,9 na 10. Utaweza kujifunza kuchanganya order by na where. 

 

Tukutane somo linalofuata tutajifunza namna ya Kuedit na kufuta data kwenye database kwa kutumia PHP.

 

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

SOMO LA 9 

Katika somo la 8 ulijifunza jinsi ya kupangilia muonekano wa taarifa unazozisoma kutoka kwenye atabase.  Katika somo hili utajifunza namna ya ku update na kufuta taarifa zilizopo kwenye database.

 

Ili ku update data tunatumia UDATE na kufuta tunatumia DELETE. Ni muhimu sana kujuwa kufuta na ku update taarifa kwa sababu mbalimbali. Hatahivyo unatakiwa pia uwe makini wakati wa kufuta taarifa, kwani usipoangalia makini command zako unaweza kujikuta unafuta data zote ama table ama database, ama ukafuta row tofauti na uliokusudia.

 

  1. ku update taarifa kwenye database.

Mfano tunataka kubadili price kwenye ugali kutoka 1500 kuwa 1000. hivyo hapa tutatakiwa ku update taarifa hizi. Kitu cha kwanza unachotakiwa kujuwa ni id ya ugali ni ngapi kwenye table yako. Kulingana na table yetu ya menu ad ya ugali ni 1.

 

Jinsi yakuandaa SQL ya kuweza ku update taarifa

Utaandika UPTADE kisha ikifuatiwa na jina la table mfano UPDATE menu kisha utaandika SET ili kuweza kuset hizo data mpya. mfano UPDATE menu SET itafuatiwa na column unayotaka kui update ikifuatiwa na alama ya =, kwakuwa sisi tunataka ku update column ya price itakuwa hivi UPDATE menu SET price baada ya hapo ni kuweka VALUE au thamani ya hizo data unazotaka ziwe, hakikisha ziwe ndani ya ‘’ kama string (rejea mafunzo ya php kuhusu string). hivyo itakuwa UPDATE menu SET price = ‘1000’ hapa itafuatiwa na WHERE kisha utaweka id ya hiyo row yako. hiyo itakuwa hivi UPDATE menu SET price = ‘1000’ WHERE id = 1

 

kinachofuata ni kuandaa variable zako kwa ajili ya ku connect na database kama tulivyoona katika masomo yaliopita. Variable ya ku update sasa itasomeka hivi 

$sql = "UPDATE menu SET price='1000' WHERE id=1";

 

Sehemu zilizobakia kila kitu hakuna mabadiliko mengi. Hivyo code nzima za ku update ugali zitasomeka kama hivi

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

// Check connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

 

$sql = "UPDATE menu SET price='1000' WHERE id=1";

 

if (mysqli_query($conn, $sql)) {

   echo "Record updated successfully";

} else {

   echo "Error updating record: " . mysqli_error($conn);

}

 

mysqli_close($conn);

?>

 

 

  1. Kufuta data kwenye database.

Kama tulivyoona kwenye ku udate kwanza lazima ujuwe id ya hicho unachokwenda kuki update. Basi hata ku delete nako lazima ujuwe id ya hicho unachokwenda kuki delete. sasa chukulia kuwa hatuitaki menu ya ugali hivyo tunataka kuifuta kabisa. Kifanya hivi tutatumia DELETE.

 

Jinsi ya kuandaa SQL kwa ajili ya ku delete.

kwanza utaanza na neno DELETE likifuatiwa na FROM likifuatiwa na jina la table ambalo ni menu likifuatiwa na neno WHERE likifuatiwa na id pamoja na alama ya = kisha utaweka id ya hiyo data unayotaka kufuta. Mfano wa sql hii ni DELETE FROM menu WHERE id = 1. Hivyo variable ya SQL itakuwa hivi 

$sql = "DELETE FROM menu WHERE id=1";

 

Baada ya hapo ni kuandaa variable zote zinazohitajika ku connect database. Rejea masomo yaliopita. Hivyo code nzima za ku delete zitasomeka kama hivi:-

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

// Check connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

 

// sql to delete a record

$sql = "DELETE FROM menu WHERE id=1";

 

if (mysqli_query($conn, $sql)) {

   echo "Record deleted successfully";

} else {

   echo "Error deleting record: " . mysqli_error($conn);

}

 

mysqli_close($conn);

?>

 

Tukutane somo la 10 tutakapojifunza jinsi ya ku search (kutafuta ) taarifa maalumu kwenye database.

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

 

SOMO LA 10 

 

KU SEARCH DATA

Somo hili la 10 litakwenda kukufundisha jinsi ya kutafuta taarifa kwenye database. hapa tutatumia table yetu ya menu. Kwa mfano kwwenye menu kuna zaidi ya item 200 unataka kutafuta ugali. Baada ya kukodoa macho mpaka 200 unaweza kutafuta tu. kufanya hivi tunatumia LIKE pia alama ya % itakuwa ikitumika.

 

Kuandaa sql kwa ajili ya ku serarch

kwanza utatakiwa kuselect SELECT ikifuatiwa na column ya hiyo iten unayotaka kuisearch kulingana na mfano wetu ni name ikifuatiwa na FROM kisha jina la table kisha WHERE ksiah jina la column ambapo item uayoserarch ipo kisha LIKE kisha hicho unacho kitafuta kama ni ugali ila hakikisha unakiweka ndani ya ‘’ kama string.  mfano SELECT Name FROM menu where name LIKE ‘wali%’

 

Sasa hapa kuna japo alama ya % ikiwa mbele ya hiyo inayosearch (wali%) maana yake unatafuta neno linalomaliziwa na hicho unachoserarch. na ikiwa alama ya % utakaa mwano (%ugali) maana yake unatafuta neno litakaloanziwa na hicho unacho search. na ikiwa alama ya % itakaa mbele na nyuma  (%wali%)  ya hilo neno unalo search maana yake unatafuta neolo alililoanziwa ama kuishiwa na hicho unachosearch. 

Kwa maelezo hayo basi variable ya kusearch ugali inaweza kuwa hivi

 $sql = mysqli_query($conn, "SELECT name FROM `menu` where name LIKE '%wali'");

 

Kiachofuat ni kuandaa table ya HTML kwa ajili ya kupangilia muonekano. Pia andaa variable zako kwa ajili ya ku connect. kama kila kitu kipo sawa code zake zinaweza kuwa kama hivi

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

$conn = mysqli_connect($servername, $username, $password, $dbname);

?>

<style>

   table, th, td {

       border: 1px solid black;

   }

</style>

<table style="width:100%">

   <tr>

 

       <th>Name</th>

 

   </tr>

 

<?php

$sql = mysqli_query($conn, "SELECT name FROM `menu` where name LIKE '%wali'");

       while($fetch = mysqli_fetch_array($sql)){

       ?>

   <tr>

 

       <td><?php echo $fetch['name']; ?></td>

 

   </tr>

<?php }?>

</table>

 

Hii itakupa matokeo haya

 

Pia kufatuta kwa mtindo wa alphabeti kwa mfano ukasema nataka kuona majina yote yalioanziwa na heruzi u,  hapa itakuwa hivi (%u) ama majina yte yalioishiwa na herufi u (u%) ama majina yalioanziwa na u na kuishiwa na i (u%i)

 

Tutajifunza zaidi kuhusu mada hii kwenye muendelezo wa course ya database. Kwa sasa hapo unachotakiwa ni kufanya mazoezi kwa wingi ili iwe rahisi kuelewa masomo yanayofata..

 

Tukutane somo la 11 tutajifunza jinsi ya kuzifanyia mahesabu taarifa zilizomo kwenye database.

 

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

 

SOMO LA 11

Kabla ya kuendelea na somo kwanza Kwenye database yetu ya hotel, kwenye table ya menu ongeza data zifuatazo, kwa kuingia kwenye uwanja wa SQL kisha una pest data hizi:-

Rejea mafunzo ya database jinsi ya kuongeza data kwenye Mysql kwa kutumia SQL.

 

(6, 'supu', 'Pata supu ya smaki, pweza, na nyama ', 1800),

(7, 'Soda', 'Pata soda za aina zote kwa bei ileile', 500),

(8, 'juisi', 'Kunywa juisi za matunda halizi umalize kiu yako', 1200),

(9, 'internet', 'Huduma ya internet ipo kwa bei poa kwa lisaa', 900),

(10, 'Usafiri', 'Tunatoa usafiri wa haraka ', 22000);

(1, 'ugali', 'pata ugali mtamu', 1000),

 

 

  1. Kuhesabu idadi ya row kwenye tabl

Kama unataka kujuwa je kuna menu ngapi kwenye orodha, utatakiwa kuhesabu idadi ya row ambazo ndio zinabeba hizo data. kufaya hivi tutatumia function ya kuhesabu row ambayo ni COUNT(). Rejea mafunzo ya database somo la 12  hivyo variable ya $sql itakuwa hivi

 $sql = "SELECT COUNT(name) FROM menu";

 

Pia tutakuwa na variable nyingine kwa ajili ya kuangalia connection hii tutaipa jina la result $result = $conn->query($sql) Pia tutahitajika kuwa na variable nyingine kwa ajili ya ku fetch data hii itakaa nadni ya while ili kuangalia kama connection imefanyika iweze ku fetch data. Variable hiyo itatupa matokeo ya $result ambayo imeangalia connection.Variable hii tutaiita $row ambayo itakuwa hivi $row = mysqli_fetch_array($result)     

Kwa pamoja na while tunapata:-

 while($row = mysqli_fetch_array($result)){

   echo "Jumla ya row ni :". $row['COUNT(price)'];

}

Code nzima ya kuhesabu row itakuwa hivi:

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

 

//sql query to count rows

$sql = "SELECT COUNT(name) FROM menu";

$result = $conn->query($sql);

//display data on web page

while($row = mysqli_fetch_array($result)){

   echo "Jumla ya row ni :". $row['COUNT(name)'];

}

 

//close the connection

 

$conn->close();

?>

 

  1. Kuangalia Kutafuta average ya price zote kwenye menu

Katika mafunzo ya database tulijifunza kuwa unapotaka kutafuta average tunatumia function hii AVG() na SQL yake inakuwa hivi SELECT AVG(price) FROM menu hivyo kuandaa sql variable itakuwa hivi $sql = "SELECT AVG(price) FROM menu"

Mambo mengine yatabakia kama yalivyo, utatakiwa kwenye echo   badala ya  $row['count(price)sasa itakuwa $row['AVG(price)

            

Kama kila kitu kipo sawa. Pest code hizi kwenye ukurasa wako wa php Itakuletea average ya price zote kwenye menu.

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

 

//sql query to find average

$sql = "SELECT AVG(price) FROM menu";

$result = $conn->query($sql);

//display data on web page

while($row = mysqli_fetch_array($result)){

   echo "Average ni:". $row['AVG(price)'];

}

 

//close the connection

 

$conn->close();

?>

 

  1. Kutafuta jumla ya price za menu yote

Tulijifunza kuwa ukitaka kutafuta jumla utatumia function hii SUM() mfano SELECT SUM(price) FROM menu kwa kutumia sql hii variable yake itakuw hivi $sql = "SELECT SUM(price) FROM menu"; Variable ya $row sasa itakuwa $row['SUM(price)

   

  Code nzima ya kutafuta total itakuwa hivi

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

 

//sql query to find sum

$sql = "SELECT SUM(price) FROM menu";

$result = $conn->query($sql);

//display data on web page

while($row = mysqli_fetch_array($result)){

   echo "Jumla upo ni:". $row['SUM(price)'];

}

 

//close the connection

 

$conn->close();

?>

 

  1. Kutafuta Maximum na minimun

Unapotafuta maximum maana yake unatafuta menu yenye price kubwa kuliko zote. Na unapotafuta minimum maana yeke unatafuta menu yenye price ndogo kuliko zote.

 

Katia mafunzo ya database tulijifunza kuwa kutafuta maximum tunatumia MAX() mfano SELECT MAX(PRICE) FROM menu na tunapotafuta minimum tunatumia MIN() mfano SELECT MIN(PRICE) FROM menu hivyo sql variable itakuwa 

$sql = "SELECT  MAX(price) FROM menu";

$sql = "SELECT  Min(price) FROM menu";

 

CODE ZA KUTAFUTA MAXIMUM

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

//sql query to find the maximum price

$sql = "SELECT  MAX(price) FROM menu";

$result = $conn->query($sql);

//display data on web page

while($row = mysqli_fetch_array($result)){

   echo "Maximum price :". $row['MAX(price)'];

}

 

//close the connection

 

$conn->close();

?>

 

 

CODE ZA KUTAFUTA MINIMUM

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

// Create connection

$conn = mysqli_connect($servername, $username, $password, $dbname);

//sql query to find the minimum price

$sql = "SELECT  MIN(price) FROM menu";

$result = $conn->query($sql);

//display data on web page

while($row = mysqli_fetch_array($result)){

   echo "Minimum price :". $row['MIN(price)'];

}

 

//close the connection

 

$conn->close();

?>

 

 

Tukutane somo la 12 tutakapojifunza jinsi ya kutumia condition statement kwa kutumia data zeti zilizopo kwenye table.

 

 

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

 

 

 

SOMO LA 12

Hapa tutakweda kujifunza jinsi ya kutumia condition sentence zile za if else if else. Kwenye mafunzo ya PHP level 1 somo la 10 tulishajifunza kutumia condition sentence. Sasa hapa tutakwenda kuona jinsi ambavyo tunaweza kuzitumia kwenye database. hapa nitakwenda kukufundisha kwa mifano:

 

Ni kuwa una Tsh 1300 na unataka kujuwa kwa pesa hiyo ni chakula gani utapata kwa hiyo menu. Kufanya hivi tutatengeneza html table yenye column 4 ya kwanza ni kwa ajili ya id, ya pili ni kwa ajili ya majina ya menu, ya tatu ni kwa ajili ya ststus, kuonyesha ambayo unapata itaandika YES na ambayo hupatu itaandika NO.

<html>

<body>

<style>

   table, th, td {

       border: 1px solid black;

   }

</style>

<table style="width:100%">

   <th>Id</th>

   <th>Menu zote</th>

   <th>Price</th>

   <th>Status</th>

 

Kisha kila kitu ni kama tulivyofanya huko mwanzo kwenye ku connect na ku select data ili uweze kuzisoma kwenye ukurasa wa wavuti. Tutatumie 

$sql = mysqli_query($conn, "SELECT * FROM `menu` ");

while($fetch = mysqli_fetch_array($sql)){

   ?>

   <tr>

 

       <td><?php echo $fetch['id']; ?></td>

       <td><?php echo $fetch['name']; ?></td>

       <td><?php echo $fetch['price']; ?></td>

 

Sasa katika <td> za status ndipo tutakwenda kutumia if else. Kusema kuwa kama price ni ndogo kuliko 1300 echo isome YES na vinginevyo isome NO

<td>

<?php

if ($fetch['price'] <1300){

   echo "<b>YES</b>";

}else echo "NO";

?>

</td>

 

Code zote zinaweza kuwa hivi

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

$conn = mysqli_connect($servername, $username, $password, $dbname);

?>

<html>

<body>

<style>

   table, th, td {

       border: 1px solid black;

   }

</style>

<table style="width:100%">

   <th>Id</th>

   <th>Menu zote</th>

   <th>Price</th>

   <th>Status</th>

   <?php

   $sql = mysqli_query($conn, "SELECT * FROM `menu` ");

   while($fetch = mysqli_fetch_array($sql)){

       ?>

       <tr>

 

           <td><?php echo $fetch['id']; ?></td>

           <td><?php echo $fetch['name']; ?></td>

           <td><?php echo $fetch['price']; ?></td>

           <td>

           <?php

           if ($fetch['price'] <1300){

               echo "<b>YES</b>";

           }else echo "NO";

           ?>

           </td>

       </tr>

   <?php }?>

</table>

 

</body>

</html>

 

 

Pia kwa mfano unataka kama price ni chini ya 1300 echo iseme Unapata, na kama ni zaidi ya 2000 echo iseme Bosi vinginevyo iseme Hupati. Hapa tutacheza na if, else if, else

<?php

if ($fetch['price'] <1300){

   echo "<b>Unapata</b>";

}else if ($fetch['price'] >2000){

   echo "Bosi";

}else echo "Hupati"

?>

 

Hii itakupa matokeo haya

 

Unaweza kufanyia mazoezi zaidi. Tukutane kwenye somo la 13 tutakapojifunza Jinsi ya ku upload file kwenye database kwa kutumia php. Pia utajifunza kulisoma hilo faile uliloupload kwa kutumia php.

 

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

 

 

SOMO LA 13

Katika somo hili utajifunza jinsi ya ku upload faili lolote kwenye database. Katika mafunzo ya database tulijifunza kuwa media fail zote zinakuwa katika BLOB. Hivyo itabidi tuongeze column nyingine kwenye table yetu. column hiyo tutaiita file. Ingia kwenye databse yako hotel kisha ingia kwenye uwanja wa SQL kisha pest code hizi ALTER TABLE `menu` ADD `file` BLOB NOT NULL AFTER `price`;     Kufanya hivyo utakuwa umeongeza column mpya inayoitwa file.

 

Kuna namna mbili tunawea kuzitumia ili ku upload file kupitia ukurasa wa wavuti. Njiaya kwanza ni kutumia blob ambapo fili lenyewe linakwenda kukaa kwenye database. Njia hii sio nzuri kama database yako ni ndogo, kwani itaweza kujaa kwa haraka. Kwa kupitia niia hii file litakaa kmoja kwa moja kwenye database. 

 

Njia ya piili ni ku upload taarifa za faili tu ila faili lenyewe linabakia kwenye mafolder ya website tyako. Kwa kutumia njia hii storage pekee ndio hutumika ila database itabakia kuwa na taarifa kuhusu hilo faili kama jina, path, aina, ukubwa wake, limewekwa limni n.k. Hivyo ukitaka kuliona file hilo lazima uangalie taarifa kwenye database. lakini pia utaweza kulikuda kwenye ma folder ya website yake.

 

katika somo hili tutatumia nia ya kwanza. Nia ya pili tutaijuwa katika muendelezo wa course hizi. Ili ku upload file kwa kutumia njia ya kwanza yaani kwenye blob, ingia kwenye table ya menu. Kisha chaguwa menu unayotaka kuiwekea picha, kisha bofya edit kisha sehemu ya file utaona pana Choose File

Ukibofya hapo utapelekwa kwenye storage ya kifaa chako ili kuchaguwa file. Baada ya kucaguwa file bofya Go. hakikisha faile lako hallizidi KB 64. Baada ya hapo utakuwa umesha upload file lako. File hilo litakuwa katika mfumo wa herufi na nmanamba, hivyo ili tuweze kulisoma tutatitajika ku encode kutoka maherufi na namba kuwa image.

 

Katika table yetu tulioitengeneza katika somo lililopita sasa tutaongeza <td> ya kuonyesha picha. Hivyo katika <th>ongeza moja ya picha kisha katika <td> utaongeza moja ya picha. Katika mafunzo ya html tumejifunza namna ya kuweka picha kwenye ukurasa wa wavuti ni kwa kutumia tag aya <img> Hivyo tutahitajika kutumia tag hii ili ku load picha. 

 

Kitu cha kukumbuka ni kuwa lazima ujuwe path ya hiyo pic utaipata wapi path inaingia kwenye src=””> Kwa kuwa path ya file la kwenye blob ipo katika mfumo wa string utahitajika kutumia character set, standard tutatumia UTF-8 pia tutatumia base 64. (Tutajifunza mbeleni kuhusu hizi base) src="data:charset=utf8;base64 pia  Tutahitajika kufanya encoding ili kubadili hizi string zilizopo kwenye base 64. Kufanya hivi tutatumia function ya ku encode base64_encode ndani yake  ndipo tutakwena kufetch file path. Kwa pamoja tag ya image itakuwa hivi  <img src="data:charset=utf8;base64,<?php echo base64_encode($fetch['file']); ?>">

 

Sasa tutakwenda kuweka image kwenye <td> Ili kuweza kuiload pamoja na data nyingine. Hakikisha kila menu umeshaiwekea image yake. Mi nimetumia image moja ambayo nimeiandika no image ili kupunguza muda wa ku upload ma image meengi.

 

Mpaka kufikia hapo utakuwa umejifunza jinsiya ku upload file kwenye database. Tutajifunza zaidi kwa kutumia php katika muendelezo wa course hii. Tukutane somo linalofuata ambapo utajifunza namna ya kutumia HTML form kwenye php kwa ajili ya kukusanya madodoso.

 

Mafunzo haya yamekujia kwa ihsani ya Bongoclass

Web: www.bongoclass.com

Email: [email protected]

 

 

SOMO LA 14

Katika somo hili ninakwenda kukufundisha jinsi ya kukusanya madodoso kwa kutumia html form na PHP. Katika somo hili utakwenda kuongeza data kwenye menu yetu kwa kutumia html form. Kufanya hivi tutatengeneza file la php lenye sehemu kuu 2. Moja ni kwa ajili ya kukusanya taarifa, na nyingine ni kwa ajili ya ku process taarifa na kuziweka kwenye database.

 

Sehemu ya kwanza (HTML FORM)\

Kumbuka kuwa tumejifunza kwenye mafunzo ya php level 1 kuwa html form ina sehemu mbalimbali ambazo ni method, action, submit na sehemu ya kuweka data. Method nazo zipo mbili kuna POST na GET. Hizi ni njia ambazo taarifa zako hubebwa kutoka kwenye html form kwenda kwenye code za ku process hizo taarifa na kuziweka kwenye database.

 

Tafadhali rejea mafunzo ya PHP level 1 somo la 10 hadi 12 utajifunza jinsi html firm ilivyo na jinsi inavyokusanya taarifa. Faili tutakalolitengeneza kwenye somo hili litakuwa na sehemu kuu 2 kama nilivyokwisha kukueleza hapo awali.

 

  1. Sehemu ya kwanza: html code

Sehemu hii ni kwa ajili ya kukusanya taarifa kwa kutumia html form. Form yetu itakuwa hivi

<form method="post" action="">

   <input type="hidden" name="add" value="1">

   <label>Name</label><br>

   <input placeholder="Name la menu"  name="name"><br>

   <label>Description</label><br>

   <input placeholder="Inahusu Nini"  name="description"><br>

   <label>Price</label><br>

   <inputtype="number" placeholder="Weka Price "  name="price"><br>

  <input type="submit" value="save">

</form>

 

Kama html form inavyojionesha hapao, Method (njia) itakafotumika kubeba taarifa ni method="post"  na kwakuwa faili letu litajiprocess lenyewe hivyo kwenye action hatuhitaji kuweka chochote kama unavyoona hpo patupu action="" tungeweka link ya faili ambalo lina code za ku process data tutakazo kusanya, ila sisi hatuhitaji  faili lengine.

 

form yetu ina user input 5, yaani taarifa zinazotakiwa kubebwa. 

 <input type="hidden" name="add" value="1">

Hii ni kwa ajili ya kuwezesha utumwaji wa taarifa. Taarifa zote hapa zitachakatwa kwa kuanzia hapa. Nimeipa jina la add name="add" na haiwezi kuonekana wakati wa kujaza.

 

<input placeholder="Name la menu"  name="name">

Hii ni kwa ajili ya kukusanya taarifa zinazohusu jina la menu unayotaka kuweka. Place holder ni sehemu ambay inabeba jina ambalo mtumiaji ataliona nalitamjulisha kuwa kijumba hicho kinahitaji kujaza nini. Usern input hapa imepewa jina la name name="name   

   

Pia  <input type="number" placeholder="Weka Price "  name="price"> hapa utaona kuna kitu kimeongezeka a,bacho ni type="number" type maana yake ni aina unaweza kusema kuwa ni aina gani ya data unahitaji ziweze kuwekwa kwenye hiyo sehemu. hapo kwa kuwa ni price himeamuwa iwe namba. Hivyo hutaruhusiwa kuweka herufi hapo.

 

Mwisho kuna <input type="submit" value="save"> Hii kazi yake ni ku submit, yaani kutuma taarifa, Yaani hiyo ni kama batani, ukiibofya taarifa zinatumwa na kupelekwa kwenye sehemu ambayo kuna code za ku process. Sehemu hii ndio inayotajwa kwenye action.                           

 

  1. sehemu ya pili: php codes

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "hotel";

 

 

if(isset($_POST["add"])){

   $conn = mysqli_connect($servername, $username, $password, $dbname);

   $name = ($_POST['name']);

   $description = ($_POST['description']);

   $price = ($_POST['price']);

 $sql = "INSERT INTO menu (name, description, price) VALUES ('$name', '$description', '$price')";

   if (mysqli_query($conn, $sql)) {

       echo "Data added";

   } else {

       echo "Error: " . $sql . "<br>" . mysqli_error($conn);

   }

   mysqli_close($conn);

}

 

?>

 

Hapa kuna vitu unatakiwa uvielewe mapema kabla ya kuenda mbele. NItakuchambulia kila part na kazi zake ili kwamba tuwe pamoja.

if(isset($_POST["add"])){}

Sehemu hii kazi yake kuu ni kuangalia taarifa kama zimejazwa, ni taarifa zipi zimebebwa. kwakuwa method tuliotumia ni POST ndio maana unaona hapo $_POST["add"] Kwa ufupi wa maneno ni kuwa sehemu hii kazi yake ni kuangalia taarifa zilizojazwa kutoka kwenye html form.

Baada ya kuwa taarifa zimeshakaguliwa sasa zinaweza kuwekwa kwenye mchakato. Hivyo utatakiwa kuzitengenezea variable kwa kila moja (rejea mafunzo ya php level 1 jinsi ya kutengeneza variable). 

$name = ($_POST['name']);

$description = ($_POST['description']);

$price = ($_POST['price']);

 

Kila input iliyokuwepo kwenye html form tunatakiwa tuitengenezee variable. kwakuwa data hizo zimebebwa kwenye method ya POT hivyo variable nayo kazima ichukuwe data hiyo kutoka kwenye post. Angalia mfano huu $name = ($_POST['name']); Kapa variable ni $name na value yake ni       ($_POST['name']) Kama unakumbuka kwenye html form input ambayo ilikuwa inachukluwa majina ya menu iliita name na hivyo kwa jina lilelile tunakwenda kuiita hapa ili tuweze kuzinyakwa taarifa zilezile.

 

Baada ya hapo tutaweka variable ya ku connect database kama tulivyojifunza $conn = mysqli_connect($servername, $username, $password, $dbname);

Kisha variable ya ku weka data kama tulivyojifunza pia $sql = "INSERT INTO menu (name, description, price) VALUES ('$name', '$description', '$price')

Hakikisha unaziandika vyema. Kama utaangalia kwa makini hapa kuna utofauti kidogo na ambavyo tuliandaa sql variable kwa ajili ya kuongeza data.

 

Badala ya kutaja majina ya column za data zetu ambazo tunakwenda kuweka kwenye VALUE kuli tuliona kuwa tunaweka value ambazo tunataka kuweka. hapa sasa ndipo kwenye utofauti. kumbuka data zetu sisi tumeziingiza kupitia html form na kubebwa. Sasa hapa tutatumia vraiable ambazo tumezitengeneza. kwani variable si kazi yake kuwakilisha thamani. Na thamani yenyewe ni kile ambacho kimeingizwa kwenye html form na kubebwa mna POST method. 

 

Hivyo kwa umakini utaeka variable zako kwa mpangilio na mfuatano ulelule. Id haipo hapo ni kwa sababu yenyewe ni auto increment inajiandika yenyewe hatuhitajiki kuiweka sisi.

 

Baada ya hapo sasa ni kuangalia kama process imefanyika ama laa. kama imefanyika itatiambia data added. Tutatumia mtindo uleule tuliouzoea

if (mysqli_query($conn, $sql)) {

   echo "Data added";

} else {

   echo "Error: " . $sql . "<br>" . mysqli_error($conn);

}

 

CODE NZIMA ZA FAILI HILI

<form method="post" action="">

   <input type="hidden" name="add" value="1">

   <label>Name</label><br>

   <input placeholder="Name la menu"  name="name"><br>

   <label>Description</label><br>

   <input placeholder="Inahusu Nini"  name="description"><br>

   <label>Price</label><br>

   <input type="number" placeholder="Weka Price "  name="price"><br>

  <input type="submit" value="save">

</form>

 

<?php

$servername = "localhost";

$username = "root";

$password = "";

$dbname