Web application development တွင် image upload function သည်ဘုံလိုအပ်ချက်ဖြစ်သည်။ PHP သည် Image upload စစ်ဆင်ရေးများကိုကိုင်တွယ်ရန်နည်းလမ်းများနှင့်လုပ်ငန်းဆောင်တာအမျိုးမျိုးကိုထောက်ပံ့ပေးသည်။ ဤဆောင်းပါးသည်ရုပ်ပုံများကိုရိုးရှင်းသော HTML ပုံစံများနှင့် PHP code များမှတဆင့်တင်ပြီးဆာဗာ၏ဖိုင်စနစ်သို့သိမ်းဆည်းပြီးမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။
0 န်ဆောင်မှုခံယူသူမှရုပ်ပုံများကိုတင်ရန်အတွက်သင်ဖိုင်တင်ခြင်းထိန်းချုပ်မှုများပါ 0 င်သည့် HTML ပုံစံတစ်ခုလိုအပ်သည်။ ဖိုင်များကိုတင်ရန်အတွက်ရိုးရှင်းသော 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>
ဤပုံစံတွင်ဖိုင်ရွေးချယ်မှုထိန်းချုပ်မှု ("ဖိုင်" အမည်ရှိ "အမည်ရှိ") နှင့် Submit ခလုတ်ကိုပါ။ ပုံစံ၏ encment ရာတဲတော်သည်ဖိုင်ကို binary format ဖြင့်တင်ထားရန်သေချာစေရန် "Martchart / Form-Data" ဟုသတ်မှတ်ရမည်။
ပုံစံကိုတင်ပြပြီးနောက်တင်ပါးတင်ထားသောဖိုင်ကို PHP code ဖြင့်ပြုလုပ်လိမ့်မည်။
if (isset($_FILES['file'])) {
$file = $_FILES['file'];
$filename = $file['name'];
$filepath = $file['tmp_name'];
$error = $file['error'];
$size = $file['size'];
}
ဤကုဒ်သည်ဖိုင်တင်ခြင်းသည်အောင်မြင်သောဖိုင်ကိုအောင်မြင်ပြီးဖိုင်အမည်, ယာယီဖိုင်လမ်းကြောင်း,
ဖိုင်ကိုမသိမ်းဆည်းမီ, လိုအပ်ချက်များနှင့်ကိုက်ညီစေရန်သေချာစေရန်တင်ထားသောဖိုင်ကိုအတည်ပြုရန်လိုအပ်သည်။
if ($error == UPLOAD_ERR_OK) {
// ဖိုင်အမျိုးအစားစစ်ဆေးခြင်း
$allowed = ['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;
}
Upload သည်အောင်မြင်သည်ကိုပထမ ဦး ဆုံးစစ်ဆေးပြီးဖိုင်အမျိုးအစားသည်လိုအပ်ချက်များနှင့်ကိုက်ညီကြောင်းအတည်ပြုရန်။ ထို့နောက်ဖိုင်အရွယ်အစားသည်မျှော်လင့်ထားသည့်အတိုင်းဖြစ်ကြောင်းကျွန်ုပ်တို့အတည်ပြုပါသည်။
အကယ်. ဖိုင်သည်အတည်ပြုချက်ကိုဖြတ်သန်းပါကဖိုင်ကိုသတ်မှတ်ထားသော directory သို့ရွှေ့နိုင်သည်။
$destination = "uploads/" . $filename;
if (move_uploaded_file($filepath, $destination)) {
echo "文件တင်ပါ成功";
} else {
echo "文件တင်ပါ失败";
}
ဤကုဒ်သည်ဖိုင်ကိုဆာဗာရှိ "uploads" ဖိုင်တွဲသို့ပြောင်းသည်။ upload သည်အောင်မြင်သောသို့မဟုတ်မအောင်မြင်သောသတင်းအချက်အလက်များကိုပြန်ပို့သည်။
Image Upload function ကိုအကောင်အထည်ဖော်သည့်အခါလုံခြုံရေးပြ issues နာများကိုအထူးဂရုပြုရန်လိုအပ်သည်။
တင်ထားသောဖိုင်သည်မှန်ကန်သောအမျိုးအစားတစ်ခုဖြစ်ပြီးအန္တရာယ်ရှိသည့် scripts များကိုအကာအကွယ်မပေးနိုင်ရန်လုံခြုံရေးလိုအပ်ချက်များနှင့်ကိုက်ညီရန်လိုအပ်သည်။
အထူးအက္ခရာများကြောင့်ဖြစ်ပေါ်လာသောလုံခြုံရေးအန္တရာယ်များကိုကာကွယ်ရန်ဖိုင်အမည်များကိုစံသတ်မှတ်ထားသင့်သည်။
ဆာဗာအရင်းအမြစ်များအလွန်အကျွံစားသုံးနေသောကြီးမားသောဖိုင်များကိုရှောင်ရှားရန်ဖိုင်အရွယ်အစားကိုကန့်သတ်ထားသင့်သည်။
ဖိုင်များကိုဆာဗာသို့ပြောင်းရွှေ့သောအခါလုပ်ငန်းလည်ပတ်မှုအမှားများကြောင့်ဖြစ်ပေါ်လာသောဖိုင်အဂတိလိုက်စားမှုကိုရှောင်ရှားရန်ဖိုင်များ၏သမာဓိနှင့်လုံခြုံမှုကိုသေချာစေသင့်သည်။
ဤဆောင်းပါးသည် HTML form ဒီဇိုင်း, ဖိုင်စစ်ဆေးခြင်း, ဖိုင်အတည်ပြုခြင်း, ဤအကြောင်းအရာများသည်အနာဂတ်စီမံကိန်းများအတွက် Image Upload function ကိုအောင်မြင်စွာအကောင်အထည်ဖော်နိုင်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။