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
Katika somo lililotangulia tuliona jinsi ya ku futa data kwenye database na kwenye folda. Sasa katika somo hili tunakwenda kujifunza jinsi ya ku upload mafaili mengi yaani ku upload mafaili zaidi ya moja. Pia utajifunza ku upload taarifa hizi kwenye database. Tutakwenda kutumia table yetu ile ile ya blog.
Kipengele muhimu cha kwanza ni kwenye html. Kwanza kabisa ni kuiruhusu html form iweze kuchaguwa mafaili zaidi ya moja. Kufanya hivi utatakiwa kuongeza attribute ingine ya form. Attrib ute hii inaitwa multiple ambayo itakuwa na value multiple. Mfano multiple="multiple" pia kwenye name ya value yake utaiongezea mabano yale ya array [] mfano name="file[] hivyo basi html form itaonekana kama hivi:-
html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>Uploadstitle>
head>
<body>
<div class="container mt-5">
<form action="upload.php" method="post" enctype="multipart/form-data" >
<input type="file" name="file[]" multiple="multiple">
<button type="submit" name="submit">Upload Filesbutton>
form>
div>
body>
html>
Sasa sehemu ya msingi zaidi ni faili la PHP ambalo linakwenda ku process data zetu. Kwanza tunatakiwa tupate orodha ya mafaili am bayo mtumiaji ameselect. Hapa mafaili tutayapata kwa njia ya array.
Hivyo basi kuna njii kuu 2 ambazo tunaweza kuzitumia ili kupata mafaili hayo. Kwanza ni kwa kutumia for loop. Tulishajifunza kuhusu for loop. Tutatumia mfano kama ule am bao tulitumia. Njia ya pili ni kwa kutumoia froeach loop. Piua tyutatumia mfano kama ule.
-
Kwa kutumia for loop:
Kwanza tutahitajika kujuwa idadi ya mafaili ambayo tayari yapo. Kama unakumbuka kwenye somo la for loop nilikwambia kuwa utatumia hii kama unajuwa kuwa code zako ziutatakiwa ku run mara ngapi. Hivyo ni lazima tujuwe kuna mafaili mangapi kwenye array.
Kufanya hivi tutatumia count() function. Tutaweka parameta iliyo na majina ya mafaili kutoka kwenye POST method. Mfano count($_FILES['file']['tmp_name'])
Hapo tutahitajika kuwa na variable maalimu ambayo ina hiyo idadi ya mafaili. Hivyo tutafanya $num_files = count($_FILES['file']['tmp_name']);Hatuwa inayofuata ni ku loop hiyo idadi ya mafaili kwenye for mfano for($i=0; $i < $num_files;$i++)Hivyo code zetu zitaendelea ku run maadamu idadi ya mafaili haijafikiwa. Ila ikifikiwa itastop.
Katiika mfano wa hapo juu utaona kuwa variable ambayo ndio ita run autoincrement ni $i, hivyo ili kupata majina ya mafaili yote tutahitajika ku loop na $i . hivyo itaonekana kama hivi $_FILES['file']['name'][$i])Hapo utaweza kupata majina ya mafaili yote. Na kama utahitaji taarifa ingine kwa mfano $_FILES['file']['tmp_name'][$i]au $_FILES['file']['size'][$i]Na kadhalika.
Baada ya kumaliza ku upload tutahitajika kuingiza taarifa hizo kwenye database. Hii tutafanya kama tulivyofanya kwenye somo lililopita. Mfano $sql="INSERT INTO blog(image) VALUES ('$fn')";
if (mysqli_query($conn, $sql)) {
header("location: index.php");
} else {
echo "failed";
}
Hivyo basi code za ku upload mafaili zitaonekana hivi:-
include 'config.php';
if(isset($_FILES['fil...
Umeionaje Makala hii.. ?
Share On:
👉1 Sira ya Mtume Muhammad (s.a.w) 👉2 Kitabu cha Afya 👉3 Madrasa kiganjani 👉4 Kitau cha Fiqh 👉5 web hosting 👉6 Dua za Mitume na Manabii
Post zinazofanana:
PHP - somo la 8: jinsi ya kuandika constant kwenye PHP
Katika somo hili utakwenda kujifunza jinsi ya kuandika constant kwenye PHP. Pia utajifunza utofauti wake na variable
Soma Zaidi...PHP BLOG - somo la 2: Jinsi ya kutengeneza database na kuiunganisha kwenye blog
Katika somo hili unakwenda kujifunza jinsi y kutengeneza database na kuungansha kwenye blog yetu.
Soma Zaidi...PHP - somo la 29: Jinsi ya kaundika function kwenye php
Katika somo hili utakwenda kujifundisha kuhus matumizi ya function kwenye php. Pia utajifunza jinsi ya kuandika function
Soma Zaidi...PHP - somo la 13: Jinsi ya kuunganisha database na website
Katika somo hili utajifunza jinsi ya ku connect database, kwa kutumia php
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 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...