v2.5.2
Giriş yap

PHP İLE DOSYA YÜKLEME HATASI

isa
459 defa görüntülendi

Merhabaler, şu anda üzerinde çalıştığım projede bir ders anlatımı için resim ve video yüklemesi yapıyorum. Resim ve video yükleme işleminde her hangi bir hatam yok gayet başarılı bir şekilde çalışıyor.
Fakat sıra güncelleme işlemine geldiğinde ders yeni video seçildiğinde ve form submit edildiğinde eski dosyayı silme ve dosya yükleme işlemleri başarılı. Ancak dosya ismini veri tabanına kaydederken Array olarak kaydediliyor. Tekrar video seçip işlemi yaptığınızda bu sefer hatasız bir şekilde çalışıyor. Tekrar denerseniz bu sefer yine array ve sonra yine normal. Bu şekilde bir loopa takıldım çözemedim. Yardımıcı olursanız sevinirim.

PHP güncelleme kodlarım.

if (isset($_POST['EditLessonFormSubmit'])){
    $image_extensions=['image/jpg','image/jpeg','image/png'];
    $vide_extensions=['video/mp4'];
    $lesson_id = post('lesson_id');
    $lesson = Lesson::Check($lesson_id);
    if (!$lesson) $message = [
        'error' => true,
        'icon' => 'warning',
        'message' => "Lütfen değerle oynamayınız..."
    ];
    else{
        $data = [
            'lesson_name' => !post('lesson_name') ? $lesson->lesson_name : post('lesson_name'),
            'lesson_status' => $_POST['lesson_status'],
            'lesson_image' => $_FILES['lesson_image']['error'] !== 4 ? $_FILES['lesson_image'] : $lesson->lesson_image,
            'lesson_video' => $_FILES['lesson_video']['error'] !== 4 ? $_FILES['lesson_video'] : $lesson->lesson_video,
        ];

        if (is_array($data['lesson_image'])){
            if ($data['lesson_image']['error'] != 0) $message=[
                'error' => true,
                'icon' => 'warning',
                'message' => 'Seçilen konu resim hatalı.'
            ];

            elseif (!extensionControl($image_extensions,$data['lesson_image']['type'])) $message = [
                'error' => true,
                'icon' => 'warning',
                'message' => 'Konu resim uzantısı geçersiz. Sadece (.jpg , .jpeg , .png)'
            ];

            if (!isset($message)){
                $lesson_image_name = permalink($data['lesson_name']).'_'.randomFileName('.'.extensionFind($data['lesson_image']['name']));
                if (file_exists(realpath('.').'/assets/package/lesson/'.$lesson->lesson_image)) unlink(realpath('.').'/assets/package/lesson/'.$lesson->lesson_image);
                if (!move_uploaded_file($data['lesson_image']['tmp_name'],realpath('.').'/assets/package/lesson/'.$lesson_image_name)) $message = [
                    'error' => true,
                    'info' => 'warning',
                    'message' => 'Konu resim yüklenemedi. SİSTEM HATASI!!!'
                ];
                else $data['lesson_image'] = $lesson_image_name;
            }
        }
        if (is_array($data['lesson_video'])){
            if ($data['lesson_video']['error'] != 0 ) $message = [
                'error' => true,
                'icon' => 'warning',
                'message' => 'Seçilen konu video hatalı.'
            ];
            elseif (!extensionControl($vide_extensions,$data['lesson_video']['type'])) $message = [
                'error' => true,
                'icon' => 'warning',
                'message' => 'Konu vide uzantısı geçersiz. Sadece (.mp4)'
            ];
            if(!isset($message)){
                $lesson_video_name = permalink($data['lesson_name']).'_'.randomFileName('.'.extensionFind($data['lesson_video']['name']));
                if (file_exists(realpath('.').'/assets/package/lesson/'.$lesson->lesson_video)) unlink(realpath('.').'/assets/package/lesson/'.$lesson->lesson_video);
                elseif (!move_uploaded_file($data['lesson_video']['tmp_name'],realpath('.').'/assets/package/lesson/'.$lesson_video_name)) $message = [
                    'error' => true,
                    'info' => 'warning',
                    'message' => 'Konu video yüklenemedi. SİSTEM HATASI!!!'
                ];
                else $data['lesson_video'] = $lesson_video_name;
            }

        }

        var_dump($data);
        if (!isset($message)){
            $data['lesson_id'] = $lesson_id;
            $data['package_id'] = $package_id;

            if (Lesson::Update($data)) $message = [
                'error' => false,
                'icon' => 'success',
                'message' => 'Konu başarılı bir şekilde güncellendi.'
            ];
            else $message = [
                'error' => true,
                'icon' => 'warning',
                'message' => 'Konu güncellenirken bir hata oluştu.'
            ];
        }
    }
}
    

Şimdiden teşekkürler, keyifli kodlamalar...

Cevap yaz
Cevaplar (0)
Henüz kimse cevap yazmadı. İlk cevap yazan sen ol!