12.02.2011 - Facebook Videoları Kalıcı Çözüm - WordPress'e entegre etmek. - Google Fan Webmaster Forum
Google Fan Webmaster Forum  
herşeyi sana yazdım

Geri git   Google Fan Webmaster Forum > Webmaster Genel > Webmaster Genel konular sorunlar
KEY
Kayıt ol Articles Sosyal Gruplar Forumları Okundu Kabul Et

Webmaster Genel konular sorunlar Webmaster genel konular sorular sorunlar

Like Tree8Beğeniler

Cevapla
 
LinkBack Seçenekler
  1  
Alt 12-02-2011, 06:07:47
mathematician
 
Standart 12.02.2011 - Facebook Videoları Kalıcı Çözüm - WordPress'e entegre etmek.

WORDPRESS ENTEGRESİ İÇİN TIKLAYIN


öncelikle flash playerınız SSL sitede barınması gerekmektedir, eğer SSL'iniz yoksa şunlardan birini kullanabilirsiniz :

https://www.drbvitamins.com/modules/...dia/player.swf
https://www.givemytithes.com/modules...dia/player.swf
https://www.savingface-software.com/...dia/player.swf
https://www.smartchoiceremedies.com/...dia/player.swf

anlatacağım işlemde SQL'de hiçbirşeyi değiştirmenize gerek yoktur, eğer son 2 3 gün içinde konularda yazılan işlemlerle SQL'inizi değiştirdiyseniz SQL yedeğinizi geri yükleyiniz, (aslında yüklemeseniz de olur , zorunlu değil )

gelelim php kodumuza,

PHP- Kodu:

function faceduzelt($urele)
{
    
$explode=explode("/",$urele);
    
$say=count($explode);
    
$son=$explode[$say-1];
    
$explode2=explode("_",$son);
    
$videoaydi=$explode2[0];
    
    
$al file_get_contents("http://www.facebook.com/ajax/flash/expand_inline.php?target_div=u879823_18&__a=1&v=$videoaydi");
    
$al stripslashes($al);
    
$exp=explode("\"video_src\", \"",$al);
    
$exp=explode("\");",$exp[1]);
    
$son=$exp[0];
    
$json '{"url": "'.$son.'"}';
    
$json json_decode($json);
    
$jsonurlencode($json->{'url'});

    return 
$json;

bu fonksiyonu video izlettiginiz php sayfasının tepesine kopyalayınız,

daha sonra ise databaseden video url si gelen kısma, örnegin bu kısım şöyle bişey olsun:

$videourl = $fetch["url"];

bu kısmın hemen altına şu kodu ekliyoruz :

$videourl = faceduzelt($videourl);

tek yapmanız gereken bu kadar, tekrar hatırlatayım player'ınızın SSL sitede barınması gerekmektedir, aksi takdirde video playerınızda oynamayacaktır.

örnek player url si :

https://www.drbvitamins.com/modules/...420fd550c2efb6


benden bu kadar,

not 1 : eğer her videoda facebook'a request çekmem ben diyorsanız (ki bence gerek yok çünkü 1 saniye bile sürmüyor fonksiyonumun anlık video url'sini çekmesi, ama yine de siz bilirsiniz) cache sistemini deneyiniz, diğer arkadaşlar nasıl cache yapacağınızı anlatırsa sevinirim lakin benim beynim sulandı, cache yapacak arkadaşların dikkatine : video hash expire süresi 2 gün diye düşünüyorum, ona göre kodlayın ve paylaşın kodlarınızı.


not 2 : bir de wordpress için zart için zurt için insanların hangi kısmı değiştirmesi gerektiğini de herkes burda paylaşırsa öperim alınlarınızdan, herkes anlamaz php den,

kolay gele.





kimsenin yapacağı yok ben yazayım bari,

===CACHELI KULLANMAK ISTEYENLER ICIN ====

