从Dropbox目录中拉取并显示网站库中的图像

时间:2013-03-07 22:02:03

标签: php jquery dropbox

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

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

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

4 个答案:

答案 0 :(得分:3)

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

您是否需要了解Dropbox的工作原理?用两个词来说:它与Dropbox的服务器同步一个本地目录(比如摄影师计算机上的“C:/ Dropbox / gallery /”)。之后,安装并使用摄影师帐户登录的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

答案 1 :(得分: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>';
}

答案 2 :(得分:2)

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

答案 3 :(得分:1)

您还可以尝试使用dropbox chooser拉取图像。

迈克尔