• 26-01-2015, 03:10:56
    #1
    Üyeliği durduruldu
    Selam,

    Karşı siteden çekilen ve kendi sitemize yüklemeye çalıştığımız .mp4, .flv ve .jpg gibi dosyalarda failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden hatası alıyordum.

    Bu hata file_get_contents ve copy metodlarında görünüyor. Nedeni: karşı sitenin header bilgisi göndermeyen siteleri reddediyor olması.

    Bunun önüne geçebilmek için curl fonksiyonunu kullanmanız gerekiyor fakat curl ile video / resim vs gibi dosyaların nasıl çekildğini bilmiyorum.

    Forumdaki arkadaşların yardımlarıyla bu hatayı atlatacak bir çözüm aşağıda.

    $karsisitelinki = 'http://BURAYA-KARSI-SITE-LINKI.mp4';
    $name = 'videodnsz-'.rand(0,1150).'-'.rand(0,1150).'.mp4';
    $upload = copy($karsisitelinki,'/uploads/vids/'.$name.'');
  • 26-01-2015, 10:35:36
    #2
    Üyeliği durduruldu
    copy functionu ile yapmayı denermisin ama gönderdiğin hataya göre urlyi bulamıyor.
  • 26-01-2015, 12:30:02
    #3
    farklı seçenekler mevcut eğer link doğruysa;

    secenek1: readfile
    secenek2: fopen-feof-fread-fclose
    secenek3: fopen-fpassthru-fclose

    dosyayı uzaktan okumak için bunlardan birini kullanabilirsin.
    uzaktan dosya okuma belki de kapalı olabilir hostunda. localde önce bi denemesini yap.
  • 26-01-2015, 13:32:57
    #4
    Üyeliği durduruldu
    deleter20 adlı üyeden alıntı: mesajı görüntüle
    farklı seçenekler mevcut eğer link doğruysa;

    secenek1: readfile
    secenek2: fopen-feof-fread-fclose
    secenek3: fopen-fpassthru-fclose

    dosyayı uzaktan okumak için bunlardan birini kullanabilirsin.
    uzaktan dosya okuma belki de kapalı olabilir hostunda. localde önce bi denemesini yap.
    Bu seçeneklerin hepsinde aynı hatayı alıyorum. Karşı sie curl engelli sanırım. Aşmam lazım.

    phpyazilim adlı üyeden alıntı: mesajı görüntüle
    copy functionu ile yapmayı denermisin ama gönderdiğin hataya göre urlyi bulamıyor.
    Copy ile de aynı hatayı aldım.
  • 26-01-2015, 13:42:53
    #5
    Üyeliği durduruldu
    DNSZ adlı üyeden alıntı: mesajı görüntüle
    Bu seçeneklerin hepsinde aynı hatayı alıyorum. Karşı sie curl engelli sanırım. Aşmam lazım.



    Copy ile de aynı hatayı aldım.
    Su anda aldiginiz hataya gore dosyayi bulamiyor ama yani kullandiginiz yontemde hata yok mp4 dosyasini eristigine tam emin olun
  • 26-01-2015, 13:47:50
    #6
    Üyeliği durduruldu
    phpyazilim adlı üyeden alıntı: mesajı görüntüle
    Su anda aldiginiz hataya gore dosyayi bulamiyor ama yani kullandiginiz yontemde hata yok mp4 dosyasini eristigine tam emin olun
    Dosyaya erişiyor fakat engeline takılıyor.
    Curl ile header gönderebiliyorum fakat copy veya file get contents ile header gönderemiyorum.

    Curl ile de video dosyasını nasıl çekeceğimi bilmiyorum.
  • 26-01-2015, 13:49:26
    #7
    Üyeliği durduruldu
    DNSZ adlı üyeden alıntı: mesajı görüntüle
    Dosyaya erişiyor fakat engeline takılıyor.
    Curl ile header gönderebiliyorum fakat copy veya file get contents ile header gönderemiyorum.

    Curl ile de video dosyasını nasıl çekeceğimi bilmiyorum.
    skype:enes.zorkol eklermisiniz daha hızlı yardımcı olabilirim
  • 26-01-2015, 17:38:30
    #8
    Kimlik doğrulama veya yönetimden onay bekliyor.
    DNSZ adlı üyeden alıntı: mesajı görüntüle
    Selam,

    Karşı siteden çektiğim .mp4 uzantılı video dosyasını siteme kaydetmek istiyorum fakat failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden hatası alıyorum.

    Kodlar aşağıdaki gibi;

    $content = file_get_contents($url);
    $filename = rand(0, 999999);
    $handle = fopen('../uploads/vids/'.$name.'', 'w+');
    fwrite($handle, $content);
    Curl ile yapmak istiyorum ama internette örnek bulamadım. Bu konuda yardım edebilecek var mı?

    file_put_contents i denedinizmi hocam ?

    curl den dönen veriyi şu şekilde yazmayı denermisiniz.

    file_put_contents(dosya_ismi,$curl);
  • 26-01-2015, 20:29:07
    #9
    DNSZ adlı üyeden alıntı: mesajı görüntüle
    Selam,

    Karşı siteden çektiğim .mp4 uzantılı video dosyasını siteme kaydetmek istiyorum fakat failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden hatası alıyorum.

    Kodlar aşağıdaki gibi;

    $content = file_get_contents($url);
    $filename = rand(0, 999999);
    $handle = fopen('../uploads/vids/'.$name.'', 'w+');
    fwrite($handle, $content);
    Curl ile yapmak istiyorum ama internette örnek bulamadım. Bu konuda yardım edebilecek var mı?
    Urldecode gecmeniz gerekiyor sanirim veya token gerekiyor'da olabilir.
    $url=trim(urldecode($url));
    Denermisiniz.