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.