2012-09-09 130 views
1

如何将图像文件上传到带有用于CodeIgniter的Jimscode PHP Dropbox组件的Dropbox?它使用add()方法上传文件。它成功地将所有其他文件类型(例如pdf)上传到Dropbox。但是,当我上传图像文件时,它会将空文件上传到Dropbox。这是0字节,无法在Dropbox中预览该图像。我的代码:在Dropbox中使用Dropbox api在php中上传图像文件

public function add($dbpath, $filepath, array $params = array(), $root=self::DEFAULT_ROOT) 
    { 
     $dbpath = str_replace(' ', '%20', $dbpath); 
     $filename = rawurlencode($filepath); 
     $parstr = empty($params) ? '' : '&'.http_build_query($params); 
     $uri = "/files_put/{$root}/{$dbpath}?file={$filename}{$parstr}"; 
     //$uri = reduce_double_slashes("/files/{$root}/{$dbpath}?file={$filename}{$parstr}"); 
     $specialhost = 'api-content.dropbox.com'; 
     return $this->_post_request($uri, array('file'=>'@'.$filepath), $specialhost); 
    } 

有没有一种API方法可以直接使用curl和PHP?

回答

0

我不确定你使用的是什么版本,但reduce_double_slashes行没有正常注释掉。这不会导致一些文件类型上传,而不是其他文件类型。是单张图片失败还是无法上传每张图片?

您也可以将库中的DEBUG常量设置为true,并将调试信息写入错误日志中。这可能会帮助您找出问题发生的位置。