• 23-10-2021, 13:08:51
    #1


    PHP 'de bilgili olan üstlerime ufak bir sorum var. Öncelikle bir slider kısmı var bu kısma dinamik bir şekilde panelden görseldeki gibi resim yüklemek istiyorum. Fakat bunu nasıl yapacağımı bilemedim. Tek file kısmına multiple parametresi ile birden fazla dosya seçebiliyoruz fakat ben bu şekilde ayrı ayrı olmasını istiyorum. Bunun için form post edildiğinde yüklenen resimleri hangi algoritma ile sanal sunucuya atıp veri tabanına kaydedebiliriz? (algoritmanın hepsini yazarak vakit kaybetmenizi istemem, ufak bir yol gösterseniz yeterli şimdiden teşekkürler).
  • 23-10-2021, 13:13:28
    #2
    https://yucebilgi.net/php-ile-resim-...na-kayit-etme/

    bu işinize yarayabilir.
  • 23-10-2021, 13:15:15
    #3
    Kara adlı üyeden alıntı: mesajı görüntüle
    hocam yazıda tek dosya yüklemeyi göstermiş. Hali hazırda onu yapıyorum fakat bu şekilde birden fazla dosyayı yapamadım. Aklım baya karıştı :/
  • 23-10-2021, 13:19:33
    #4
    PHP & Flutter & Laravel
    Eğer görseldeki gibi istiyorsanız mantık basit. 4 resminde inputuna farklı name ler verin sonra $_FILES değişkeninin içinden sırasıyla 1 - 2.... diye resimler üzerinde işlem yapın. Yani tek dosya yükleme mantığıyla aynı tek fark 4 farklı name için ayrı ayrı işlem yapmak
  • 23-10-2021, 13:22:27
    #5
    hocam bu tek görsel olduğu zaman güncelleme işlemi yapıyor. Veritabanı işlemi için public fonksiyon oluşturduğum için o şekilde oraya takılmayın. Bunu çoklu resme uyarlayamadım bir türlü
    if ($_POST) {
                $baslik = $_POST['baslik'];
                $kisaaciklama = $_POST['kisaaciklama'];
                $tamaciklama = $_POST['tamaciklama'];
                $calismakonusu = $_POST['calismakonusu'];
    
                if ($_FILES["resim"]["name"]) {
                    $resimAdi = $_FILES["resim"]["name"];
                    $resimYolu = "upload/" . $resimAdi;
                    if (move_uploaded_file($_FILES["resim"]["tmp_name"], $resimYolu)) {
                        $ekle = $VT->SorguCalistir('UPDATE ' . 'calismalarim', 'SET baslik=?, kisaaciklama=?, tamaciklama=?, calismakonusu=?, resim=? WHERE ID=?', array($baslik, $kisaaciklama, $tamaciklama, $calismakonusu, $resimAdi, $gelenid));
                        if ($ekle) {
                            header('Location:index.php?sayfa=calismalarim');
                        } else {
                            echo "basarisiz";
                        }
                    }
                } else {
                    $ekle = $VT->SorguCalistir('UPDATE ' . 'calismalarim', 'SET baslik=?, kisaaciklama=?, tamaciklama=?, calismakonusu=? WHERE ID=?', array($baslik, $kisaaciklama, $tamaciklama, $calismakonusu, $gelenid));
                    if ($ekle) {
                        header('Location:index.php?sayfa=calismalarim');
                    } else {
                        echo "basarisiz";
                    }
                }
            }
            ?>
  • 23-10-2021, 13:28:30
    #6
    PHP & Flutter & Laravel
    Misafir adlı üyeden alıntı: mesajı görüntüle
    hocam bu tek görsel olduğu zaman güncelleme işlemi yapıyor. Veritabanı işlemi için public fonksiyon oluşturduğum için o şekilde oraya takılmayın. Bunu çoklu resme uyarlayamadım bir türlü
    
    if ($_POST) {
    
                $baslik = $_POST['baslik'];
    
                $kisaaciklama = $_POST['kisaaciklama'];
    
                $tamaciklama = $_POST['tamaciklama'];
    
                $calismakonusu = $_POST['calismakonusu'];
    
    
    
                if ($_FILES["resim"]["name"]) {
    
                    $resimAdi = $_FILES["resim"]["name"];
    
                    $resimYolu = "upload/" . $resimAdi;
    
                    if (move_uploaded_file($_FILES["resim"]["tmp_name"], $resimYolu)) {
    
                        $ekle = $VT->SorguCalistir('UPDATE ' . 'calismalarim', 'SET baslik=?, kisaaciklama=?, tamaciklama=?, calismakonusu=?, resim=? WHERE ID=?', array($baslik, $kisaaciklama, $tamaciklama, $calismakonusu, $resimAdi, $gelenid));
    
                        if ($ekle) {
    
                            header('Location:index.php?sayfa=calismalarim');
    
                        } else {
    
                            echo "basarisiz";
    
                        }
    
                    }
    
                } else {
    
                    $ekle = $VT->SorguCalistir('UPDATE ' . 'calismalarim', 'SET baslik=?, kisaaciklama=?, tamaciklama=?, calismakonusu=? WHERE ID=?', array($baslik, $kisaaciklama, $tamaciklama, $calismakonusu, $gelenid));
    
                    if ($ekle) {
    
                        header('Location:index.php?sayfa=calismalarim');
    
                    } else {
    
                        echo "basarisiz";
    
                    }
    
                }
    
            }
    
            ?>


    Mantık aşağıdaki gibi. Bunun daha uygun yolları var aslında aşağıdaki gibi olması da doğru değil ama mantığını anlamanız için yazıyorum. Form sayfasında birinci resim yükleme inputunun name kısmını AAA yapın ikinci resim yükleme inputunu BBB yapın bu şekilde isimlendirin daha sonra veritabanında buna uygun sütunlar oluşturun sonra da aşağıdaki mantıktaki gibi güncelleyin. Aslında en iyi yolu ayrı bir sütun oluşturup çalışma id sine göre resim yollarını belirtmek veya jsonla tek sütuna kaydetmek ama mantığı anlamanız için aşağıdaki gibi basit bir şey yapabilirsiniz.



    if ($_FILES["AAA"]["name"]) {
    
                    $resimAdi = $_FILES["AAA"]["name"];
                    $resimYolu = "upload/" . $resimAdi;
                    if (move_uploaded_file($_FILES["AAA"]["tmp_name"], $resimYolu)) {
                        $ekle = $VT->SorguCalistir('UPDATE ' . 'calismalarim', 'SET baslik=?, kisaaciklama=?, tamaciklama=?, calismakonusu=?, resimAAA=? WHERE ID=?', array($baslik, $kisaaciklama, $tamaciklama, $calismakonusu, $resimAdi, $gelenid));
                        if ($ekle) {
                            header('Location:index.php?sayfa=calismalarim');
                        } else {
                            echo "basarisiz";
                        }
                    }
                }
    
     if ($_FILES["BBB"]["name"]) {
                    $resimAdi = $_FILES["BBB["name"];
                    $resimYolu = "upload/" . $resimAdi;
                    if (move_uploaded_file($_FILES["BBB["tmp_name"], $resimYolu)) {
                        $ekle = $VT->SorguCalistir('UPDATE ' . 'calismalarim', 'SET baslik=?, kisaaciklama=?, tamaciklama=?, calismakonusu=?, resimBBB=? WHERE ID=?', array($baslik, $kisaaciklama, $tamaciklama, $calismakonusu, $resimAdi, $gelenid));
                        if ($ekle) {
                            header('Location:index.php?sayfa=calismalarim');
                        } else {
                            echo "basarisiz";
                        }
                    }
                }
  • 23-10-2021, 13:32:09
    #7
    aksoyhlc adlı üyeden alıntı: mesajı görüntüle
    Mantık aşağıdaki gibi. Bunun daha uygun yolları var aslında aşağıdaki gibi olması da doğru değil ama mantığını anlamanız için yazıyorum. Form sayfasında birinci resim yükleme inputunun name kısmını AAA yapın ikinci resim yükleme inputunu BBB yapın bu şekilde isimlendirin daha sonra veritabanında buna uygun sütunlar oluşturun sonra da aşağıdaki mantıktaki gibi güncelleyin. Aslında en iyi yolu ayrı bir sütun oluşturup çalışma id sine göre resim yollarını belirtmek veya jsonla tek sütuna kaydetmek ama mantığı anlamanız için aşağıdaki gibi basit bir şey yapabilirsiniz.



    if ($_FILES["AAA"]["name"]) {
    
                    $resimAdi = $_FILES["AAA"]["name"];
                    $resimYolu = "upload/" . $resimAdi;
                    if (move_uploaded_file($_FILES["AAA"]["tmp_name"], $resimYolu)) {
                        $ekle = $VT->SorguCalistir('UPDATE ' . 'calismalarim', 'SET baslik=?, kisaaciklama=?, tamaciklama=?, calismakonusu=?, resimAAA[/FONT][/COLOR]=? WHERE ID=?', array($baslik, $kisaaciklama, $tamaciklama, $calismakonusu, $resimAdi, $gelenid));
                        if ($ekle) {
                            header('Location:index.php?sayfa=calismalarim');
                        } else {
                            echo "basarisiz";
                        }
                    }
                }
    
     if ($_FILES["BBB"]["name"]) {
                    $resimAdi = $_FILES["BBB["name"];
                    $resimYolu = "upload/" . $resimAdi;
                    if (move_uploaded_file($_FILES["BBB["tmp_name"], $resimYolu)) {
                        $ekle = $VT->SorguCalistir('UPDATE ' . 'calismalarim', 'SET baslik=?, kisaaciklama=?, tamaciklama=?, calismakonusu=?, resimBBB[/FONT][/COLOR]=? WHERE ID=?', array($baslik, $kisaaciklama, $tamaciklama, $calismakonusu, $resimAdi, $gelenid));
                        if ($ekle) {
                            header('Location:index.php?sayfa=calismalarim');
                        } else {
                            echo "basarisiz";
                        }
                    }
                }
    Vakit ayırdığınız için teşekkür ederim. Bunu hemen deneyeyim.
    • aksoyhlc
    aksoyhlc bunu beğendi.
    1 kişi bunu beğendi.