在Picasa(gdata)PHP中获取上次创建的相册的ID

时间:2011-07-07 22:05:58

标签: gdata-api gdata picasa

我试图在新创建的相册上插入照片。但我无法找到如何获得最后生成的专辑ID的方法。

$entry = new Zend_Gdata_Photos_AlbumEntry();
$entry->setTitle($gp->newTitle("Test album"));
$entry->setSummary($gp->newSummary("This is an album."));

$createdEntry = $gp->insertAlbumEntry($entry);

来自gdata的例子:

$username = "default";
$filename = "C:/xampp/htdocs/test.jpg";
$photoName = "My Test Photo";
$albumId = "5626728515640093041";
:
:

// We use the AlbumQuery class to generate the URL for the album
$albumQuery = $gp->newAlbumQuery();

$albumQuery->setUser($username);
$albumQuery->setAlbumId($albumId);

$insertedEntry = $gp->insertPhotoEntry($photoEntry, $albumQuery->getQueryUrl()); 

如果不手动输入相册,我如何知道最后插入的相册?

非常感谢!

2 个答案:

答案 0 :(得分:0)

查看http://code.google.com/intl/zh-TW/apis/picasaweb/docs/2.0/developers_guide_protocol.html#AddAlbums

  

Picasa网络相册使用您发送的数据创建新相册,然后以“条目”元素的形式返回HTTP 201状态代码以及新相册的副本。返回的条目类似于您发送的条目,但返回的条目包含服务器添加的各种元素,例如“id”元素。

因此,您可以通过解析返回的条目来获取albumID。

答案 1 :(得分:0)

/* Use the AlbumQuery class to generate the URL for the album */

$albumQuery = $gp->newAlbumQuery();
$albumQuery->setUser($user);
$albumQuery->setAlbumName($albumName);

/* Insert the photo, and the server returns the entry representing the photo after it is uploaded */

$insertedEntry = $gp->insertPhotoEntry($photoEntry, $albumQuery->getQueryUrl());
$pialbum = $insertedEntry->getGphotoAlbumId()->getText();
$pifoto =  $insertedEntry->getGphotoId()->getText();