လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP Image Upload နှင့် Display function များကိုအသေးစိတ်ရှင်းပြချက်

PHP Image Upload နှင့် Display function များကိုအသေးစိတ်ရှင်းပြချက်

gitbox 2025-07-18

PHP Image Upload နှင့် Display function များကိုအသေးစိတ်ရှင်းပြချက်

မျက်မှောက်ခေတ်ဝက်ဘ်ဆိုက်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ပုံတင်ခြင်းနှင့်ပြသခြင်းသည်ဘုံနှင့်အရေးကြီးသောအင်္ဂါရပ်တစ်ခုဖြစ်သည်။ ဤဆောင်းပါးသည် PHP ကိုမည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ဖော်ပြရန်နှင့်ရုပ်ပုံများကိုပြသရန်နှင့် developer များကဤကျွမ်းကျင်မှုကိုမြန်မြန်ဆန်ဆန်ကျွမ်းကျင်စွာကျွမ်းကျင်စွာကျွမ်းကျင်စွာကျွမ်းကျင်စွာကျွမ်းကျင်စွာကျွမ်းကျင်စွာတိုးတက်အောင်လုပ်ခြင်းကိုအသေးစိတ်ဖော်ပြရန်အသေးစိတ်မိတ်ဆက်ပေးလိမ့်မည်။

PHP တွင်ရုပ်ပုံများတင်ခြင်းအတွက်အခြေခံအဆင့်များ

ရုပ်ပုံများကိုတင်ခြင်းလုပ်ငန်းစဉ်ကိုများသောအားဖြင့်အဆင့်များစွာကိုခွဲခြားထားသည် - HTML ပုံစံကိုဖန်တီးခြင်း, ဖိုင်များ၏တရားဝင်မှုကိုစစ်ဆေးခြင်း, ဖိုင်များ၏တရားဝင်မှုကိုစစ်ဆေးခြင်း, ဖိုင်များကိုဆာဗာသို့သိမ်းဆည်းခြင်း။ ဤတွင်ရိုးရှင်းသော HTML upload ပုံစံဥပမာ -

ဤပုံစံတွင်အသုံးပြုသူသည် image ကို upload လုပ်ရန်ကိုရွေးချယ်နိုင်သည်။ တင်ပြချက်အပြီးတွင် PHP script သည်ဖိုင်ကိုလုပ်ဆောင်လိမ့်မည်။

တင်ပြီးတင်ထားသောရုပ်ပုံများကိုလက်ခံရရှိခြင်း

Upload.php ဖိုင်တွင်ကျွန်ုပ်တို့သည်တင်ထားသောဖိုင်ကိုလက်ခံရရှိရန်နှင့်လုပ်ဆောင်ရန်ကုဒ်ရေးရန်လိုအပ်သည်။ ဖိုင်တင်ခြင်းအတွက်နမူနာကုဒ်ဖြစ်သည်။

 if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $target_dir = "uploads/";
    $target_file = $target_dir . basename($_FILES["image"]["name"]);
    $uploadOk = 1;
    $imageFileType = strtolower(pathinfo($target_file, PATHINFO_EXTENSION));

    // ဒါကြောင့်ပုံလားစစ်ဆေးပါ
    $check = getimagesize($_FILES["image"]["tmp_name"]);
    if($check !== false) {
        echo "ဖိုင်သည်ပုံတစ်ပုံဖြစ်သည် - " . $check["mime"] . ".";
        $uploadOk = 1;
    } else {
        echo "ဖိုင်သည်ပုံမဟုတ်ပါ.";
        $uploadOk = 0;
    }

    // ဖိုင်အရွယ်အစားကိုစစ်ဆေးပါ
    if ($_FILES["image"]["size"] > 500000) {
        echo "စိတ်မကောင်းပါဘူး,သင်၏ဖိုင်သည်ကြီးမားလွန်းသည်.";
        $uploadOk = 0;
    }

    // သတ်သတ်မှတ်မှတ်ဖိုင်ပုံစံများကိုသာခွင့်ပြုထားသည်
    if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg" && $imageFileType != "gif") {
        echo "စိတ်မကောင်းပါဘူး,သာထောက်ပံ့ခဲ့သည် JPG, JPEG, PNG & GIF စာချုပ်စာတမ်း.";
        $uploadOk = 0;
    }

    // စစ်ဆေးကြည့်ရှု$uploadOkဖြစ်စေ0,ဆိုလိုသည်မှာ upload မအောင်မြင်ဟုဆိုလိုသည်
    if ($uploadOk == 0) {
        echo "စိတ်မကောင်းပါဘူး,您的စာချုပ်စာတမ်း未能上传.";
    } else {
        if (move_uploaded_file($_FILES["image"]["tmp_name"], $target_file)) {
            echo "စာချုပ်စာတမ်း " . htmlspecialchars(basename($_FILES["image"]["name"])) . " အောင်မြင်စွာတင်ထားတယ်.";
        } else {
            echo "စိတ်မကောင်းပါဘူး,上传စာချုပ်စာတမ်း时发生错误.";
        }
    }
}

ဤကုဒ်တွင်တင်ထားသောဖိုင်သည်မှန်ကန်မှုရှိ, မရှိစစ်ဆေးပါ။ ထို့နောက်ဖိုင်အမျိုးအစားနှင့်အရွယ်အစားကိုစစ်ဆေးပါ။ အောင်မြင်သော upload ပြုလုပ်ပြီးနောက်ဖိုင်ကိုသတ်မှတ်ထားသော directory သို့ပြောင်းရွှေ့လိမ့်မည်။

တင်ထားသောရုပ်ပုံများကိုပြပါ

အောင်မြင်စွာတင်ပြီးသည့်နောက်တွင်ကျွန်ုပ်တို့သည်ပုံကိုသတ်မှတ်ထားသော directory မှပုံကိုဖတ်ပြီးဝဘ်စာမျက်နှာပေါ်တွင်ပြသနိုင်သည်။ တင်ထားသောရုပ်ပုံများကိုပြသရန်နမူနာကုဒ်ဖြစ်သည်။

 $dir = "uploads/";
$images = glob($dir . "*.{jpg,jpeg,png,gif}", GLOB_BRACE);
foreach($images as $image) {
    echo "<img src='" . $image . "' alt='Uploaded Image' />";
}

ဤကုဒ်တွင် Image files များအားလုံးကိုသတ်မှတ်ထားသော directory ထဲတွင် 0 င်ရောက်ပြီးကွင်းဆက်မှတဆင့်ပြသနိုင်ရန် GOS () function ကိုအသုံးပြုသည်။ သင်၏လိုအပ်ချက်များနှင့်အညီပုံ၏ display style ကိုချိန်ညှိရန်သေချာပါစေ။

အကျဉ်းချုပ်

ဤဆောင်းပါးသည်ဓာတ်ပုံတင်ခြင်းနှင့် display ကိုပြသရန် PHP ကိုမည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ဖော်ပြထားသည်။ ဤအခြေခံအဆင့်များကိုကျွမ်းကျင်ရာများသည် developer များ 0 ဘ်ဆိုဒ်၏လုပ်ဆောင်နိုင်စွမ်းနှင့်အသုံးပြုသူအတွေ့အကြုံကိုတိုးတက်စေရန်ကူညီနိုင်သည်။ အမှန်တကယ်စီမံကိန်းများတွင် Upload function ၏ချောမွေ့လုပ်ဆောင်မှုကိုချောမွေ့စေရန်အတွက်သော့ချက်ကျသောလုံခြုံရေးအစီအမံများနှင့်ဖိုင်မှတ်တမ်းများဖြစ်သည်။

ဒီဆောင်းပါးကသင့်အတွက်အထောက်အကူဖြစ်လိမ့်မယ်လို့မျှော်လင့်ပါတယ်။ သင့်တွင်မေးခွန်းများသို့မဟုတ်အကြံပြုချက်များရှိပါက ကျေးဇူးပြု. မှတ်ချက် area ရိယာတွင်စာတစ်စောင်ထားခဲ့ပါ။