• 29-09-2009, 14:43:14
    #1
    Merhaba arkadaşlar. Ben vimeo'dan video çekmeye çalışıyorum fakat çekemiyorum .. kodlarım şu;

    <?php
    $a=$_GET['a'];
    
    //videonun adresi
    $adres = file_get_contents("http://vimeo.com/$a");
    
    //baslik burada cekiliyor.
    $baslik = explode('<div class="title">',$adres);
    $baslik = explode('</div>',$adres[1]);
    
    //yollayan burada cekiliyor.
    $yollayan = explode('<div class="byline">',$adres);
    $yollayan = explode('</div>',$adres[1]);
    
    //player kodlari burada cekiliyor.
    $player = explode('<object>
    <param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" />
    <embed src="http://vimeo.com/moogaloop.swf?clip_id=',$adres);
    $player = explode('&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height="400"></embed></object>',$adres[1]);
    
    echo $baslik[0];
    echo "<br/>";
    echo $yollayan[0];
    echo "<br/>";
    echo $player[0];
    echo "<br/>";
    ?>
    bu kodları başka bir siteye uyarladığımda çalışıyor fakat vimeo.com dan veri çekmeye çalıştığımda her değer yani başlık , yollayan , player desğişkenlerinin verdiği sonuç ! (ünlem) işareti oluyor..

    Hata yaptığımı sanmıyorum ama böyle bir sonuç aldığım için hata yapabilirim. Sizce nerede hata yapıyorum ?
  • 29-09-2009, 16:16:30
    #2
    mesela
    $baslik = explode('</div>',$adres[1]);
    yerine
    $baslik = explode('</div>',$baslik[1]);

    kullanmalıydınız.

    aynı şekilde
    $yollayan = explode('</div>',$adres[1]); yerine
    $yollayan = explode('</div>',$yollayan[1]);

    anladığım kadarılya buldacağınız player değişkeni de $_GET['a'] ya eşit olacak.
    yukarıdaki değişiklikleri yaptığında çalışması gerekiyor. Yalnız explode yerine preg_match ile yapsan, biraz daha işin raconuna uymuş olursun.

    bu kodlar da http://www.cnylmz.net/dosyalar/class-html_rendele.php linkindeki classımı kullanarak aynı bilgileri alabilecğein kodlar

    <?php
    require_once('class-html_rendele.php');
    $bot= new html_rendele();
    
    $bot->url='http://vimeo.com/'.$_GET['a'];
    $bot->oku();
    
    $bot->tag='div';
    $bot->tag_ozellik('class','title');
    $bot->cek();
    $baslik=$bot->sonuc[0]['icerik'];
    
    $bot->tag='div';
    $bot->tag_ozellik('class','byline');
    $bot->cek();
    $yollayan=$bot->sonuc[0]['icerik'];
    
    echo 'Başlık: '.$baslik.'<br />
    Yollayan: '.$yollayan.'<br />
    Player: '.$_GET['a'];
    ?>
  • 29-09-2009, 16:17:57
    #3
    //baslik burada cekiliyor.
    $baslik = explode('<div class="title">',$adres);
    $baslik = explode('</div>',$baslik[1]);
  • 29-09-2009, 20:29:28
    #4
    Sağolun beyler hallettim sayenizde

    @Seyranli;
    PHP sınıfı güzel ve kullanışlıymış . Sağol