4

我正在与一位摄影师客户合作创建一个简单的网站,我希望建立一个从 Dropbox 文件夹中提取的照片库,所以每当她想更新画廊中的图像时,她只需要将照片从 Dropbox 文件夹中换出。很简单,对吧?

有没有办法使用 jQuery 或 PHP 从 Dropbox 目录中提取图像并将它们显示到网页上?我已经成功地从 Dropbox 上的文本文件中提取了文本,但我不知道目录中的图像是否可以这样做。

我做了一些谷歌搜索,但我一直得到教我如何上传和下载图片到 Dropbox 目录的结果——这不是我想要的。

4

4 回答 4

3

这真的很简单。这是来自http://davidwalsh.name/generate-photo-gallery的片段。 点击此链接,您将找到解决问题的简单方法(包括演示)。

/** settings **/
$images_dir = '<path-to-your-dropbox>';
$thumbs_dir = '<path-to-your-generated thumbnails>';
$thumbs_width = 200;
$images_per_row = 3;

/** generate photo gallery **/
$image_files = get_files($images_dir);
if(count($image_files)) {
  $index = 0;
  foreach($image_files as $index=>$file) {
    $index++;
    $thumbnail_image = $thumbs_dir.$file;
    if(!file_exists($thumbnail_image)) {
      $extension = get_file_extension($thumbnail_image);
      if($extension) {
        make_thumb($images_dir.$file,$thumbnail_image,$thumbs_width);
      }
    }
    echo '<a href="',$images_dir.$file,'" class="photo-link smoothbox" rel="gallery"><img src="',$thumbnail_image,'" /></a>';
    if($index % $images_per_row == 0) { echo '<div class="clear"></div>'; }
  }
  echo '<div class="clear"></div>';
}
else {
  echo '<p>There are no images in this gallery.</p>';
}
于 2013-03-07T22:46:15.867 回答
3

不久前我做过类似的事情。所以,是的,这是可能的。您可以搜索“没有数据库的 php 库”。您只需指定 Dropbox 图像目录的路径并使其可通过网络访问。

您需要了解 Dropbox 的工作原理吗?简而言之:它将本地目录(比如摄影师计算机上的“C:/Dropbox/gallery/”)与 Dropbox 的服务器同步。之后,安装并使用摄影师帐户登录的所有其他 Dropbox 实例都将获取“C:/Dropbox/Gallery/”的任何更改并将其应用到他们自己的副本(例如,“/var/www/Dropbox/gallery “例如在网络服务器上)。

因此,首先您需要在 Web 服务器上安装 Dropbox ( https://www.dropbox.com/install?os=lnx )。有问题吗?如果是,则需要另找方法。如果没有,您可以只编写一个简单的函数/类,它将扫描提供的 Web 目录(如 /var/www/Dropbox/gallery)以查找图像并生成图像的 Web 可访问路径。

最简单的例子:

<?php
$images = glob("/var/www/Dropbox/gallery/*.*");
for ($i=0; $i<count($files)-1; $i++)
{
    $img = $images[$i];
    echo '<img src="/'.$img.'" alt="random image" />";
}
?>

另外,您可能对此感兴趣:My PHP DropBox Gallery 1.0 Beta

于 2013-03-07T22:28:02.217 回答
2

我想我为像我这样的初学者找到了一个非常好的解决方案。投递箱相当限制您可以使用它做什么。但是,您可以通过 FTP 客户端同步 FTP 文件夹和子目录。我使用开源的 WINSCP。我让它在后台运行。它会不断扫描 ftp 和 Dropbox 文件夹以进行同步。如果文件从一个文件夹中消失,它也会从另一个文件夹中消失。因此,您可以使用 Dropbox 来编辑图库中的照片,并使用上面的 javascript 创建一个很棒的灯箱。可能还有其他解决方案,但我发现这非常简单。此外,如果您担心空间问题,您可以简单地检索文件并将其从 Dropbox 中删除。我知道这是一年前发布的,但我一整天都在试图弄乱 Dropbox 核心 api,不幸的是它在我头上。

于 2014-11-14T05:37:03.687 回答
1

您也可以尝试使用Dropbox 选择器拉取图像。

迈克尔

于 2013-09-08T05:22:25.320 回答