Search for question
Question

A Photo Album using Google Cloud Storage

Description

The goal of this project is to develop a photo-album application that uses cloud storage. More specifically, you will use the Google Storage API to create a photo

album, in which you can upload, delete, and browse photographs.

This project must be done individually. No copying is permitted. Note: We will use a system for detecting software plagiarism, called Moss, which is an

automatic system for determining the similarity of programs. That is your program will be compared with the programs of the other students in class as well as

with the programs submitted in previous years. This program will find similarities even if you rename variables, move code, change code structure, etc.

Note that, if you use a Search Engine to find similar programs on the web, we will find these programs too. So don't do it because you will get caught and you will

get an F in the course (this is cheating). Don't look for code to use for your project on the web or from other students (current or past). Don't use ChatGPT or any

other Al program to generate code. Just do your project alone using the help given in this project description and from your instructor and GTA only

Platform

You will develop this project on your PC/laptop using XAMPP and you will test it using your Chrome/Chromium-based web browser. Download projectó.zip

and unzip it inside your web server document root directory.

Documentation

You should put your code in one file: album.php.

To use Google Cloud Storage you need a billing account on Google, which you have already created for your Google Maps project. First, go to

https://console.cloud.google.com/ and click on Cloud Storage Create a New Project under the name cse5335. Push Create next to the Buckets and name

your bucket cse5335_xyz1234 where xyz1234 is your NetID (use the defaults and click on Public access will be prevented).

Next, install gcloud on your PC by following the directions in https:/cloud.google.com/dk/docs/install (go to the tab labeled with your OS, such as

Windows). Then execute:

gcloud auth application-default login

(see here. This will popup a browser window to login to your Google account. This command will create the file:

Linux, MacOS HCM/.config/ocloud/application default credentials.

Windows SAPPDATA

(see bere . Copy this file inside projecté. Give it permission to read on Linux/Mac

Finally, modify album.php by changing the mavid and the location of the keyFilePath (f different)

You can test your setup on your web browser by using the URL address http:/localhost/proiectd/album.ahe. Look at the code in album.php.

Note that you can run PHP on your terminal. The PHP interpreter is located inside the XAMPP installation directory (eg, on Windows, it's at C:\Xamppiphp). You

can just run php album.php in your terminal

Documentation

• Google Cloud Storage for PHP(don't install it-it's already installed)

• Google Cloud PHP Clients

Project Requirements

You will develop a photo-album application on Google Cloud Storage. Your task is to modify your album.php script in your projects directory to support the

following operations:

Provide a form to upload a new image la local "jog file from your PC) on your Google images folder. Look at the class slides (page 34) for a PHP example that

handles file uploads (http POST call album.php?userfile-file.jpg

• A display window that lists the names of the images in your cloud photo directory. For each image name you must have a link that, when you click it, it

downloads and displays the image in the image section (http call album.php?display=file.jpg). Each image name also has a button to delete this image

from Google storage (http call album.php?delete-file.jpg).

An image section that displays the current image. A photo must be downloaded inside the projects/tmp directory before it's displayed. Initially, this image

can be empty.

What to Submit

Submit your zipped project directory.

Fig: 1