Katika somo hili utajifunza kupangilia data wakati wa kuzisoma kwenye database kw akutumia PHP
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.
Je! umeipenda hii post?
Ndio Hapana Save post
Imeandikwa na Rajabu Terehe 2023-10-18 Download PDF Share on facebook WhatsApp