0

我目前正在使用一个php应用程序将图像上传到Google云存储平台,然而,与我的本地服务器不同,我在确定如何完成这项工作时遇到了很大的麻烦。如何将图像从PHP表单上传到Google云端存储?

这正是我想要做的事:

  1. 写图片的路径,以我的谷歌云SQL
  2. 图像其实上传到谷歌云存储平台
  3. 编写一个脚本调用图像,从保存的SQL路径,然后张贴到我的网站

任何人都可以指向正确的方向吗?

谢谢!

+0

本地开发和生产dev是不是相同的环境(gae 1.9.0)。我认为你已经阅读了这个:https://developers.google.com/appengine/docs/php/googlestorage/ – dennis

+0

我有,但似乎我试图做的是略微超出了他们基本解释的范围。我想知道这个网站上的其他人是否在尝试或试图做类似的事情? – user3213028

+0

我不清楚你想要做什么,这不是在dennis @ linked页面上解释的。 –

回答

0

事情是这样的工作对我来说与GAE的形式 - 通过PHP从表单上传照片添加到Google云存储给您的文件夹的权限设置...

// get image from Form 
$gs_name = $_FILES["uploaded_files"]["tmp_name"]; 
$fileType = $_FILES["uploaded_files"]["type"]; 
$fileSize = $_FILES["uploaded_files"]["size"]; 
$fileErrorMsg = $_FILES["uploaded_files"]["error"]; 
$fileExt = pathinfo($_FILES['uploaded_files']['name'], PATHINFO_EXTENSION); 

// change name if you want 
$fileName = 'foo.jpg'; 

// put to cloud storage 
$image = file_get_contents($gs_name); 
$options = [ "gs" => [ "Content-Type" => "image/jpeg"]]; 
$ctx = stream_context_create($options); 
file_put_contents("gs://<bucketname>/".$fileName, $gs_name, 0, $ctx); 

// or move 
$moveResult = move_uploaded_file($gs_name, 'gs://<bucketname>/'.$fileName); 

脚本调用图像显示在您的网站上是典型的mysqli或pdo方法来获取文件名,并且您可以显示图像...

<img src="https://storage.googleapis.com/<bucketname>/<filename>"/> 
+0

非常好,我的朋友。你是一位圣人。奖励! – user3213028

+0

@Gerry Pesavento上传图片后,如何动态更名图片?如何在GCS中查找图像并更改名称并将其保存在数据库中?因为如果我有20张图片怎么知道哪一个肩膀被重新命名? – 2014-05-21 15:37:36

+0

为什么从桶中检索图像的速度非常慢?以及如何改善? –

相关问题