Autor Zpráva
Fisak
Profil
Dobrý den, od doby co google vydal svojí api v3 si s ní nevím rady. Konkrétně feedování pomocí php a jsonu z youtube. Měl jsem naprogramovanou aplikaci ale bohužel na v2 což teď už nefunguje. Našel by se tu člověk který s tímto má zkušenosti?

starý kód:
<?php
 
if(isset($_POST["obnovit"]))
{
 
$result = DB::query("SELECT * FROM [youtube_channel]")->fetchAll();
foreach ($result as $n => $row) {
 
//rss reader &start-index=51
$api_v2 = "http://gdata.youtube.com/feeds/api/users/".$row->yt_url."/uploads?max-results=50&v=2&start-index=1";
foreach (json_decode(file_get_contents("$api_v2&alt=json"))->feed->entry as $entry) {
 
$src = str_replace(array('http://www.youtube.com/v/', '?version=3&f=user_uploads&app=youtube_gdata'), '', $entry->content->src);
 
 
$arr = array(
    'url' => $src,
    'channel'  => $row->name,
    'channel_url'  => friendly_url($row->name),
    'name'  => $entry->{'media$group'}->{'media$title'}->{'$t'},
    'description'  => $entry->{'media$group'}->{'media$description'}->{'$t'},
    'views'  => $entry->{'yt$statistics'}->{'viewCount'},
    'date'  => $entry->{'media$group'}->{'yt$uploaded'}->{'$t'},
    'likes'  => $entry->{'yt$rating'}->{'numLikes'},
    'dislikes'  => $entry->{'yt$rating'}->{'numDislikes'},
    'priority'  => $row->priority,
);
 
DB::query("INSERT IGNORE INTO [youtube_videos]", $arr);
 
}
 
} 
 
}

zkoušel jsem i jQuery podle návodu ale bez výsledku:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script>
<script>
var channelName = 'nejaky_channel';

$(document).ready(function(){
   $.get(
        "https://www.googleapis.com/youtube/v3/channels",{
           part: 'contentDetails',
           forUsername: channelName,
           key: 'xxx'},  //zakryto pro bezpečnost
           function(data){
              $.each(data.items, function(i, item) {
                  console.log(item);
                  pid = item.contentDetails.relatedPlaylists.uploads;
                  getVids(pid);
              })
           
           }
        
        
        }
   
   
   );

   function getVids(pid) {
   $.get(
        "https://www.googleapis.com/youtube/v3/playlistItems",{
           part: 'snippet',
           maxResults: 10,
           playlistId: pid,
           key: 'xxxx'}, //zakryto pro bezpečnost
           function(data){
              var output;
              $.each(data.items, function(i, item) {
                  console.log(item);
                  videTitle = item.snippet.tittle;
                  
                  output = '<li>'+videTitle+'</li>';
                  
                  $('#results').append(output);
              })
           
           }
        
        
        }
   
   
   );
   }
});

</script>

<ul id="results"></ul>

Prosím o radu od zkušených co již tento problém také řešili. Předem děkuji za všechny odpovědi.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: