last.fm API 分页

发布于 2024-10-15 14:51:22 字数 493 浏览 5 评论 0原文

我正在创建一个last.fm/ google 地图混搭,为您搜索的任何城市绘制演出地图标记。

last.fm API 响应如下:

<events location="New York" page="1" totalpages="105" total="1050">
<event>
  <id>640418</id>
  <title>Nikka Costa</title>
  <artists> etc.

例如,目前您可以搜索爱丁堡 - 它将带回即将推出的前 10 场演出。我使用 PHP 和简单的 XML 来返回结果。

我想添加分页 - 所以前 10 场演出将是第 1 页;我想要一个其他页面的列表,以便用户可以期待以后的演出。

对于 mysql/php 分页,有很多有用的资源,但对于动态 PHP/XML 和 API 却没有那么多。解决这个问题的最佳方法是什么?

I'm creating a last.fm/ google maps mashup, plotting gig map markers for whatever city you search for.

A last.fm API response is like this:

<events location="New York" page="1" totalpages="105" total="1050">
<event>
  <id>640418</id>
  <title>Nikka Costa</title>
  <artists> etc.

Currently, you can search for Edinburgh, for example - and it will bring back the first 10 gigs coming soon. I'm using PHP and simple XML to return the results.

I want to add pagination - so first 10 gigs would be page 1; I would like to have a list of other pages so that users can look forward for later gigs.

There are many useful resources out there for mysql/php pagination but not so much for dynamic PHP/XML and API. What would be the best way to approach this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

人间不值得 2024-10-22 14:51:22

last.fm API 允许使用参数,包括页码。因此,您可以像这样构造您的请求:

http ://ws.audioscrobbler.com/2.0/?method=geo.getevents&location=new+york&api_key=api key&page=2

您可以传递页码在 PHP 代码中使用 $_GET 并相应地更新请求 URL。

$page = 1;
if (isset($_GET['lfm_pageid'])) {
    $page = $_GET['lfm_pageid'];
}

$lfm_events = new SimpleXMLElement("http://ws.audioscrobbler.com/2.0/?method=geo.getevents&location=new+york&api_key=b25b959554ed76058ac220b7b2e0a026&page=$page", NULL, TRUE);

foreach ($lfm_events->events->event as $event) {
    echo $event->title . '<br />';
}

这显然是一个非常基本的示例,没有对 GET 参数等进行任何类型的错误处理,请勿在生产中使用它。

The last.fm API allows for parameters, including page number. So you would structure your request something like this:

http://ws.audioscrobbler.com/2.0/?method=geo.getevents&location=new+york&api_key=api key&page=2

You could pass the page number using $_GET in your PHP code and update the request URL accordingly.

$page = 1;
if (isset($_GET['lfm_pageid'])) {
    $page = $_GET['lfm_pageid'];
}

$lfm_events = new SimpleXMLElement("http://ws.audioscrobbler.com/2.0/?method=geo.getevents&location=new+york&api_key=b25b959554ed76058ac220b7b2e0a026&page=$page", NULL, TRUE);

foreach ($lfm_events->events->event as $event) {
    echo $event->title . '<br />';
}

This is obviously a VERY basic example without any kind of error handling for GET parameters etc, don't use it in production.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文