ايمن ميلاد نشر 4 مارس أرسل تقرير نشر 4 مارس السلام عليكم لدي سكربت تالي يقبل حجم ملفات التي اقل من واحد ميغا لكن لايقبل ملفات حجمه اكثر علي الرغم لم احدد حجم ملف كود مرفقا if(isset($_POST['submit'])){ $file_proj = date("Ymdhis").$_FILES['file']['name']; $file_type = $_FILES['file']['type']; $file_tmp = $_FILES['file']['tmp_name']; $file_dir = '../uploads/'; $id_pro = $_GET['id']; if(in_array($file_type,array("application/pdf","application/vnd.ms-powerpoint","application/msword","application/vnd.ms-word.document.macroenabled.12"))){ move_uploaded_file($file_tmp,$file_dir.$file_proj); $sql = "INSERT INTO `file_project`(`id_p`, `path_file`) VALUES ($id_pro ,'$file_proj')"; $query = mysqli_query($con,$sql); echo '<div class="col-md-12"><div class="alert alert-success" role="alert"> تم اضافة الملف بنجاح </div></div>'; }else{ echo '<div class="col-md-12"><div class="alert alert-danger text-center" role="alert">خطأ في رفع الملف الرجائ التحقق من نوع الملف<div /> </div>'; } } } 1 اقتباس
0 ياسر مسكين نشر 4 مارس أرسل تقرير نشر 4 مارس (معدل) المشكلة الرئيسية هي أن السكربت يبدو أنه لا يتحقق من حجم الملفات قبل محاولة رفعها، وبالتالي لا يتم التحقق من تجاوز حدود الحجم المسموح بها، ولحل هذه المشكلة، يجب عليك إضافة التحقق من حجم الملفات قبل محاولة رفعها. يمكنك القيام بذلك باستخدام الميزة المدمجة في PHP لفحص حجم الملف المُحمَّل قبل محاولة حفظه على السيرفر. بداية يمكنك التحقق من حجم الملف باستخدام الدالة: اقتباس PHP `$_FILES['file']['size']` ثم مقارنة حجم الملف الذي تم تحميله مع الحد الأقصى المسموح به، فإذا كان حجم الملف يتجاوز الحد الأقصى المسموح به، فسوف يتم عرض رسالة خطأ ولا تقم بحفظ الملف على السيرفر.وهذا تعديل للسكريبت الخاص بك ليتماشى مع ما ذكرته: if(isset($_POST['submit'])){ $file_proj = date("Ymdhis") . $_FILES['file']['name']; $file_type = $_FILES['file']['type']; $file_tmp = $_FILES['file']['tmp_name']; $file_size = $_FILES['file']['size']; // Get the size of the file $file_dir = '../uploads/'; $id_pro = $_GET['id']; // Check if file size exceeds the maximum allowed size (in bytes) $max_file_size_allowed = 1048576; // 1 MB, you can change this as per your requirement if ($file_size <= $max_file_size_allowed) { if(in_array($file_type,array("application/pdf","application/vnd.ms-powerpoint","application/msword","application/vnd.ms-word.document.macroenabled.12"))){ move_uploaded_file($file_tmp,$file_dir.$file_proj); $sql = "INSERT INTO `file_project`(`id_p`, `path_file`) VALUES ($id_pro ,'$file_proj')"; $query = mysqli_query($con,$sql); echo '<div class="col-md-12"><div class="alert alert-success" role="alert"> تم اضافة الملف بنجاح </div></div>'; } else { echo '<div class="col-md-12"><div class="alert alert-danger text-center" role="alert">خطأ في رفع الملف الرجاء التحقق من نوع الملف<div /> </div>'; } } else { echo '<div class="col-md-12"><div class="alert alert-danger text-center" role="alert">حجم الملف يتجاوز الحد المسموح به<div /> </div>'; } } تم التعديل في 4 مارس بواسطة ياسر مسكين اقتباس
0 Mahmoud Hassan19 نشر 4 مارس أرسل تقرير نشر 4 مارس مرحبا المشكلة لديك قد تكون بسبب إعدادات رفع الملفات للتحكم في الحجم الأقصى للملفات التي يمكن رفعها ممكن استخدام إعداد max_file_sizeفي ملف config/upload.php قم بتغيريها الي 'max_file_size' => 2097152, وبعد ذاللك اكتب هذه الامر في الترمينل لكي تمسح الكاش php artisan config:clear اقتباس
0 ايمن ميلاد نشر 4 مارس الكاتب أرسل تقرير نشر 4 مارس بتاريخ 3 ساعة قال ياسر مسكين: المشكلة الرئيسية هي أن السكربت يبدو أنه لا يتحقق من حجم الملفات قبل محاولة رفعها، وبالتالي لا يتم التحقق من تجاوز حدود الحجم المسموح بها، ولحل هذه المشكلة، يجب عليك إضافة التحقق من حجم الملفات قبل محاولة رفعها. يمكنك القيام بذلك باستخدام الميزة المدمجة في PHP لفحص حجم الملف المُحمَّل قبل محاولة حفظه على السيرفر. بداية يمكنك التحقق من حجم الملف باستخدام الدالة: ثم مقارنة حجم الملف الذي تم تحميله مع الحد الأقصى المسموح به، فإذا كان حجم الملف يتجاوز الحد الأقصى المسموح به، فسوف يتم عرض رسالة خطأ ولا تقم بحفظ الملف على السيرفر.وهذا تعديل للسكريبت الخاص بك ليتماشى مع ما ذكرته: if(isset($_POST['submit'])){ $file_proj = date("Ymdhis") . $_FILES['file']['name']; $file_type = $_FILES['file']['type']; $file_tmp = $_FILES['file']['tmp_name']; $file_size = $_FILES['file']['size']; // Get the size of the file $file_dir = '../uploads/'; $id_pro = $_GET['id']; // Check if file size exceeds the maximum allowed size (in bytes) $max_file_size_allowed = 1048576; // 1 MB, you can change this as per your requirement if ($file_size <= $max_file_size_allowed) { if(in_array($file_type,array("application/pdf","application/vnd.ms-powerpoint","application/msword","application/vnd.ms-word.document.macroenabled.12"))){ move_uploaded_file($file_tmp,$file_dir.$file_proj); $sql = "INSERT INTO `file_project`(`id_p`, `path_file`) VALUES ($id_pro ,'$file_proj')"; $query = mysqli_query($con,$sql); echo '<div class="col-md-12"><div class="alert alert-success" role="alert"> تم اضافة الملف بنجاح </div></div>'; } else { echo '<div class="col-md-12"><div class="alert alert-danger text-center" role="alert">خطأ في رفع الملف الرجاء التحقق من نوع الملف<div /> </div>'; } } else { echo '<div class="col-md-12"><div class="alert alert-danger text-center" role="alert">حجم الملف يتجاوز الحد المسموح به<div /> </div>'; } } انا اريد يقبل ملفات من كليو بايت الي 15 ميغا اقصي شي وليس اقصي شي واحد ميغا بتاريخ 23 دقائق مضت قال gamal_king: انا اريد يقبل ملفات من كليو بايت الي 15 ميغا اقصي شي وليس اقصي شي واحد ميغا قمت بعمل اقصي شي 15 ميغا قبل انظر للكود لكن تظهر رسالة تالية علي الرغم من انه pdf امتداده if (isset($_POST['submit'])) { $file_proj = date("Ymdhis") . $_FILES['file']['name']; $file_type = $_FILES['file']['type']; $file_tmp = $_FILES['file']['tmp_name']; $file_size = $_FILES['file']['size']; // Get the size of the file $file_dir = '../uploads/'; $id_pro = $_GET['id']; // Check if file size exceeds the maximum allowed size (in bytes) $max_file_size_allowed = 8388608; // 15 MB, you can change this as per your requirement if ($file_size <= $max_file_size_allowed) { if (in_array($file_type, array("application/pdf", "application/vnd.ms-powerpoint", "application/msword", "application/vnd.ms-word.document.macroenabled.12"))) { move_uploaded_file($file_tmp, $file_dir . $file_proj); $sql = "INSERT INTO `file_project`(`id_p`, `path_file`) VALUES ($id_pro ,'$file_proj')"; $query = mysqli_query($con, $sql); echo '<div class="col-md-12"><div class="alert alert-success" role="alert"> تم اضافة الملف بنجاح </div></div>'; } else { echo '<div class="col-md-12"><div class="alert alert-danger text-center" role="alert">خطأ في رفع الملف الرجاء التحقق من نوع الملف<div /> </div>'; } } else { echo '<div class="col-md-12"><div class="alert alert-danger text-center" role="alert">حجم الملف يتجاوز الحد المسموح به<div /> </div>'; } } بتاريخ 3 ساعة قال Mahmoud Hassan19: مرحبا المشكلة لديك قد تكون بسبب إعدادات رفع الملفات للتحكم في الحجم الأقصى للملفات التي يمكن رفعها ممكن استخدام إعداد max_file_sizeفي ملف config/upload.php قم بتغيريها الي 'max_file_size' => 2097152, وبعد ذاللك اكتب هذه الامر في الترمينل لكي تمسح الكاش php artisan config:clear اين اجد مكانه ملف اقتباس
0 Mahmoud Hassan19 نشر 4 مارس أرسل تقرير نشر 4 مارس لو مش موجود عندك ممكن تغير القيمة دي في ملف php.ini upload_max_filesize = 10MB او ممكن تستخدم validator في controller $validator = Validator::make($request->all(), [ 'file' => 'max:5120', //5MB ]); اقتباس
السؤال
ايمن ميلاد
السلام عليكم لدي سكربت تالي يقبل حجم ملفات التي اقل من واحد ميغا لكن لايقبل ملفات حجمه اكثر علي الرغم لم احدد حجم ملف
كود مرفقا
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.