• 06-12-2020, 21:09:39
    #1
    Web Tasarım ve Yazılım
    Bir php bot üzerine uğraşıyorum
    Şimdi sorun şurada
    $iurl = "https://www.siteadresi.com/album/".$album_resim[$i2]; 
    $uzakdosya = file_get_contents($iurl);
    $kaydet = file_put_contents($newName.'.jpg', $uzakdosya);
    bu şekilde dosyayı çekiyorum ancak .php dosyasının bulunduğu dizine kaydediyor resimleri

    Benim istediğim ise klasör oluşturarak alt klasöre kaydetmesi
    Yani bu bir döngü içinde olacak
    döngü her döndüğünde gelen id sırasına göre klasör oluşturup o klasöre atacak bunları
    Döngü var
    Ama klasör oluşturmayı ve resmi oraya atmayı beceremedim

    Yardımcı olabilecek biri var mı?
  • 07-12-2020, 13:12:43
    #2
    Yazmış olduğun kod üzerinde bir eksik yok sen sadece dosya yapısını istediğin yere kaydetmek istiyorsun. Onu da en pratik olarak

    $folder = dirname(__FILE__); //dirname(__FILE__) fonksiyonu çalıştırıldığı dosyasının bulunduğu dizini alır.
    if(!is_dir($folder . DIRECTORY_SEPARATOR . "klasor1")){
     $folder = $folder . DIRECTORY_SEPARATOR . "klasor1";
     mkdir($folder);
    $kaydet = file_put_contents($folder . DIRECTORY_SEPARATOR . $newName.'.jpg', $uzakdosya);
    }
    şekildeni komutu kendine göre düzenleyerek istediğin yere kayıt edebilirsin.

    DIRECTORY_SEPARATOR özelliğini kullanmanı tavsiye ederim. Linux/Unix sistemler / ile ayırır Windows Sistemlerde ile ayırır sorun yaşamazsın.
  • 07-12-2020, 13:30:12
    #3
    $iurl = "https://www.siteadresi.com/album/".$album_resim[$i2]; 
    $uzakdosya = file_get_contents($iurl);
    if (file_exists($gelenidnumarasi)) { file_put_contents("$gelenidnumarasi/$newName".'.jpg', $uzakdosya); 
    exit; } 
    else {
    $klasorolustur= mkdir('$gelenidnumarasi');
    $kaydet = file_put_contents("$klasorolustur/$newName".'.jpg', $uzakdosya); }
    döngüne $gelenidnumarasi sokarsan aynı id li klasore kaydeder.