öncelikle şu sql kodunu çalıştırınız:
PHP- Kodu:
CREATE TABLE  `cache` (
`
idINT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`
videoidVARCHAR50 NOT NULL ,
`
cacheVARCHAR300 NOT NULL ,
`
expireINT NOT NULL ,
INDEX (  `videoid` )
ENGINE MYISAM 

gelelim yeni fonksiyonlarımıza :

PHP- Kodu:

function faceduzeltcache($videoid)
{
    
$al file_get_contents("http://www.facebook.com/ajax/flash/expand_inline.php?target_div=u879823_18&__a=1&v=$videoid");
    
$al stripslashes($al);
    
$exp=explode("\"video_src\", \"",$al);
    
$exp=explode("\");",$exp[1]);
    
$son=$exp[0];
    
$json '{"url": "'.$son.'"}';
    
$json json_decode($json);
    
$jsonurldecode($json->{'url'});
    return 
$json;
}




function 
faceduzelt2cache($urele,$zamanaraligi)
{

    
$explode=explode("/",$urele);
    
$say=count($explode);
    
$son=$explode[$say-1];
    
$explode2=explode("_",$son);
    
$videoaydi=$explode2[0];
    
    
// cache kısımları //
    
$kueri mysql_query("select * from cache where videoid = '".$videoaydi."' order by id desc limit 1");
    
$cachevarmi=mysql_num_rows($kueri);
    if(
$cachevarmi)
    {
        
$alsana=mysql_fetch_assoc($kueri);
        
$expire=$alsana["expire"];
        
        if(
time() >= $expire)
        {
            
$sonanlikveri=faceduzeltcache($videoaydi);
            
$expiresuresi=time()+$zamanaraligi;
            
mysql_query("update cache set expire='".$expiresuresi."', cache = '".$sonanlikveri."' where id ='".$alsana["id"]."' ");
            return 
urlencode($sonanlikveri);
        }
        else
        {
            return 
urlencode($alsana["cache"]);
        }
    
    }
    else
    {
        
$sonanlikveri=faceduzeltcache($videoaydi);
        
$expiresuresi=time()+$zamanaraligi;
        
mysql_query("insert into cache (expire,cache,videoid) values ('".$expiresuresi."','".$sonanlikveri."','".$videoaydi."') ") or die(mysql_error());
        return 
urlencode($sonanlikveri);
    }


fonksiyonların kullanımı ise :

PHP- Kodu:

echo faceduzelt2cache("http://video.ak.fbcdn.net/cfs-ak-ash4/79424/239/10150100077013622_31373.mp4",5);
//2. parametre olarak gönderdigim "5" rakamı kaç saniyelik cache tutmak istediğinizdir, 1 saat yapmak istiyorsanız 3600 yazın mesela 

artık süper hızlı , cacheli, facebook engeline takılmayan bir siteniz var, tebrikler
====================================











EDİT SON :


===üyelikleriyle video upload edenler için, video gizliligini açmadan videoyu çekme ====


kodun kısa özeti :

Eğer video public bir video ise direk user ve pass'ı kullanmadan videonun ANLIK konumunu döner,

eğer video public bir video değil ise, videoyu yükleyenin hesabına giriş yapar, daha sonra videonun anlık konunumu çekip sonuç olarak veriyi döner ve user cookie'sini fb_cookies.txt ye kaydeder, cookie'yi kaydetmemizin amacı ise, bir sonraki isteğimizde CURL çalışmayacaktır, direk cookie bilgilerini kullanarak facebook'a request çekecektir, dolayısıyla 1 saniye gibi bir sürede istedigimiz videonun ANLIK url'sini bize dönderecektir.


Lütfen dosyanın çalıştıgı dizinde fb_cookies.txt dosyasını oluşturunuz ve CHMOD 777 değerini veriniz.

PHP- Kodu:


//videoyu upload ettiğiniz account bilgileri//
$mailim="mail@adresiniz.com";
$sifrem="şifreniz";
//////////////////////////////////////////////


function zuckerimberk($user,$pass)
{
    global 
$ch;
    
curl_setopt($chCURLOPT_COOKIEJARstr_replace('\\','/',dirname(__FILE__)).'/fb_cookies.txt');
    
curl_setopt($chCURLOPT_COOKIEFILEstr_replace('\\','/',dirname(__FILE__)).'/fb_cookies.txt');
    
curl_setopt($chCURLOPT_REFERER'http://www.facebook.com/');
    
curl_setopt($chCURLOPT_URL'https://login.facebook.com/login.php?login_attempt=1');
    
curl_setopt($chCURLOPT_POSTFIELDS,'persistent=1&charset_test=%E2%82%AC%2C%C2%B4%2C%E2%82%AC%2C%C2%B4%2C%E6%B0%B4%2C%D0%94%2C%D0%84&locale=en_US&email='.urlencode($user).'&pass='.urlencode($pass).'&pass_placeholder=&charset_test=%E2%82%AC%2C%C2%B4%2C%E2%82%AC%2C%C2%B4%2C%E6%B0%B4%2C%D0%94%2C%D0%84');
    
curl_setopt($chCURLOPT_POST1);
    
curl_exec($ch);
}



$ch curl_init();
curl_setopt($chCURLOPT_USERAGENT"Mozilla/5.0 (Windows; U; Windows NT 6.1; tr; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8");
curl_setopt($chCURLOPT_HEADER0);
curl_setopt($chCURLOPT_SSL_VERIFYPEERfalse);
curl_setopt($chCURLOPT_RETURNTRANSFER1);
curl_setopt($chCURLOPT_FOLLOWLOCATION1); 
curl_setopt($chCURLOPT_SSL_VERIFYHOST0); 
    

    
$abartma=0;

function 
faceduzeltcache($videoid)
{
    global 
$ch,$mailim,$sifrem,$abartma;
    
    
curl_setopt($chCURLOPT_COOKIEJARstr_replace('\\','/',dirname(__FILE__)).'/fb_cookies.txt');
    
curl_setopt($chCURLOPT_COOKIEFILEstr_replace('\\','/',dirname(__FILE__)).'/fb_cookies.txt');
    
curl_setopt($chCURLOPT_URL"http://www.facebook.com/ajax/flash/expand_inline.php?target_div=u879823_18&__a=1&v=$videoid");
    
$al curl_exec($ch);
    
$al stripslashes($al);
    
    
// Privacy Check Failed
    
if(stristr($al,"Privacy Check Failed"))
    {
        
// echo "gizli video";
        
if($abartma<3)
        {
            
zuckerimberk($mailim,$sifrem);
            return 
faceduzeltcache($videoid);
            
$abartma++;
        }
        else
        {
            break;
        }
    }

    
$exp=explode("\"video_src\", \"",$al);
    
$exp=explode("\");",$exp[1]);
    
$son=$exp[0];
    
$json '{"url": "'.$son.'"}';
    
$json json_decode($json);
    
$jsonurldecode($json->{'url'});

    return 
$json;
}




function 
faceduzelt2cache($urele,$zamanaraligi)
{

    
$explode=explode("/",$urele);
    
$say=count($explode);
    
$son=$explode[$say-1];
    
$explode2=explode("_",$son);
    
$videoaydi=$explode2[0];
    
    
// cache kısımları //
    
$kueri mysql_query("select * from cache where videoid = '".$videoaydi."' order by id desc limit 1");
    
$cachevarmi=mysql_num_rows($kueri);
    if(
$cachevarmi)
    {
        
$alsana=mysql_fetch_assoc($kueri);
        
$expire=$alsana["expire"];
        
        if(
time() >= $expire)
        {
            
$sonanlikveri=faceduzeltcache($videoaydi);
            
$expiresuresi=time()+$zamanaraligi;
            
mysql_query("update cache set expire='".$expiresuresi."', cache = '".$sonanlikveri."' where id ='".$alsana["id"]."' ");
            return 
urlencode($sonanlikveri);
        }
        else
        {
            return 
urlencode($alsana["cache"]);
        }
    
    }
    else
    {
        
$sonanlikveri=faceduzeltcache($videoaydi);
        
$expiresuresi=time()+$zamanaraligi;
        
mysql_query("insert into cache (expire,cache,videoid) values ('".$expiresuresi."','".$sonanlikveri."','".$videoaydi."') ") or die(mysql_error());
        return 
urlencode($sonanlikveri);
    }
}



//videonun çalışan halini bu şekilde alıyoruz, sondaki 3600 rakamı cache süresi, yani 3600 saniye (1 saat), degiştirebilirsiniz.

echo faceduzelt2cache("http://cfs-ak-snc6.facebook.com/79079/657/434431932890_37287.mp4",3600); 

============ BİRDEN FAZLA ACCOUNT KULLANANLAR ============

tüm accountları birbirleriyle arkadaş yapın ve php ye herhangibirini girin

============ BİRDEN FAZLA ACCOUNT KULLANANLAR ============

fikir için googleteam'e, webloader'a ve fikrini paylaşan herkese teşekkürler
ReaL, webmasterdestek, extraman ve 3 kişi yazınızı beğenmiş.
__________________

Konu fatal tarafından (13-02-2011 Saat 00:34:26 ) değiştirilmiştir..
Alıntı ile Cevapla
  2  
Alt 12-02-2011, 06:08:38
Eposta Aktivasyonu Gerekmekte
 
Standart

ellerine sağlık, gece gecede yorduk seni varmı bi isteğin sıkıntın
Bu mesajınızı beğenenler: weStarz
Alıntı ile Cevapla
  3  
Alt 12-02-2011, 06:09:22
 
Standart

adamın kralı
Alıntı ile Cevapla
  4  
Alt 12-02-2011, 06:19:19
 
Standart

çok güzel teşekkürler birde wordpress için nasıl yapıldını biri anlatırsa daha güzel olacak 1 sitede düzeldi wordpressleri halledemedim
__________________
film siteleriniz alınır
Alıntı ile Cevapla
  5  
Alt 12-02-2011, 06:44:08
mathematician
 
Standart

cache olayını yazdım ilk mesajıma, kolay gelsin.
__________________
Alıntı ile Cevapla
  6  
Alt 12-02-2011, 07:01:44
 
Standart

lugesofta uyarlanması nasıl olur bunun lugesoftta temp olayı var ftpdeki dosyayı değişirip atsak bile değişiklik olmuyor admin panelinden yapıyoruz herseyi

Konu googleteam tarafından (12-02-2011 Saat 07:26:17 ) değiştirilmiştir..
Alıntı ile Cevapla
  7  
Alt 12-02-2011, 07:04:19
 
Standart

Hocam sizi seviyorum
Alıntı ile Cevapla
  8  
Alt 12-02-2011, 08:03:42
 
Standart

Cok guzel bi anlatim yapmissin cok tesekkurler oncelikle.Bende su an bu sekilde oynatiyorum.Her turlu yolu denedim ama hep face degistirdi ama simdilik asagidaki verdigim IP li uzanti ile bir sorun cikmadi.Eger buda bi yerde bozulursa anlattigin sisteme gecis yapacagim tekrar tesekkurler.

Bu sekildede calisiyor videolar ;

http://66.220.151.21/79835/192/1828624161194_24686.mp4
Alıntı ile Cevapla
  9  
Alt 12-02-2011, 08:21:25
 
Standart

Bunu asp olarak verebilecek olan var mı acaba ?
Alıntı ile Cevapla
  10  
Alt 12-02-2011, 08:51:38
 
Standart

Alıntı:
googleteam Nickli Üyeden Alıntı Mesajı göster
lugesofta uyarlanması nasıl olur bunun lugesoftta temp olayı var ftpdeki dosyayı değişirip atsak bile değişiklik olmuyor admin panelinden yapıyoruz herseyi
Lugesft için...? : )
Bu arada emeğinize sağlık hocam (fatal), ALLAH razı olsun...
Alıntı ile Cevapla
Cevapla


Bookmarks

Seçenekler

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Açık



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 19:40:44.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.

“İnsanların en hayırlısı, insanlara faydalı olandır”. H.Ş

Hosting by Radore Hosting

İçerik sağlayacı paylaşım sitelerinden biri olan R10.net WebMaster Forum Adresimizde 5651 Sayılı Kanun’un 8. Maddesine ve T.C.K’nın 125. Maddesine göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur. R10.net hakkında yapılacak tüm hukuksal Şikayetler adresi ile iletişime geçilmesi halinde ilgili kanunlar ve yönetmelikler çerçevesinde en geç 1 (Bir) Hafta içerisinde R10.net yönetimi olarak tarafımızdan gereken işlemler yapılacak ve Avukatlarımız size dönüş yapacaktır.
ARGUS_OK

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252