• 31-05-2010, 19:22:19
    #1
    Merhaba arkadaşlar.
    Facebook video botu yapıyorum.
    Bildiğiniz gibi
    http://www.facebook.com/video/video.php?v=404562477365 videosunu izliyorum mesela.
    İleri tuşuna basıyorum ve
    http://www.facebook.com/video/video....16739605035009

    oluyor.
    O videonun asıl değişkeni 2. en sona eklenen v değeri oluyor.
    Ben bunu tek olunca halledebiliyorum fakat böyle 2 li gelince halledemiyorum. 1. yi alıyor. Önceki videoyu çekmiş oluyor.
    preg_match('"/video/video.php\?v=([0-9]+)"', $Url, $id);
    bunu kullanıyorum.

    2. veriye işlemi nasıl yapabilirim eğer 2 tane v değeri var ise ?
    Örnek kod verirseniz çok sevinirim arkadaşlar.
    Teşekkür ederim.
  • 31-05-2010, 20:15:25
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Desen: http://rubular.com/r/dw7NxbHREQ
    $sonraki_video = preg_match_all('~\/video\/video\.php\?v=(\d+)~', $Url, $matches) ? $matches[1][1] : 'Sonraki video alınamadı';
  • 01-06-2010, 18:22:53
    #3
    Aslında böyle yapmayı deniyorum fakat dediğinizi uyarlayamadım.

    preg_match('"/video/video.php\?v=([0-9]+)"', $Url, $id); 
    
    
    	$sonurl = "http://www.facebook.com/video/video.php?v=".$id[1];
    Kodunu

    if(count($id)=="2"){
    
    	$sonurl = "http://www.facebook.com/video/video.php?v=".$id[2];
    }else{
    	$sonurl = "http://www.facebook.com/video/video.php?v=".$id[1];
    }
    nasıl yapacağım bu şekilde ? Yani yapmaya çalıştığım eğer 2 tane v değeri var ise en sondakini aldırmak.
  • 01-06-2010, 18:38:15
    #4
    Üyeliği durduruldu
    İleriye basmak yerine video numarasını 1 arttırarak olmaz mı ?
  • 01-06-2010, 18:50:27
    #5
    Doc.Deniz adlı üyeden alıntı: mesajı görüntüle
    İleriye basmak yerine video numarasını 1 arttırarak olmaz mı ?
    Yok hocam anlatamadım galiba.
    Şimdi facebook araçları sitesi açıyorum.
    Url girince indirebilecekler. Fakat kullanıcı video izledikten sonra sağ üstteki ileriye basınca
    http://www.facebook.com/video/video.php?v=404562477365 olan adres
    http://www.facebook.com/video/video....16739605035009 oluyor. Videonun ileriye bastığından sonraki hâli bu yani. En sondaki oluyor.

    Ben eğer 2 tane v değeri var ise en son bulunan değeri bir değere eşitlemek istiyorum.
  • 01-06-2010, 18:55:43
    #6
    PREG_MATCH_ALL tüm sonuçları listeler. yani bir sayfada iki tane v varsa ikisinide alıcaktır. Fakat örnek verdiğin url ler ikisi birbirinden farklı ondan tek desen uymayacaktır. Eğer kaynak kodlarıda böyleyse.
    Bence sen preg_match_all yap sonuçları ekrana yazdır. Bakalım geliyormu iki videoda. Gelmiyorsa iki desen birden yaz.
  • 01-06-2010, 18:58:44
    #7
    aLKaDraZ adlı üyeden alıntı: mesajı görüntüle
    PREG_MATCH_ALL tüm sonuçları listeler. yani bir sayfada iki tane v varsa ikisinide alıcaktır. Fakat örnek verdiğin url ler ikisi birbirinden farklı ondan tek desen uymayacaktır. Eğer kaynak kodlarıda böyleyse.
    peki daha kolayca bir url den v değerini nasıl çekerim ? 1. ve 2. olmak üzere ?
  • 01-06-2010, 19:01:50
    #8
    $desen = '#http://www.facebook.com/video/video.php?v=(.*?)#si';
    preg_match_all($desen,$curl,$dizi);
    print_r($dizi);
    Böle dene bakalım verecekmi.
  • 01-06-2010, 19:02:07
    #9
    Doc.Deniz adlı üyeden alıntı: mesajı görüntüle
    İleriye basmak yerine video numarasını 1 arttırarak olmaz mı ?
    Deniz önceki-sonraki video|resim IDleri uyuşmuyor Feysbuk'ta. Yani +1|-1 olayı yok.

    SystemCoder adlı üyeden alıntı: mesajı görüntüle
    peki daha kolayca bir url den v değerini nasıl çekerim ? 1. ve 2. olmak üzere ?
    Siz benim yukarıda verdiğim kodu denediniz mi?