Professional Documents
Culture Documents
Online Music Gallery System (OMGS)
Online Music Gallery System (OMGS)
SUBHADEEP GHOSH
CONTENTS
REGISTRATION NO
2016/12/040/PW
2016/12/030/GN
2016/12/045/PW
2016/12/043/PW
Project Report
of
Online Music Gallery System
(songs_india.in)
1. Online Users: Online users can browse music gallery based on their interest. OMGS provides users
detailed information about a music album, for example singers name, artist, lyrics etc. User can play or
download music online.
2. Administrative Users: Administrator of this website can maintain online music gallery website using
a control panel. Control Panel provides ability to add, update music albums. Only valid users can access
control panel of website. Administrative user has ability to add more users and provide them appropriate
roles to access this website.
Project Category:
The project would be built with Object Oriented Programming System (OOPS) using Relational
Database Management System (RDBMS). Care would be taken to fully utilise the OOPS capabilities of the
programming language to make the website decent looking matching with HD themes. The RDBMS back-end
engine would be optimally burdened for necessary searching, sorting and filtering via standard SQL queries.
Responsibility:
Guide:
The major professor will be responsible for supervisory committee duties as well as supervise and
evaluate the work & progress done by the developer on a weekly basis.
Developer:
The developer will be responsible for all the documentation and software development tasks of the
project. The project plan will describe all the tasks to be completed by the developer under the major
professor supervising. Also, the developer will meet the major professor on a weekly basis to report
progress.
Requirement Specification:
1.
2.
3.
4.
5.
6.
Feasibility Study:
Feasibility study is conducted to select the best system that meets performance requirement. The system
required a statement of constraints; the identification of specific system objective and a description of output
define performance etc. The key considerations in feasibility analysis are:
a. Technical Feasibility: This project is feasible on technical remarks also, as the proposed system is
more beneficiary in terms of having a sound proof system with new technical components installed on the
system. The proposed system can run on any machines supporting Windows and Internet services and works on
the best software and hardware that had been used while designing the system so it would be feasible in all
technical terms of feasibility.
b. Economic Feasibility: We classified the costs of OMGS according to the phase in which they occur. As
we know that the system development costs are usually one-time costs that will not recur after the project has
been completed. For calculating the Development costs we evaluated certain cost categories wiz.
ii.
Hardware specification:
iii.
HTML, CSS
PHP
My SQL
Xampp (Apache)
Windows 7
Mozilla Firefox
MS Word 2007
Notepad++
Platform Support:
Windows OS
Linux
Google Chrome Browser
Mozilla Firefox
Internet Explorer
Microsoft Edge
Modules:
Online Music Gallery System has been designed to computerise the following Modules that are performed by
the system:
1. Authorization Module
a.
b.
c.
d.
Password Checking
Change password
Creating new user
User login detail
2. Analysis:
Entity Relationship Diagram:
3. Data Structure:
Database Name: songs_india
Database Tables:
1. admin:
Field Name
e_id
e_name
pass
email
Data Type
Varchar
Varchar
Varchar
varchar
Field Size
50
50
50
50
Field Name
email
name
details
Data Type
varchar
varchar
varchar
Field Size
50
50
100
Field Name
songs_name
movie_name
artist_name
lang
year_of_movie
lyrics_dtls
composer_name
size_dtls
Photo
song
Data Type
varchar
varchar
varchar
varchar
varchar
varchar
varchar
varchar
longblob
longblob
Field Size
50
50
50
50
50
50
50
50
128mb(max)
128mb(max)
Field Name
movie
photo
Data Type
varchar
longblob
Field Size
50
128mb(max)
Field Name
uID
pass
name
address
email
phone
Data Type
varchar
varchar
varchar
varchar
varchar
varchar
Field Size
50
50
50
50
50
11
2. request:
3. songs:
4. upcoming:
5. user:
Screenshot:
Admin Portal:
Index page:
Home page:
Request view:
User portal:
Login Page:
Registration page:
Home page:
Request page:
Coding:
a. User:
index.php:
<html>
<head>
<title> SongsIndia >> Login Panel </title>
<link rel="shortcut icon" href="ico.png">
<link rel="stylesheet" type="text/css" href="style/login.css">
</head>
<body bgcolor=" #f7f1ef ">
<?php
include "design/header.php";
?>
<div style="padding:40px;margin-top:100px;height:100%;">
<br><center><img src="images/login.png"></center>
<br>
<form name="frmLogin" action="user_login.php" method="post">
<div class="div">
<div class="login">
<input type="text" placeholder="Username" id="txtUsername"
name="txtUsername" required>
<input type="password" placeholder="Password" id="txtPassw"
name="txtPassw" required>
<a href="" class="forgot">forgot password?</a>
<input type="submit" value="Sign In"><br>
<a href="registration.php" class="forgot">Not registered yet? Click here!</a>
</div>
<div class="shadow"></div>
</div>
</form>
<br><br><br><br><br><br><br><br><br>
<?php include "design/footer.php";?>
</div>
</body>
</html>
user_login.php:
<?php
$usrname=$_POST["txtUsername"];
$passw=$_POST["txtPassw"];
$servername="localhost";
$username="root";
$password="";
$dbname="songs_india";
// Create Connection
$conn = new mysqli($servername, $username, $password, $dbname);
if($usrname!='' && $passw!='')
{
$sql=("SELECT * FROM user WHERE uID='$usrname' and pass='$passw'");
$result = $conn->query($sql);
if ($result->num_rows > 0)
{
header("location:home.php");
}
else
{
echo"Username and Password Wrong";
}
}
else
{
echo"Enter Username and Password";
}
?>
home.php:
<html>
<head>
<title> SongsIndia >> Download Indian Songs </title>
<link rel="shortcut icon" href="/images/favicon.ico" type="image/ico">
</head>
<body bgcolor=" #f7f1ef ">
<?php
include "design/header.php";
include "design/menu.php";
?>
<div style="padding:40px;margin-top:100px;height:100%;">
<?php
include "body.php";
include "design/footer.php";
?> </div>
</body>
</html>
body.php:
<html>
<head>
</head>
<body bgcolor=" #f7f1ef ">
<center> <?php include "design/container.php";
echo"</center>"; include "design/upcoming.php"; ?>
</body>
</html>
echo"<br>";
include
"design/search.php";
hindi.php (categories):
<html>
<head>
<title> SongsIndia >> Hindi Songs </title>
<link rel="stylesheet" type="text/css" href="style/table.css">
</head>
<body bgcolor=" #f7f1ef ">
<?php
include "design/header.php";
include "design/menu.php";
?>
<div style="padding:40px;margin-top:100px;height:100%;">
<form name="frmBttnSrc" action="" method="post">
<?php include "design/index_button.php"; ?>
</form>
<br><br><br>
<div class="container">
<div class="floatLeft">
<?php
echo '<table class="table-fill">';
echo '<thead><tr> <th class="text-center">Songs List</th> </tr></thead>';
$servername="localhost";
$username="root";
$password="";
$dbname="songs_india";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error)
{
die("Connection failed: " . $conn->connect_error);
}
$sql=("SELECT songs_name FROM songs WHERE lang='Hindi'");
$result = $conn->query($sql);
if ($result->num_rows > 0)
{
// output data of each row
while($row = $result->fetch_assoc())
{
echo '<tbody class="table-hover"> <tr> <td class="text-left"> <img
src="images/ico.png"/> '; ?> <a style="color:black; text-decoration:none;"
href="play.php?id=<?php echo $row["songs_name"]; ?>"> <?php echo $row["songs_name"]; echo"</td> </tr>";
}
}
echo "</tbody></table>";
?>
</div> </div><br><br>
<?php include "design/footer.php"; ?> </div>
</body>
</html>
play.php:
<html>
<head>
<title> Play </title>
</head>
<body bgColor=" #34495e ">
<center><br><br><br><br><br><br><br><br>
<?php
$name = $_GET["id"];
mysql_connect("localhost", "root", "") OR DIE (mysql_error());
mysql_select_db ("songs_india") OR DIE ("Unable to select db".mysql_error());
$msg="";
$sql="SELECT songs FROM songs WHERE songs_name='$name'";
if(mysql_query($sql))
{
$res=mysql_query($sql);
while($row=mysql_fetch_array($res))
{
$sng = $row["songs"];
echo "<h2><center>" .$name ."</center></h2><br><br>";
echo '<audio controls autoplay="autoplay">';
echo '<source src="data:audio/mp3;base64,' .base64_encode($row['songs']).'">';
echo '</audio>';
}
}
else
{
$msg.="Query failed";
}
echo $msg;
?>
<br><br><br><br>
<a href="download.php?id=<?php echo $name;?>"><img src="images/download.png" height="15%"
width="25%"/></a>
</center>
</body>
</html>
upcoming.php:
<html>
<head>
<link rel="stylesheet" type="text/css" href="style/upcoming.css">
<link rel="stylesheet" type="text/css" href="style/up_table.css">
</head>
<body>
<div class="container">
<div class="floatLeft">
<table class="table-fill">
<thead><tr>
<th
class="text-center"><img
src="images/comingsoon.png"
height="60px" width="250px"/></th> </tr></thead>
<tbody class="table-hover"> <tr> <td class="text-left">
<div class="upcoming-pic">
<div id="upcoming"><marquee>
<?php
mysql_connect("localhost", "root", "") OR DIE (mysql_error());
mysql_select_db ("songs_india") OR DIE ("Unable to select
db".mysql_error());
$msg="";
$sql="select photo from upcoming";
if(mysql_query($sql))
{
$res=mysql_query($sql);
while($row=mysql_fetch_array($res))
{
$msg.= '<img src= data:image/jpg;
base64,'.base64_encode($row['photo']). 'style="width:160px;height:130px;" /> ';
}
}
else
{
$msg.="Query failed";
}
echo $msg;
?></marquee>
</div>
</div>
</td></tr></table>
</div>
<div class="floatLeft">
<table class="table-fill">
<thead><tr> <th class="text-center"><font ><font face="Monotype Corsiva"
size="3" color=" #00FFFF">"If music be the food of love, play on, Give me excess of it; that surfeiting,The
appetite may sicken, and so die."<p> -Shakespeare</font></th> </tr></thead>
</table>
</div></div>
</body>
</html>
request.php:
<html>
<head>
<title> SongsIndia >> Request </title>
<link rel="shortcut icon" href="ico.png">
<link rel="stylesheet" type="text/css" href="style/form.css">
</head>
<body bgcolor=" #f7f1ef ">
<?php
include "design/header.php";
include "design/menu.php";
?>
<div style="padding:40px;margin-top:100px;height:100%;">
<br><center><img src="images/request.png"></center>
<form name="userReq" action="request2.php" method="post">
<div class="login">
<input type="text" placeholder="Email" id="txtEmail" name="txtEmail" required>
<input
type="text"
placeholder="Name"
id="txtName"
name="txtName"
required><br><br>
<textarea
placeholder="Describe
here..."
name="txtDetails"></textarea>
<center><input type="submit" value="Request"></center>
</div>
</form>
<?php
include "design/footer.php";
?>
</div>
</body>
</html>
request2.php:
<?php
$email=$_POST["txtEmail"];
$name=$_POST["txtName"];
$details=$_POST["txtDetails"];
//include "db/db_conn.php";
$servername="localhost";
$username="root";
$password="";
$dbname="songs_india";
// Create Connection
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error)
{
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO request (email, name, details)
VALUES ('$email', '$name', '$details')";
if ($conn->query($sql) === TRUE)
{
echo "<br><br><br><br><br><br><center> <B>Request Submitted<B> <br><br> <a
style='color:black; text-decoration:none; float:center' href='request.php'>OK</a></center>";
}
else
{
echo "Error: " . $sql . "<br>" . $conn->error;
}
?>
b. Admin:
index.php:
<html>
<head>
<title> Songs India >> Admin Portal </title>
</head>
<body bgColor="#e8f8f5">
<center>
<strong><I><h2> SongsIndia Company </strong>
<BR><BR><BR><BR><BR><BR><BR><BR>
<a style="color:black; text-decoration:none; float:center" href="adminLogin.php">LogIn</a>
or
<a
style="color:black;
text-decoration:none;
float:center"
href="adminReg.php">Registration</a></h2><I>
</center>
</body>
</html>
adminControl.php:
<html>
<head>
<title> Songs India >> Admin Portal </title>
</head>
<body bgColor="#e8f8f5">
<center>
<strong><I><h2> SongsIndia Company <br><br></h2></I></strong>
<BR><BR><h4>
<a style="color:black; text-decoration:none; float:center" href="s_upload.php">Songs Details
Upload</a> &
<a style="color:black; text-decoration:none; float:center" href="upcoming.php">Upcoming Songs
Details</a> &
<a
style="color:black;
text-decoration:none;
float:center"
href="request.php">Request
View</a></h4>
</center>
</body>
</html>
upload.php:
<?php
mysql_connect("localhost", "root", "") OR DIE (mysql_error());
mysql_select_db ("songs_india") OR DIE ("Unable to select db".mysql_error());
//to upload
if(isset($_POST['btn']))
{
if(isset($_FILES['image']) && ($_FILES['song']))
{
$name=$_POST['txtName'];
$movie=$_POST['txtMovie'];
$artist=$_POST['txtArtist'];
$language=$_POST['txtLanguage'];
$year=$_POST['txtYear'];
$lyrics=$_POST['txtLyrics'];
$composer=$_POST['txtComposer'];
$fp=addslashes(file_get_contents($_FILES['image']['tmp_name'])); //store the image to
fp
$fp1=addslashes(file_get_contents($_FILES['song']['tmp_name'])); //store the song to
fp1
$file_size = $_FILES['song']['size']/1024;
}
$sql = "INSERT INTO songs(songs_name, movie_name, artist_name, lang, year_of_movie,
lyrics_dtls, composer_name, size_dtls, photo, songs)
VALUES('{$name}','{$movie}','{$artist}','{$language}',{$year},'{$lyrics}','{$composer}','{$file_size}','{$fp}','{$
fp1}');";
mysql_query($sql) or die("Error in Query insert: " . mysql_error());
header("location:s_upload.php");
}
else
{
echo "ERROR";
}
?>
text-decoration:none;
float:center'
Bibliography:
Tutorial point
W3School
PHP.NET
Stack overflow
HTML Black Book
www.tutorialpoint.com
www.w3schools.com
www.php.net
www.stackoverflow.com
Steven Holzner
Steven Holzner