Web application development တွင် image upload သည်အသုံးများသောလိုအပ်ချက်တစ်ခုဖြစ်သည်။ PHP သည် Image Upload function ကိုအကောင်အထည်ဖော်ရန်နည်းလမ်းများနှင့်လုပ်ဆောင်ချက်များကိုနည်းလမ်းများစွာပေးသည်။ ဤဆောင်းပါးသည် PHP ပုံစံများဖြင့် PHP နှင့်ဆာဗာသို့ဖိုင်များသိမ်းဆည်းထားသော HTML ပုံစံများဖြင့်ဓာတ်ပုံတင်ခြင်းကိုအကောင်အထည်ဖော်ရန်အဆင့်များအပြည့်အစုံကိုအသေးစိတ်မိတ်ဆက်ပေးပါမည်။
ဖိုင်တင်ခြင်းကိုအကောင်အထည်ဖော်ရန်ဖိုင် selector ပါ 0 င်သည့် HTML ပုံစံတစ်ခုကိုသင်ပထမ ဦး စွာဖန်တီးရန်လိုအပ်သည်။ ဤတွင်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။
<html>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
<label for="file">ဖိုင်တစ်ခုရွေးပါ:</label>
<input type="file" name="file" id="file">
<input type="submit" value="တင်ပါ">
</form>
</body>
</html>
ဤပုံစံတွင်ဖိုင် selector နှင့် submit ခလုတ်တစ်ခုပါဝင်သည်။ ပုံစံ၏ encment ရာတဲတော်သည် binary files များ၏ upload ကိုထောက်ပံ့ရန် "Martchart / form-data" ကိုသတ်မှတ်ရန်သတ်မှတ်ထားသည်။
ပုံစံကိုတင်ပြပြီးနောက် PHP သည်တင်ထားသောဖိုင်ကိုလုပ်ဆောင်လိမ့်မည်။ တင်ပို့မှုကိုကိုင်တွယ်သော PHP Code ကိုဤတွင်ဖော်ပြထားသည်။
if(isset($_FILES['file'])) {
$file = $_FILES['file'];
$filename = $file['name'];
$filepath = $file['tmp_name'];
$error = $file['error'];
$size = $file['size'];
}
ဤကုဒ်သည်ဖိုင်တင်ခြင်းသည်အောင်မြင်သောဖိုင်ကိုအောင်မြင်ပြီးဖိုင်အမည်, ယာယီဖိုင်လမ်းကြောင်း, အမှားအယွင်းများနှင့်ဖိုင်အရွယ်အစားကိုရယူရန် $ file variable ကိုသိုလှောင်ထားသည်။
ဖိုင်ကိုမသိမ်းဆည်းမီတင်ထားသောဖိုင်သည်လိုအပ်ချက်များကိုဖြည့်ဆည်းပေးရန်သေချာစေရန်အတည်ပြုရန်လိုအပ်သည် -
if ($error == UPLOAD_ERR_OK) {
// ဖိုင်အမျိုးအစားစစ်ဆေးခြင်း
$allowed = array('jpg', 'jpeg', 'gif', 'png');
$file_type = pathinfo($filename, PATHINFO_EXTENSION);
if (!in_array($file_type, $allowed)) {
echo "ကျေးဇူးပြု. မှန်ကန်သောပုံအမျိုးအစားကိုရွေးပါ(jpg, jpeg, gif, png)";
exit;
}
// ဖိုင်အရွယ်အစားစိစစ်အတည်ပြု
if ($size > 1048576) {
echo "ပုံအရွယ်အစားမကျော်လွန်ပါ1MB";
exit;
}
} else {
echo "文件未တင်ပါ";
exit;
}
ဤတွင်ဖိုင်အမျိုးအစားသည်အထောက်အပံ့ပေးသော Image format (JPG, Jpeg, GIF, PNG) သည်ဖိုင်အရွယ်အစားကို 1MB ထက်မပိုစေရန်သေချာစေရန်ဖိုင်အိတ်အမျိုးအစားကိုအတည်ပြုရန်ကျွန်ုပ်တို့အတည်ပြုပြောကြားခဲ့သည်။
အတည်ပြုပြီးပါကဖိုင်ကိုယာယီလမ်းညွှန်မှသတ်မှတ်ထားသောဖိုင်တွဲသို့ရွှေ့ပါ။
$destination = "uploads/" . $filename;
if (move_uploaded_file($filepath, $destination)) {
echo "文件တင်ပါ成功";
} else {
echo "文件တင်ပါ失败";
}
ဤကုဒ်သည်ဖိုင်ကို "uploads" ဖိုင်တွဲသို့ပြောင်းပြီး upload အောင်မြင်သောသို့မဟုတ်ပျက်ကွက်ကြောင်းသတင်းစကားကိုပြန်ပို့သည်။
ဖိုင်တင်ခြင်းများကိုထုတ်ယူသောအခါ, အောက်ပါလုံခြုံရေးပြ issues နာများကိုအထူးဂရုပြုရမည်။
uploaded file type သည်အန္တရာယ်ရှိသောဖိုင်တင်ခြင်းကိုရှောင်ရှားရန်ပုံတစ်ပုံဖြစ်သည်ကိုသေချာအောင်လုပ်ပါ။
ဖိုင်အမည်များကိုအထူးအက္ခရာများကိုရှောင်ရှားရန်စံသတ်မှတ်ထားရန်လိုအပ်သည်။
ဖိုင်အရွယ်အစားကိုကန့်သတ်ခြင်းသည်ဆာဗာသိုလှောင်မှုနေရာအလွန်အကျွံသောက်ခြင်းကိုရှောင်ရှားရန်ကူညီသည်။
ဖိုင်ကိုပြောင်းရွှေ့ပြီး server သို့တင်ထားသောအန္တရာယ်ရှိသောဖိုင်များကိုမတင်သောအခါလုံလောက်သောစစ်ဆေးမှုကိုပြုလုပ်ပါ။
ဤဆောင်းပါးသည် Upload ပုံစံဖန်တီးမှု, ဖိုင်စစ်ဆေးခြင်း, ဖိုင်လှုပ်ရှားမှုနှင့်လုံခြုံရေးထည့်သွင်းစဉ်းစားမှုများအပါအ 0 င် Image Upload function ကိုအကောင်အထည်ဖော်ရန် PHP ကိုမည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ဖော်ပြထားသည်။ ဤဆောင်းပါးသည်အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်သင့်အတွက်အထောက်အကူဖြစ်လိမ့်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။