ОсновноеRadiotalkПользовательское
Программирование
6   •   Посмотреть все темы

Вывод информации с last fm

 

5421
Глеб @Глебон
Уже как то Render мне пытался помочь, но в его коде я не смог разобраться 😀
Есть такой код:
<link rel="stylesheet" type="text/css" href="template/styles.css">
<script type="text/javascript" src="template/ajax.js"></script>
<script type="text/javascript">
<!--
function call_lastfm(artist){
var file = 'http://ws.audioscrobbler.com/2.0/';
var artist_info = new Array();
artist_info = new sack();
artist_info.requestFile = file;
artist_info.setVar('method', 'artist.getinfo');
artist_info.setVar('api_key', 'b25b959554ed76058ac220b7b2e0a026');
artist_info.setVar('artist', artist);
artist_info.onCompletion = function(){
document.getElementById('artist_info').innerHTML = "<span class=\"imagefloatright\"><img src=\"" + artist_info.responseXML.getElementsByTagName('image')[2].textContent + "\" /></span>" + artist_info.responseXML.getElementsByTagName('summary')[0].textContent;

}
artist_info.runAJAX();
}
//-->
</script>

<form onsubmit="call_lastfm(this.artist.value); return false;">
<input type=text name=artist>
<input type=submit>
</form>
<div id="artist_info"></div>

Суть его в том, что в поле выводится название Артиста, а на выходе его фото (обложка альбома) и биография.
Помогите сделать след. образом. У меня в файлике php есть переменная "Имя артиста" и мне нужно автоматически получать обложку с last fm без нажатия кнопочек.

228
zabawa @zabawa
Поддерживаю, тоже хотелось бы замутить такое)

7094
Dim @Render
На сайте радивы dnb fm можно подсмотреть.

Сама функция js и её вызов каждые 15 сек:

function call_lastfm() {
var artist;

$.ajax({
url: 'st/a.txt',type: 'GET', cache: false,
success: function(artist){
$.ajax({url: 'http://ws.audioscrobbler.com/2.0/', type: 'GET', cache: false,
data: {method: 'artist.getInfo',api_key: '2b9971a07a870bcda8c61f5c5b657211',artist: artist},
success: function(images) {
$(images).find('artist').first().each(function(){
var $artist = $(this);
$('#artist_info').empty();
if($artist.find('image[size="extralarge"]').first().text()) {
var html = '<span class="imagefloatright">';
html += '<img align="center" src="'+ $artist.find('image[size="extralarge"]').first().text() +'" alt=""></span>';
$('#artist_info').html(html);}
}});}});}
setInterval('call_lastfm()',15000+Math.floor(Math.random()*15000));

st/a.txt - путь к файлику, откуда выводится имя артиста. к примеру aritst.php
api_key - собственно у вас будет свой.

Ну и в шаблоне сайта где-то:
<div id="artist_info">Фото артиста...</div>

+ при onload или document.ready страницы тоже вызов:

call_lastfm();

Отредактировано Render - 02.10.2014
20090
Dimitry @Dimitry
api_key сложно получить ? И крепится ли он к домену?

7094
Dim @Render
Не сложно, крепится к домену и уже вроде аккаунту на last fm.

20090
Dimitry @Dimitry
Сделал небольшое решение, потестим 😀

https://vmeste.eu/forum?pid=317455#p317455