راکت
حل شده

آپدیت کردن یک پست

4 پاسخ

سلام دوستان.من یک فرم آپدیت پست دارم که داخل این فرم یک input از نوع file دارم.مشکل اینه که می خوام برای این input یه مقدار پیش فرض قرار بدم(تصویر پست)تا اگه کاربر نخواست تصویر پست آپدیت کنه همون تصویر قبلی باشه و تغییری نکنه

Reza Jm
Reza Jm
@rezajamalzadeh900
ثبت پرسش جدید

پاسخ‌ها

4
Davood
Davood
@dfardabasi

تخصص: PHP - Laravel

بهترین پاسخ

پایین input file خودتون یه input قرار بدید با type :hidden
به شکل زیر بر فرض مثال

<input type="file" id="img" class="form-control round"
                                               name="img">
<input type="hidden" value="<?= مقدار گرفته شده از دیتابیس ?>" name="hidden_img" id="hidden_img">

وقتی اینا رو از طریق فرم پست میکنی تو صفحه action ,controller یا هرجا دیگه ای چک میکنی اگر مقداری تو اینپوت فایل وارد کردی که جایگزین بشه اگر وارد نکردی مقدار فچ شده از دیتابیش که داخل ولیو اینپوت هیدن هست ارسال بشه به شکل زیر

$img = $_FILES['img'];
            if ($img['name'] != "") {
            $img = تابع آپلود فایل
            } else {
                $img = $_POST['hidden_img'];
            }

@rezajamalzadeh900

نوید
نوید
@navids

تخصص: برنامه نویس Go / Django

مثلا با php

 $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
    if($check !== false) {
        $uploadOk = 1;
    } else {
        echo "File is not an image.";
        $uploadOk = 0;
    }

در صورتی که آپلود برابر با 1 بود ، تصویری برای اپلود ارسال شده ، در غیر اینصورت فیلد خالی بوده

علی بیات
علی بیات
@ali.bayat

تخصص: توسعه دهنده ارشد وب

هنگامی که اطلاعات فرم ارسال میشه، سمت سرور چک کنید
اگر فیلد تصویر خالی بود که سایر اطلاعاتش رو آپدیت میکنید
اگر هم که خالی نبود، عکس رو آپلود میکنید و به علاوه سایر اطلاعاتش آپدیت میکنید

شاید پاسخ شما همین‌جا باشد

Reza Jm
Reza Jm
@rezajamalzadeh900

تخصص: برنامه نویس php

@ali.bayat
همین کار رو کردم. مشکل اینه وقتی کاربر نخواد تصویر پست آپدیت کنه در نتیجه input file خالی می زاره.درنتیجه سمت سرور برای تصویر null دریافت می شه و در واقع تصویر قبلی از از بین می ره.در واقع سوال اصلی من اینه که چطور برای یک فرم از نوع فایل value پیش فرض تنظیم کنم که اگه چیزی انتخاب نشدهمون مقدار پیشفرض ارسال بشه؟

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام