اجرا نشدن شرط انتخاب فایل در زمان استفاده از متد files برای ارسال فایل در فرم

پرسیده شده
فعالیت 1131 روز پیش
دیده شده 442 بار
0

با سلام خدمت آقای صالحی

 

یه مشکلی در پروژه ی این درس وجود داره : 

زمانی که دو متد post رو در این پروژه به متد files تغییر میدیم ، شرط انتخاب فایلها دیگه برقرار نمیشه یعنی چه فایلی انتخاب بشه چه فایلی انتخاب نشه وقتی که دکمه ی ارسال رو کلیک میکنیم فرم ارسال میشه و پیام (لطفا فایل خود را انتخاب کنید) نمایش داده نمیشه

اگر متد files رو به حالت post برگردونیم این موضوع حل میشه ولی وقتی متد files رو استفاده میکنیم این مشکل پیش میاد

داخل ویدئو اشاره ای به این موضوع نشده ، لطفا بگید که چطور این مشکل رو حل کنیم ، ممنون میشم

فایل پیوست

میلاد رئوف
میلاد رئوف

10 فروردین 00

3
حذف شده

سلام و احترام

<?php
session_start();

$msg = null;

if($_SERVER["REQUEST_METHOD"] == "POST")
{

        if(!isset($_FILES['fileupload']) || $_FILES['fileupload']['error'] == UPLOAD_ERR_NO_FILE)) 
            $msg = "لطفا فایل مورد نظر خود را انتخاب کنید";
        else
            $msg = "فرم با موفقیت ارسال شد";
        
}

$_SESSION["msg"] = $msg;

header("location:index.php");
exit;

کد بالا طبق نیاز شما به درستی کار میکنه

 

این شرطی که توی کد داشتید اضافه بود:

 if(isset($_POST["submit"]) && $_POST["submit"] == "send")

چون شرط بالاییش بررسی میکرد که فرم ارسال شده یا ن، منظورم این شرطه:

if($_SERVER["REQUEST_METHOD"] == "POST")

حالا توی کدی که بنده قرار دادم اول با isset بررسی کردم که چیزی set شده یا ن 

 if(!isset($_FILES['fileupload'])) 

و اگه set نشده بود بررسی کنه اصلا فایلی آپلود شده یا ن، با

 || $_FILES['fileupload']['error'] == UPLOAD_ERR_NO_FILE
فایل پیوست

امیر صالحی

توسط

امیر صالحی

11 فروردین 00

حذف شده
سلام خیلی ممنونم از پیگیریتون ، قسمت $_FILES['fileupload']['error'] == UPLOAD_ERR_NO_FILE در داخل دوره ی جعبه ابزار کامل توضیح داده نشده بود ، با توضیحی که دادید راجع بهش سرچ کردم و متوجه منظورتون شدم ، ممنونم
میلاد رئوف

13 فروردین 00

حذف شده
سلام منم همین مشکل رو داشتم ممنون که توضیح دادید .
mostafa mehrjoo

17 اردیبهشت 00

1
حذف شده

سلام و احترام

میشه لطفا کدتون رو قرار بدید تا بررسیش کنم

فایل پیوست

امیر صالحی

توسط

امیر صالحی

10 فروردین 00

حذف شده
سلام مجدد ، کدم دقیقا کد داخل پروژه هستش ، ولی بازم اگر لازم میدونید تا فردا میفرستم براتون
میلاد رئوف

10 فروردین 00

حذف شده
کدهارو براتون ارسال کردم
میلاد رئوف

11 فروردین 00

حذف شده
آقای صالحی سلام مجدد ، من کدهارو توی قسمت پایین ارسال کردم براتون ، لطفا بررسیشون کنید
میلاد رئوف

11 فروردین 00

0
حذف شده

این قسمت مربوط به فایل آپلود پروژه هستش که من بخشی از کدهاشو حذف کردم که مشکلی که گفتم واضح تر باشه ، الان اگر همین رو اجرا کنید قسمت else اجرا نمیشه یعنی اگر فایلی انتخاب نشه هم فرم با موفقیت ارسال میشه ولی اگر متدهای FILES رو به POST تغییر بدیم این مشکل حل میشه ، من صفحه اصلی پروژه که این صفحه متصل بهش هست هم براتون ارسال میکنم الان

<?php

session_start();
$msg = null;
if($_SERVER["REQUEST_METHOD"] == "POST"){
    if(isset($_POST["submit"]) && $_POST["submit"] == "send"){
        if(isset($_FILES["fileupload"]) && !empty($_FILES["fileupload"])){
            $msg = "فرم با موفقیت ارسال شد";
            }else{
            $msg = "لطفا فایل مورد نظر خود را انتخاب کنید";
        }
    }
}

header("location:index.php");
$_SESSION["msg"] = $msg

 

فایل پیوست

میلاد رئوف

توسط

میلاد رئوف

11 فروردین 00

0
حذف شده

این هم فایل ایندکس همین پروژه هستش :

<?php
session_start();
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div class="container">
        <?php
        if(isset($_SESSION["msg"]) && $_SESSION["msg"]):
        ?>
        <p><?php echo $_SESSION["msg"]?></p>
        <?php unset($_SESSION["msg"]) ?>
        <?php endif ?>
        <form method="POST" action="uploader.php" enctype="multipart/form-data">
            <input type="file" name="fileupload">
            <input type="submit" name="submit" value="send">
        </form>
    </div>
</body>
</html>
فایل پیوست

میلاد رئوف

توسط

میلاد رئوف

11 فروردین 00

حذف شده
در حال بررسی کدتونم
امیر صالحی

11 فروردین 00