• 24-10-2021, 03:59:20
    #1
    merhaba arkadaşlar iki inputum var ikisinede resim ekleyince sorun yok ama birini güncelleyince diğeri kayboluyor ikiside aynı ID de kaydediliyor sutunları farklı sadece bu sorunu nasıl çözerim;

    if (isset($_POST['imagekaydet'])) {
    
    
            $uploads_dir = 'images/';
            $tmp_name = $_FILES['image_image1']["tmp_name"];
            $name = $_FILES['image_image1']["name"];
            $refimgyol1=substr($uploads_dir, 6)."images/".$name;
            move_uploaded_file($tmp_name, "$uploads_dir/$name");
    
    
            $uploads_dir2 = 'images/';
            $tmp_name2 = $_FILES['image_image2']["tmp_name"];
            $name2 = $_FILES['image_image2']["name"];
            $refimgyol2=substr($uploads_dir2, 6)."images/".$name2;
            move_uploaded_file($tmp_name2, "$uploads_dir/$name2");
    
            if (!empty($_FILES['image_image1'])) {
    
            $imagekaydet=$db->prepare("UPDATE image SET
                image_image1yazi=:image_image1yazi,
                image_image2yazi=:image_image2yazi,
                image_image1=:resim1,
                image_image2=:resim2
    
                WHERE image_id=1");
            $update=$imagekaydet->execute(array(
                'image_image1yazi' => $_POST['image_image1yazi'],
                'image_image2yazi' => $_POST['image_image2yazi'],
                'resim1' => $refimgyol1,
                'resim2' => $refimgyol2
    
            ));
    
            if ($update) {
    
                Header("Location:../production/image.php?durum=ok");
    
            } else {
    
                Header("Location:../production/image.php?durum=no");
            }
    
        }
    }
  • 24-10-2021, 04:04:16
    #2
    Reis gincelleme kodunda input boş ise o alanı güncellettirme
  • 24-10-2021, 04:08:43
    #3
    input boş değil iki resim alanı ikisindede resim var birini güncelleştirmek isteyince diğeri gidiyo
  • 24-10-2021, 04:12:33
    #4
    Developer
    image_image1 boş değilse diyorsunuz altında ikinci görseli de dbde güncelliyorsunuz.
  • 24-10-2021, 04:18:02
    #5
    nasıl oluyor onu anlmdım işte kodun neresni düzelticem
  • 24-10-2021, 12:58:56
    #6
    brown adlı üyeden alıntı: mesajı görüntüle
    image_image1 boş değilse diyorsunuz altında ikinci görseli de dbde güncelliyorsunuz.
    Tam olarak bu arkadaş gerekli cevap vermiş zaten size. Şöyle bir düzeltme yapmanız lazım:

    [COLOR=#515365][FONT=consolas]if (!empty($_FILES['image_image1'])) {[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas] [/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]        $imagekaydet=$db->prepare("UPDATE image SET[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]            image_image1yazi=:image_image1yazi,[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]            image_image1=:resim1[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]            WHERE image_id=1");[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]        $update=$imagekaydet->execute(array([/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]            'image_image1yazi' => $_POST['image_image1yazi'][/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]            'resim1' => $refimgyol1[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas] [/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]        ));[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]if (!empty($_FILES['image_image2'])) {[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas] [/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]        $imagekaydet=$db->prepare("UPDATE image SET[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]            image_image2yazi=:image_image2yazi,[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]            image_image2=:resim2[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]            WHERE image_id=2");[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]        $update=$imagekaydet->execute(array([/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]            'image_image2yazi' => $_POST['image_image2yazi'],[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]            'resim2' => $refimgyol2[/FONT][/COLOR]
    [COLOR=#515365][FONT=consolas]        ));[/FONT][/COLOR]
    Kodları sizin kodlarınızdan kopyaladım yanlışlık olabilir, kontrol edersiniz.
  • 24-10-2021, 13:04:55
    #7
    WHERE image_id=2");
    bu olamaz çünki
    id2 yok veritabanında tek id olacak

  • 25-10-2021, 20:42:55
    #8
    sorunu ['name'] ekleyerek çözdüm

    if (!empty($_FILES['image_image2']['name']
    bu şekilde ihtiyacı olanlar için yazdım