You are on page 1of 63

CHAPTER-1

1.1 Project Description


Golden Waves is a highly rated, professional digital audio editor. It's fully loaded to do everything from the simplest recording and editing to the most sophisticated audio processing, restoration, enhancements, and conversions. It is easy to learn and use, so get started now by downloading the free, fully functional evaluation version! Play all your favorites songs and view real-time visuals. Listen to the audio while fast-forwarding or rewinding. Change the playback speed to hear your music in a whole new way, or to learn a song by ear, or transcribe dictation or a lesson. Golden Waves Inc. is a small, privately owned, Canadian based corporation, located near St. John's, Newfoundland. The company develops affordable, professional quality, digital audio editing software and multi track audio/video mixing software. The software has continued to improve and is considered one of the best available today. Golden Waves is a digital music distribution service for independent artists & labels. HTML music player which you can embed in Face book, my space and any other website. Any artist can distribute their music through Golden Waves. These days you don't need to be signed to a record label to sell your music worldwide. With Golden Waves anyone can make their music available to the world to stream and download. Golden Waves allows each artist to create their own customizable website, which allow to: Customized your web address using their name (e.g. my-name. Golden Waves.com), mailing list; offer a free download in exchange for an email address Direct your music industry contacts to this page and create logins for them so they can access selected content.

1.2 Golden Waves Distribution


Golden Waves is powered by Believe Digital, one of the largest digital distributors in the world, with more than 150 digital number one releases in the past 5 years. We offer the
1

largest guaranteed network of music stores on the market. We do it ourselves, we build our own technology and all our deals are direct.
I.

Our market share allows us to obtain the highest rates from the stores and distribution services and because we deal directly with the stores, there are no deductions from your royalties either.

II.

We store your music ourselves and our in-house technical team ensures that we can distribute your music faster and more reliably. We distribute to all key global digital music stores and cover the major online and mobile stores in each key territory.

III.

1.3 Creating an album


It's a very simple automated system. Once you log in to the backstage area click on either 'Create a Single' or 'Create an Album'. Then just follow the instructions at each stage. It is very important that this is entered correctly as you will not be able to change it once your release has been sent to stores (release title, Artist name, genre etc) At the second stage, you must set the digital release date, price and choose . Now upload your artwork making sure they are the right size and file format. Some steps are to creating the albums:
a. Album production year: This is the year that the album was produced and

recorded.
b. UPC code: This is the barcode for your release, which helps track your sales. If

you don't have a UPC code, leave the field empty and we will create one for you for free.

CHAPTER-2
PLATFORM DESCRIPTION 2.1 SRS Document:
System Analysis is the detailed study of the various operations performed by the system and their relationships within and outside the system. Analysis is the process of breaking something into its parts so that the whole may be understood. System analysis is concerned with becoming aware of the problem, identifying the relevant and most decisional variables, analyzing and synthesizing the various factors and determining an optional or at least a satisfactory solution. During this a problem is identified, alternate system solutions are studied and recommendations are made about committing the resources used to the system. 2.1.1 PHP: PHP is an intuitive, server side scripting language. Like any other scripting language it allows developers to build logic into the creation of web page content and handle data returned from a web browser. PHP also contains a number of extensions that make it easy to interact with databases, extracting data to be displayed on a web page and storing information entered by a web site visitor back into the database. PHP is a general-purpose scripting language that is especially suited for web development. PHP generally runs on a web server. Any PHP code in a requested file is executed by the PHP runtime, usually to create dynamic web page content. It can also be used for command-line scripting and client-side GUI applications. PHP can be deployed on most web servers, many operating systems and platforms, and can be used with many relational database management systems. It is available free of charge, and the PHP Group provides the complete source code for users to build, customize and extend for their own use. PHP primarily acts as a filter, taking input from a file or stream containing text and/or PHP instructions and outputs another stream of data; most commonly the output will be HTML.
3

2.1.2 HTML: HTML is a markup language. It tells the web browser how to display content. HTML separates "content" (words, images, audio, video, and so on) from "presentation" (the definition of the type of content and the instructions for how that type of content should be displayed). HTML uses a pre-defined set of elements to identify content types. Elements contain one or more "tags" that contain or express content. Tags are surrounded by angle brackets, and the "closing" tag (the one that indicates the end of the content) is prefixed by a forward slash. For example, the paragraph element consists of the start tag "<p>" and the closing tag "</p>". 2.1.3 Java Script: JavaScript is most commonly used as a client side scripting language. This means that JavaScript code is written into an HTML page. When a user requests an HTML page with JavaScript in it, the script is sent to the browser and it's up to the browser to do something with it. The fact that the script is in the HTML page means that your scripts can be seen and copied by whoever views your page. Nonetheless, to my mind this openness is a great advantage, because the flip side is that you can view, study and use any JavaScript you encounter on the WWW. JavaScript can be used in other contexts than a Web browser. Netscape created serverside JavaScript as a CGI-language that can do roughly the same as Perl or ASP. There is no reason why JavaScript couldnt be used to write real, complex programs. However, this site exclusively deals with the use of JavaScript in web browsers. JavaScript is a Scripting Language is a lightweight programming language. JavaScript is programming code that can be inserted into HTML pages. JavaScript inserted into HTML pages, can be executed by all modern web browsers. JavaScript is easy to learn.

2.1.4 XAMPP: XAMPP is a free and open source cross-platform web server solution stack package, consisting mainly of the Apache HTTP Server, MySQL database, and interpreters for scripts written in the PHP and Perl programming languages. XAMPP's name is an acronym for: a. X (to be read as "cross", meaning cross-platform) b. Apache HTTP Server c. MySQL d. PHP e. Perl The program is released under the terms of the GNU General Public License and acts as a free web server capable of serving dynamic pages. XAMPP is available for Microsoft Windows, Linux, Solaris, and Mac OS X, and is mainly used for web development projects. This software is useful while you are creating dynamic webpages using programming languages like PHP, JSP, Servlets.

2.2 DFD:
a. DATA FLOW Data flow represents the inputs (or outputs) of data to (or from) a process (data in motion). Data flows only data, not control. Show essential data process need.

Fig 2.1 DATA FLOW b. DATA STORES


5

Data stores are repository fir data that are temporarily or permanently recorded within the system. It is an inventory of data.

Fig 2.2 DATA STORES

2.2.1 LEVEL 0 OR CONTEXT LEVEL DFD

Administartor

Distribution System

Artist Database

Fig 2.3 Level 0 DFD OF Distributed system

2.2.2 LEVEL 1 OR ADMIN


6

Admin

Login

Database

View/Upload

Fig 2.4 Level 1 DFD: ADMIN

2.2.3 LEVEL 2 OR POST VIDEO


7

View albums Login Data

Login

Artist

Database

Post albums/view video

Fig 2.5 Level 2 DFD: Post Video

2.2.4 WORK FLOW FOR MODULES

Home Existing Artist New Artist Administrator Login Administrator Upload video Distribution Register

All Information View Video

Fig 2.6 Level 3 DFD

CHAPTER-3
9

3.1 DATABASE:
3.1.1 Introduction to MySQL The conceptual architecture shows the information about what the system does and how this is broken into interacting parts. The MySQL RDBMS is a very popular database system that is being used all over the world for its performance, simplicity and robustness. (It should be noted that this document attempts to obtain the conceptual architecture of MySQL 4.0, which incorporates transaction and recovery functionality.)This report is organized into the following sections. MySql is the General RDBMS Architecture that provides a high-level overview of the architecture of a RDBMS. This section provides the details of the high-level layered architecture of an RDBMS pertaining specifically to MySQL. Within each layer, we go deeper into the sub layerthat characterize the interactions in the MySQL RDBMS system. Finally, we drill a level deeper and provide diagram of the components and interaction between them. These components are described in detail as to their functionality and their relationship with other components in the same layer. This diagram is extracted based from reading documentation and books on MySQL and then mapping them onto the general architecture of an RDBMS found from RDBMS concept books. For each layer, we discuss how the architecture we prescribe is subject to system resolvability. Our conceptual architecture is using the logical view of the 4+1 Architectural Views paper by Phillipe Kruchten. Scenarios are then presented to the reader in section 5.0, which provide a walkthrough of the conceptual architecture to illustrate the interaction between the various components within the layer and communication among layers. Data dictionary section 6.0 provides a glossary of terms used with in this report and their meaning. Finally, references are listed from which the reader can search and explore more information, and from which our research is based on. Extracting the conceptual architecture from a RDBMS such as MySQL is not a trivial task. It involves reading lots of documentation on the system itself as well as external references to the theoretical structure. 3.1.2 The architecture of MYSQL
10

Once the research pertaining to general RDBMS architectures was complete, the specific MySQL documentation could then be examined in order to extract the vendor specific conceptual architecture. The ensuing section begins by describing the detail of the layered architecture from Figure 2 and how the specific MySQL components map onto Figure 1. As mentioned above, however, the core of the functionality is found in the logical layer; the remainder of the section details the key subsystems in this layer. The conceptual architecture of MySQL is illustrated in Figure 3 below. The architecture depicted in Figure 3 is a view of the control flow of the MySQL system. It is an expansion of the simple architecture described in Figure 2. It should be noted that the architecture described is a layered architecture as described by Garlan and Shaw. There exists a pipeline architecture, also described by Garlan and Shaw, represented in the Query Processing layer between the Embedded DML Precompiler and the ExecutionEngine. For sake of simplicity, flow back up the architecture has been left out and should be deemed as implicit. For example, calling a simple SQL command, such as SELECT *, would require information to be brought back up the system. This flow is implied and is not mentioned in the diagram.

11

Fig-3.1 ARCHITECTURE OF MY SQL 3.1.3 Application Layer The MySQL application layer is where the clients and users interact with the MySQL RDBMS. There are three components in this layer as can be seen in the layered MySQL architecture diagram in Figure 3. These components illustrate the different kinds of users that can interact with the MySQL RDBMS, which are the administrators, clients and query users. The administrators use the administrative interface and utilities. In MySQL, some of these utilities are mysql admin which performs tasks like shutting down the server and creating or dropping databases, is am chk and my is am chk which help to perform table analysis and optimization as well as crash recovery if the tables become damaged, and my sql dump for backing up the database or copying databases to another server. Clients communicate to the MySQL RDBMS through the interface or utilities. The client interface uses MySQL APIs for various different programming languages such as the C API, DBI API for Perl, PHP API, Java API, Python API, MySQL C++ API and Tcl. Query users interact with the MySQL RDBMS through a query interface that is mysql. mysql is a monitor (interactive program) that allows the query users to issue SQL statements to the server and view the results. 3.1.4 Logical Layer The MySQL documentation gave an indication as to precisely how these modules could be further broken down into subsystems arranged in a layered hierarchy corresponding to the layered architecture in Garlan and Shaw. The following section details these subsystems and the interactions within them. 3.1.5 Query Processor The vast majority of interactions in the system occur when a user wishes to view or manipulate the underlying data in storage. These queries, which are specified using a data-manipulation language (ie SQL), are parsed and optimized by a query processor. This processor, depicted in Figure 3 above, can be represented as pipeline and filter architecture in the sense of Garlan and Shaw where the result of the previous component
12

becomes an input or requirement to the next component. The component architect ure of the query processor will be explained below. 3.1.6 Embedded DML Precompiler When a request is received from a client in the application layer, it is the responsibility of the embedded DML (Data Manipulation Language) precompiler to extract the relevant SQL statements embedded in the client API commands, or to translate the client commands into the corresponding SQL statements. This is the first step in the actual processing of a client application written in a programming language such as C++ or Perl, before compiling the SQL query. The client request could come from commands executed from an application interface (API), or an application program. This is prevalent in all general RDBMS's. MySQL has this component in order to process the MySQL client application request into the format that MySQL understands. 3.1.7 DDL Compiler Requests to access the MySQL databases received from an administrator are processed by the DDL (Data Definition Language) compiler. The DDL compiler compiles the commands (which are SQL statements) to interact directly with the database. The administrator and administrative utilities do not expose an interface, and hence execute directly to the MySQL server. Therefore, the embedded DML precompiler does not process it, and this explains the need for a DDL compiler. 3.1.8 Query Parser After the relevant SQL query statements are obtained from deciphering the client request or the administrative request, the next step involves parsing the MySQL query. In this stage, the objective of the query parser is to create a parse tree structure based on the query so that it can be easily understood by the other components later in the pipeline. 3.1.9 Query Preprocessor The query parse tree, as obtained from the query parser, is then used by the query preprocessor to check the SQL syntax and check the semantics of the MySQL query to determine if the query is valid. If it is a valid query, then the query progresses down the
13

pipeline. If not, then the query does not proceed and the client is notified of the query processing error. 3.1.10 Security/Integration Manager Once the MySQL query is deemed to be valid, the MySQL server needs to check the access control list for the client. This is the role of the security integration manager which checks to see if the client has access to connecting to that particular MySQL database and whether he/she has table and record privileges. In this case, this prevents malicious users from accessing particular tables and records in the database and causing havoc in the process. 3.1.11 Query Optimizer After determining that the client has the proper permissions to access the specific table in the database, the query is then subjected to optimization. MySQL uses the query optimizer for executing SQL queries as fast as possible. As a result, this is the reason why the performance of MySQL is fast compared to other RDBMS's. The task of the MySQL query optimizer is to analyze the processed query to see if it can take advantage of any optimizations that will allow it to process the query more quickly. MySQL query optimizer uses indexes. Whenever possible and uses the most restrictive index in order to first eliminate as many rows as possible as soon as possible. Queries can be processed more quickly if the most restrictive test can be done first. 3.1.12 Execution Engine Once the MySQL query optimizer has optimized the MySQL query, the query can then be executed against the database. This is performed by the query execution engine, which then proceeds to execute the SQL statements and access the physical layer of the MySQL database from Figure 3. As well the database administrator can execute commands on the database to perform specific tasks such as repair, recovery, copying and backup, which it receives from the DDL compiler. 3.1.13 Scalability/Evolvability

14

The layered architecture of the logical layer of the MySQL RDBMS supports the evolvability of the system. If the underlying pipeline of the query processor changes, the other layers in the RDBMS are not affected. This is because the architecture has minimal sub-component interactions to the layers above and below it, as can be seen from the architecture diagram. The only sub-components in the query processor that interact with other layers is the embedded DML preprocessor, DDL compiler and query parser (which are at the beginning stages of the pipeline) and the execution engine (end of the pipeline). Hence, if the query preprocessor security/integration manager and/or query optimizer is replaced, this does not affect the outcome of the query processor. 3.1.14 Introduction to Database Creation: Probably before using a database, you must first have one. A database is primarily a group of computer files that each has a name and a location. Just as there are different ways to connect to a server, in the same way, there are also different ways to create a database. To create a new database in MYSQL,SQLYOG, in the Object Explorer, you can rightclick the Databases node and click New Database... This would open the New Database dialog box. 3.1.15 Name of Database: Probably the most important requirement of creating a database is to give it a name. The SQL is very flexible when it comes to names. In fact, it is very less restrictive than most other computer languages. Still, there are rules you must follow when naming the objects in your databases: A name can start with either a letter (a-z, A-Z), a digit (0-9), an underscore After the first character (letter, digit, underscore, or symbol), the name can (_) or a non-readable character. Examples are _n, act, %783, Second have combinations of underscores, letters, digits, or symbols. Examples are _n24 or act_52_t A name can include spaces. Example are countries st@ts, government
15

(records), or gl0b# Survey||

Because of the flexibility of MYSQL,SQLYOG it can be difficult to maintain names in a database. Based on this, there are conventions we will use for our objects. In fact, we will adopt the rules used in C/C++ , Java, and php, etc. In our databases: Unless stated otherwise (we will mention the exception, for example with

variables, tables, etc), a name will start with either a letter (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, or Z) or an underscore

After the first character, we will use any combination of letters, digits, or A name will not start with two underscores If the name is a combination of words, at least the second word will start

underscores

in uppercase. Examples are Countries Statistics, Global Survey, _RealSport, Full Name, or DriverLicensNumber After creating an object whose name includes space, whenever you use that object, include its name between [and ]. Examples are [Countries Statistics], [Global Survey], or [Date of Birth]. Even if you had created an object with a name that doesn't include space, when using that name, you can still include it in square brackets. Examples are [UnitedStations], [FullName], [DriversLicenseNumber], and [Country]. 3.1.16 Database Creation With Code: The command used to create a database in SQL uses the following formula: CREATE DATABASE Database Name The CREATE DATABASE (remember that SQL is not case-sensitive) expression is required. The Data base Name factor is the name that the new database will carry. Although SQL is not case-sensitive, you should make it a habit to be aware of the cases you use to name your objects. Every statement in SQL can be terminated with a semicolon. Although this is a requirement in many implementations of SQL, in Microsoft SQL Server, you can omit the semi-colon.

3.2 Technology used


16

3.2.1 XAMPP XAMPP is a free and open source cross-platform web server solution stack package, consisting mainly of the Apache HTTP Server, MySQL database, and interpreters for scripts written in the PHP and Perl programming languages. XAMPP's name is an acronym for: X (to be read as "cross", meaning cross-platform) Apache HTTP Server MySQL PHP Perl The program is released under the terms of the GNU General Public License and acts as a free web server capable of serving dynamic pages. XAMPP is available for Microsoft Windows, Linux, Solaris, and Mac OS X, and is mainly used for web development projects. This software is useful while you are creating dynamic web pages using programming languages like PHP, JSP, Servlets. 3.2.2 Requirements and features XAMPP requires only one zip, tar, 7z, or exe file to be downloaded and run, and little or no configuration of the various components that make up the web server is required. XAMPP is regularly updated to incorporate the latest releases of Apache/MySQL/PHP and Perl. It also comes with a number of other modules including Open SSL and php My Admin. Installing XAMPP takes less time than installing each of its components separately. Selfcontained, multiple instances of XAMPP can exist on a single computer, and any given instance can be copied from one computer to another.It is offered in both a full, standard version and a smaller version.

17

3.2.3 Use Officially, XAMPP's designers intended it for use only as a development tool, to allow website designers and programmers to test their work on their own computers without any access to the Internet. To make this as easy as possible, many important security features are disabled by default. In practice, however, XAMPP is sometimes used to actually serve web pages on the World Wide Web. A special tool is provided to password-protect the most important parts of the package.. Once XAMPP is installed you can treat your localhost like a remote host by connecting using an FTP client. Using a program like FileZilla has many advantages when installing a content management system (CMS) like Joomla. You can also connect to localhost via FTP with your HTML editor. The default FTP user "newuser", the default FTP password is "wampp". The default MySQL user is "root" while there is no default MySQL password

3.2.4 Screenshots I. Xampp Control panel

Fig 3.2 XAMPP CONTROL PANEL II. Xampp Status


18

After starting of Apache (and MySQL), go to the address http://localhost/ or http://127.0.0.1/ in your browser and examine all of the XAMPP examples and tools.

Fig 3.3 XAMPP STATUS III. Xampp Security

With the security console you can set a password for the MySQL user "root" and phpMyAdmin.

Fig 3.4 XAMPP SECURITY

19

3.3 Table Used


3.3.1 Database Structure:

Fig 3.5 Database Structure

20

3.3.2 Distribution:

Fig 3.6 Distribution

3.3.3 User:

Fig 3.7 User 3.3.4 Register1:

21

Fig 3.8 Register1

3.3.5 Register2:

Fig 3.9 Register2 3.3.6 Feedback:


22

Fig 3.10 Feedback

CHAPTER-4
4.1 Coding:
a.) Login <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/php; charset=utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>GoldenWave/login</title> <link href="css/style.css" rel="stylesheet" type="text/css">

23

<!--[if lt IE 9]> <style> primary-menu li span { display:none; background:#ffffff !important; } primary-menu li a:hover ~ span { display:block; } </style> <![endif] <!--[if lt IE 9]> <p class="ie-warning" style="text-align:center; line-height:30px;"> <span style="font-size:20px;">Warning</span><br /> It appears that you are using an out-of-date browser.<br /> To join the rest of the civilized world, please download one of the following browsers:<br /> <a href="http://www.mozilla.org/en-US/firefox/new" target="_blank">Mozilla Firefox</a> | <a href="http://www.google.com/chrome" target="_blank">Google Chrome</a> | <a href="http://www.opera.com/" target="_blank">Opera</a> <![endif]-->
24

<link rel='stylesheet' id='camera-css' href='css/camera.css' type='text/css' media='all'> <style> body { margin: 0; padding: 0; } a{ color: #09f; } a:hover { text-decoration:overline; } .fluid_container { margin: 0 auto; max-width: 1000px; width: 90%; } </style> <script type='text/javascript' src='scripts/jquery.min.js'></script> <script> jQuery(function(){
25

jQuery('#camera_wrap_1').camera({ thumbnails: true }); jQuery('#camera_wrap_2').camera({ height: '400px', loader: 'bar', pagination: false, thumbnails: true });</script> </head> <body> <div id="wrapper"> <div id="header"> <a href="#"><img src="images/logo-img.png" alt="logo" name="logo" border="0" id="logo" /></a> <div class="nav"> <ul> <li><a href="index.php">Home</a></li> <li><a href="about.php">About</a></li> <li><a href="gallery.php">Gallery</a></li> <li class="selected"><a href="contact.php">Contact</a></li>
26

</ul> </div> </div> <div class="clear"> </div> </div> <div id="container"> <p class="about_us">&nbsp;</p ><div id="contact_page"> <p align="left" class="about_us"><strong>login&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;Register here</strong></p> <p class="about_us">&nbsp; </p> <div class="contact_form"> <form action="log.php" method="get" enctype="multipart/form-data" onSubmit="return validate(this)"> <table width="400" border="0"> <tr> <td width="102">Login:</td> <td width="393"> <input name="lname" type="text" class="text_field"> </td> </tr> <tr> </tr> <tr> </tr>
27

<tr> <td>password:</td> <td><input name="lname" type="password" class="text_field"></td> </tr><tr> </tr> <tr> </tr><tr> </tr> <tr> </tr> <tr> </tr><tr> </tr> <tr> </tr><tr> </tr> <tr> </tr><tr> </tr> <tr> </tr><tr> </tr> <tr> </tr><tr> </tr> <tr> </tr></tr><tr> </tr> <tr> </tr><tr> </tr> <tr> </tr></tr><tr> </tr> <tr> </tr><tr> </tr> <tr> </tr> <tr> <td>&nbsp;</td> <td><input name="submit" type="submit" value="connect" class="button"></td> </tr> </table> </form></div> <div align="left"> <table width="400" border="0"> <tr> <td width="114">Artist's Name::</td> <td width="276"> <input name="lname" type="text" class="text_field"> </td> </tr> <tr> </tr> <tr> </tr> <tr> <td>Email address:</td>
28

<td><input name="lname" type="text" class="text_field"></td> </tr><tr> </tr> <tr> </tr><tr> </tr> <tr> </tr> <tr> <td>Password</td> <td><input name="lname" type="password" class="text_field"></td> <td><input name="submit" type="submit" value="Next" class="button"></td> </tr> </table> </form> </div> <div class="clear"> </div> </div> <p> GoldenWaveMusic &copy; 2012</p> <!-- change this div to a nav tag if you're not planning on supporting IE users --> <div class="menu"> <ul class="primary-menu"> <li class="facebook"><a class="social-item" href="#">f</a><span class="social-span">Become a fan on Facebook</span></li> <li class="twitter"><a class="social-item" href="#">t</a><span class="social-span">Follow us on Twitter</span></li> <li class="flickr"><a class="social-item" href="#">c</a><span class="social-span">Add us on Flickr</span></li>
29

<li class="rss"><a class="social-item" href="#">a</a><span class="social-span">Follow our updates through RSS</span></li> <li class="mail"><a class="social-item" href="#">k</a><span class="social-span">Subscribe to our newsletter</span></li> </ul> </div> <div class="clear"> </div> </div> <div class="clear"> </div> </div> </body> </html> b). Register <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/php; charset=utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>GoldenWave/Register</title> <link href="css/style.css" rel="stylesheet" type="text/css"> <link rel="stylesheet" href="./social.css" type="text/css" /> <!--[if lt IE 9]>
30

<style> .primary-menu li span { display:none; background:#ffffff !important; } .primary-menu li a:hover ~ span { display:block; } </style> <![endif]-<!--[if lt IE 9]> <p class="ie-warning" style="text-align:center; line-height:30px;"> <span style="font-size:20px;">Warning</span><br /> It appears that you are using an out-of-date browser.<br /> To join the rest of the civilized world, please download one of the following browsers :<br /> <ahref="http://www.mozilla.org/en-US/firefox/new" target="_blank">Mozilla Firefox</a> | <![endif]--> <link rel='stylesheet' id='camera-css' href='css/camera.css' type='text/css' media='all'> <style> body {
31

margin: 0; padding: 0; } a{ color: #09f; } a:hover { text-decoration:overline; } #back_to_camera { clear: both; display: block; height: 80px; line-height: 40px; padding: 20px; } .fluid_container { margin: 0 auto; max-width: 1000px; width: 90%; }
32

</style> <script type='text/javascript' src='scripts/jquery.min.js'></script> <script type='text/javascript' src='scripts/jquery.mobile.customized.min.js'></script> <script type='text/javascript' src='scripts/jquery.easing.1.3.js'></script> <script type='text/javascript' src='scripts/camera.min.js'></script> <script> jQuery(function(){ jQuery('#camera_wrap_1').camera({ thumbnails: true }); jQuery('#camera_wrap_2').camera({ height: '400px', loader: 'bar', pagination: false, thumbnails: true }); }); </script> </head> <body> <div id="wrapper">
33

<div id="header"> <a href="#"><img src="images/logo-img.png" alt="logo" name="logo"

border="0" id="logo" /></a> <div class="nav"> <ul> <li><a href="index.php">Home</a></li> <li><a href="distribution.php">Distribution</a></li> <li><a href="gallery.php">Royalties</a></li> <li class="selected"><a href="contact.php">Contact</a></li> <div class="clear"></div> </ul> </div> </div> <div class="fluid_container"> <div class="camera_wrap camera_amber_skin" id="camera_wrap_1"> </div> </div> <divdata-thumb="images/slides/thumbs/image-3.jpg"datasrc="images/slides/image-3.jpg"> </div> <divdata-thumb="images/slides/thumbs/image-4.jpg"datasrc="images/slides/image-4.jpg">
34

</div> <divdata-thumb="images/slides/thumbs/image-1.jpg"datasrc="images/slides/image-1.jpg"> </div> <divdata-thumb="images/slides/thumbs/image-6.jpg"datasrc="images/slides/image-6.jpg"> </div> </div><!-- #camera_wrap_1 --> <div class="clear"> </div> </div> <div id="container"> <div id="contact_page"> <div class="contact_form"> <?php $link=mysql_connect("localhost","root","") or die("could not connected to database"); $a=$_GET['aname']; $b=$_GET['email']; $c=$_GET['pass']; $query="INSERT INTO Distribution.reg1 VALUES('$a','$b','$c')"; $result=mysql_query($query,$link); if($result)
35

{ print "<h3>congrats! You are registered,please fill these details.</h3>"; } else { print "<body bgcolor=gray><h2>Sorry, you are not registered.Try

again..<h2></body>"; } mysql_close($link); <form action="reg2.php" method="get" enctype="multipart/form-data" onSubmit= "return validate(this)"> <table width="600" border="0"> <tr> <td width="185">Release Title:</td> <td width="405"><input type="text" name="release"class="text_field"></td> </tr> <tr> </tr> <tr> </tr></tr><tr> </tr> <tr> </tr> </tr><tr> </tr> <tr> </tr> <tr> <td>Main genre of the release:</td> <td><input name="mname" type="text" class="text_field"></td>
36

</tr><tr> </tr> <tr> </tr> <tr> <td>Album production year:</td> <td><input name="pyear" type="text" class="text_field"></td> </tr><tr> </tr> <tr> </tr></tr><tr> </tr> <tr> </tr> </tr><tr> </tr> <tr> </tr> <tr> <td>Album UPC code:</td> <td><input name="upc" type="text" class="text_field"></td> </tr><tr> </tr> <tr> </tr></tr><tr> </tr> <tr> </tr> </tr><tr> </tr> <tr> </tr> <tr> <td>Album upload:</td> <td><input type="file" name="video" value="Browse"></td> </tr><tr> </tr> <tr> </tr></tr><tr> </tr> <tr> </tr> </tr><tr> </tr> <tr> </tr> <tr> <td>&nbsp;</td> <td><input name="submit" type="submit" value="submit" class="button"></td> </tr> </table>
37

</form> </div> <div class="clear"> </div> </div> <div class="clear"> </div> </div> <div id="footer"> <p> GoldenWaveMusic &copy; 2012</p> <div id="content"> <!-- change this div to a nav tag if you're not planning on supporting IE users --> <div class="menu"> <ul class="primary-menu"> <li class="facebook"><a class="social-item" href="#">f</a><span class="social-span">Become a fan on Facebook</span></li> <li class="twitter"><a class="social-item" href="#">t</a><span class="social-span">Follow us on Twitter</span></li> <li class="flickr"><a class="social-item" href="#">c</a><span class="social-span">Add us on Flickr</span></li> <li class="rss"><a class="social-item" href="#">a</a><span

class="social-span">Follow our updates through RSS</span></li> <li class="mail"><a class="social-item" href="#">k</a><span class="social-span">Subscribe to our newsletter</span></li> </ul>
38

</div> <!-- change this div to a nav tag if you're not planning on supporting IE users --> </div> <div class="clear"> </div> </div> <div class="clear"> </div> </div> </body> </html> c). Gallery <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/php; charset=utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>GoldenWave/Gallery</title> <link href="css/style.css" rel="stylesheet" type="text/css"> <link rel="stylesheet" href="./social.css" type="text/css" /> <!--[if lt IE 9]> <style> .primary-menu li span {
39

display:none; background:#ffffff !important; } .primary-menu li a:hover ~ span { display:block; } </style> <![endif]--> <!--[if lt IE 9]> <p class="ie-warning" style="text-align:center; line-height:30px;"> <span style="font-size:20px;">Warning</span><br /> It appears that you are using an out-of-date browser.<br /> To join the rest of the civilized world, please download one of the following browsers:<br /> <ahref="http://www.mozilla.org/en-US/firefox/new" target="_blank">Mozilla Firefox</a> | <ahref="http://www.google.com/chrome"target="_blank">Google Chrome</a> | <a href="http://www.opera.com/" target="_blank">Opera</a> <![endif]--> <link rel='stylesheet' id='camera-css' href='css/camera.css' type='text/css' media='all'> <style>
40

body { margin: 0; padding: 0; } a{ color: #09f; } a:hover { text-decoration:overline; } #back_to_camera { clear: both; display: block; height: 80px; line-height: 40px; padding: 20px; } .fluid_container { margin: 0 auto; max-width: 1000px; width: 90%;
41

} </style> <script type='text/javascript' src='scripts/jquery.min.js'></script> <script type='text/javascript' src='scripts/jquery.mobile.customized.min.js'></script> <script type='text/javascript' src='scripts/jquery.easing.1.3.js'></script> <script type='text/javascript' src='scripts/camera.min.js'></script> <script> jQuery(function(){

jQuery('#camera_wrap_1').camera({ thumbnails: true }); jQuery('#camera_wrap_2').camera({ height: '400px', loader: 'bar', pagination: false, thumbnails: true }); }); </script> </head>
42

<body> <div id="wrapper"> <div id="header"> <a href="#"><img src="images/logo-img.png" alt="logo" name="logo" border= "0" id="logo" /></a> <div class="nav"> <ul> <li><a href="index.php">Home</a></li> <li><a href="login.php">register</a></li> <li class="selected"><a href="gallery.php">Gallery</a></li> <li><a href="contact.php">Contact</a></li> <li><a href="feedback.php">Feedback</a></li> <div class="clear"></div> </ul> </div> </div> <div class="fluid_container"> <div class="camera_wrap camera_amber_skin" id="camera_wrap_1"> <div data-thumb="images/slides/thumbs/image-6.jpg"data-src="images/slides/image6.jpg"> </div>
43

<div data-thumb="images/slides/thumbs/image-2.jpg"data-src="images/slides /image-2.jpg"> </div> <div data-thumb="images/slides/thumbs/image-3.jpg"data-src="images/slides/image-3. jpg"> </div> <div data-thumb="images/slides/thumbs/image-4.jpg"datasrc="images/Slides/image4.jpg"> </div> <div data-thumb="images/slides/thumbs/image-5.jpg"data-src="images/slides/image-5. jpg"> </div> <div data-thumb="images/slides/thumbs/image-1.jpg"data-src="images/slides/image1.jpg"> </div> </div><!-- #camera_wrap_1 --> <div class="clear"> </div> </div> <div id="container"> <p class="about_us"><strong>Gallery</strong></p> <div id="gallery_view">
44

<div id="gallery_rack"> <div class="gallery_size"> <img src="images/vid_img.png"> </div> <div class="gallery_size"> <img src="images/vid_img.png"> </div> <div class="gallery_size"> <img src="images/vid_img.png"> </div> <div class="gallery_size"> <img src="images/vid_img.png"> </div> <div class="clear"> </div> </div> <div id="gallery_rack"> <div class="gallery_size"> <img src="images/vid_img.png"> </div> <div class="gallery_size"> <img src="images/vid_img.png">
45

</div> <div class="gallery_size"> <img src="images/vid_img.png"> </div> <div class="gallery_size"> <img src="images/vid_img.png"> </div> <div class="clear"> </div> </div> <h2> Audios </h2> <div id="gallery_rack"> <div class="gallery_size"> <img src="images/vid_img.png"> </div> <div class="gallery_size"> <img src="images/vid_img.png"> </div> <div class="gallery_size"> <img src="images/vid_img.png"> </div> <div class="gallery_size">
46

<img src="images/vid_img.png"> </div> <div class="clear"> </div> </div> <div class="clear"> </div> </div> <div class="clear"> </div> </div> <div id="footer"> <p> GoldenWaveMusic &copy; 2012</p> <div id="content"> <!-- change this div to a nav tag if you're not planning on supporting IE users --> <div class="menu"> <ul class="primary-menu"> <li class="facebook"><a class="social-item" href="#">f</a><span class="social-span">Become a fan on Facebook</span></li> <li class="twitter"><a class="social-item" href="#">t</a><span class="social-span">Follow us on Twitter</span></li> <li class="flickr"><a class="social-item" href="#">c</a><span class="social-span">Add us on Flickr</span></li> <li class="rss"><a class="social-item" href="#">a</a><span class="social-span">Follow our updates through RSS</span></li>
47

<li class="mail"><a class="social-item" href="#">k</a><span class="social-span"> Subscribe to our newsletter</span></li> </ul> </div> <!-- change this div to a nav tag if you're not planning on supporting IE users --> </div> <div class="clear"> </div> </div> <div class="clear"> </div> </div> </body> </html> d). Submit <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/php; charset=utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>GoldenWave/Contact</title> <link href="css/style.css" rel="stylesheet" type="text/css"> <link rel="stylesheet" href="./social.css" type="text/css" />
48

<!--[if lt IE 9]> <style> .primary-menu li span { display:none; background:#ffffff !important; } .primary-menu li a:hover ~ span { display:block; } </style> <![endif]--> <!--[if lt IE 9]> <p class="ie-warning" style="text-align:center; line-height:30px;"> <span style="font-size:20px;">Warning</span><br /> It appears that you are using an out-of-date browser.<br /> To join the rest of the civilized world, please download one of the following browsers:<br /> <ahref="http://www.mozilla.org/en-US/firefox/new" target="_blank">Mozilla Firefox</a> | <ahref="http://www.google.com/chrome"target="_blank">Google Chrome</a> | <a href="http://www.opera.com/" target="_blank">Opera</a>
49

<![endif]--> <link rel='stylesheet' id='camera-css' href='css/camera.css' type='text/css' media='all'> <style> body { margin: 0; padding: 0; } a{ color: #09f; } a:hover { text-decoration:overline; } #back_to_camera { clear: both; display: block; height: 80px; line-height: 40px; padding: 20px; } .fluid_container {
50

margin: 0 auto; max-width: 1000px; width: 90%; } </style> <script type='text/javascript' src='scripts/jquery.min.js'></script> <script type='text/javascript' src='scripts/jquery.mobile.customized.min.js'></script> <script type='text/javascript' src='scripts/jquery.easing.1.3.js'></script> <script type='text/javascript' src='scripts/camera.min.js'></script> <script> jQuery(function(){

jQuery('#camera_wrap_1').camera({ thumbnails: true }); jQuery('#camera_wrap_2').camera({ height: '400px', loader: 'bar', pagination: false, thumbnails: true });
51

}); </script> </head> <body> <div id="wrapper"> <div id="header"> <a href="#"><img src="images/logo-img.png" alt="logo" name="logo" border="0" id="logo" /></a> <div class="nav"> <ul> <li><a href="index.php">Home</a></li> <li><a href="login.php">Register</a></li> <li><a href="gallery.php">Gallery</a></li> <li class="selected"><a href="contact.php">Contact</a></li> <li><a href="feedback.php">Feedback</a></li> <div class="clear"></div> </ul> </div> </div> <div class="fluid_container"> <div class="camera_wrap camera_amber_skin" id="camera_wrap_1">
52

<div data-thumb="images/slides/thumbs/image-5.jpg"data-src="images/slides/image5.jpg"> </div> <div data-thumb="images/slides/thumbs/image-2.jpg"data-src="images/slides/image2.jpg"> </div> <div data-thumb="images/slides/thumbs/image-3.jpg"data-src="images/slides/image3.jpg"> </div> <div data-thumb="images/slides/thumbs/image-4.jpg"data-src="images/slides/image4.jpg"> </div> <div data-thumb="images/slides/thumbs/image-1.jpg"data-src="images/slides/image-1. jpg"> </div> <div data-thumb="images/slides/thumbs/image-6.jpg"data-src="images/slides/image-6. jpg"> </div> </div><!-- #camera_wrap_1 --> <div class="clear"> </div> </div>
53

<div id="container"> <p class="about_us"><strong>Feedback</strong></p> <div id="contact_page"> <div class="contact_form"> <?php $link=mysql_connect("localhost","root","") or die("could not connected to database"); $a=$_GET['fname']; $b=$_GET['lname']; $c=$_GET['email']; $d=$_GET['tno']; $query="INSERT INTO distribution.feedback VALUES('$a','$b','$c','$d')"; $result=mysql_query($query,$link); if($result) { print "<h3>Thanks! $a for Suggestion.</h3>"; } else { print "<body bgcolor=gray><h2>Sorry, you failed.Try again..<h2></body>"; } mysql_close($link);
54

? </div> <div class="clear"> </div> </div> <div class="clear"> </div> </div> <div id="footer"> <p> GoldenWaveMusic &copy; 2012</p> <div id="content"> <!-- change this div to a nav tag if you're not planning on supporting IE users --> <div class="menu"> <ul class="primary-menu"> <li class="facebook"><a class="social-item" href="#">f</a><span class="social-

span">Become a fan on Facebook</span></li> <li class="twitter"><a class="social-item" href="#">t</a><span class="social-

span">Follow us on Twitter</span></li> <li class="flickr"><a class="social-item" href="#">c</a><span class="social-span">Add us on Flickr</span></li> <li class="rss"><a class="social-item" href="#">a</a><span class="social-span">Follow our updates through RSS</span></li> <li class="mail"><a class="social-item" href="#">k</a><span class="social-

span">Subscribe to our newsletter</span></li> </ul>


55

</div> <!-- change this div to a nav tag if you're not planning on supporting IE users --> </div> <div class="clear"> </div> </div> <div class="clear"> </div> </div> </body> </html>

CHAPTER-5
5.1 Screenshots
56

5.1.1 Home Page

Fig 5.1 HomePage 5.1.2 Register

Fig 5.2 Register 5.1.3 Register Page1

57

Fig 5.3 Register Page1 5.1.4 Login

Fig 5.4 Login

5.1.5 Feedback
58

Fig 5.5 Feedback 5.1.6 Validation

Fig 5.6 Validation 5.1.7 Feedback output

59

Fig 5.7 Feedback output 5.1.8 Contact

Fig 5.8 Contact 5.1.9 Website image

60

Fig 5.9 Website image 5.1.10 Artist image

Fig 5.10 Artist image

CHAPTER-6
61

Conclusion and Future Scope


We have built the most advanced promotional widgets in the market, providing you with free access to a number of services. You can generate fully customizable and embeddable 'players' for each album with direct links to your album on the leading digital music stores as well as news, biographies, photos and more. We store your music ourselves and our in-house technical team ensures that we can distribute your music faster and more reliably. Golden Waves is a digital music distribution service for independent artists & labels. We deal directly with the stores, you have more choice, you can pick which stores and territories will sell you music, how much your customers will have to pay and can set your own release date to maximize pre-sales.

Future scope
Make the most of 'Apps': We have developed official MySpace and Facebook 'apps' which can be installed directly on your profiles and currently offer the only direct links to external stores from Facebook .Keep in touch with your fans: Our widgets offer a fully integrated CRM solution, allowing you to collect and manage email addresses from your fans and send HTML-rich newsletters directly from the Golden Waves Backstage area using credit you can purchase online. Pick and choose between 3 versions and sizes: Designed to fit all standard HTML applications. Each player skin is customizable, allowing you to change the language, color, size and more based on your needs. Sell your music: Our widgets use 'smart-link' technology to locate the is address of the user viewing it to ensure that when they click on your player they are directed to the most relevant store. We are currently the only distributor to offer this technology.

References
[1] http://www.blogzimbalam.co.uk/team/
62

[2] http://www.zimbalam.co.uk/digital-music-distribution-royalties.php [3] http://www.zimbalam.co.uk/digital-music-distribution-promotion.php [4] http://www.google.co.in/search?hl=enIN&source=hp&biw=&bih=&q=music+ distribution+system+reviews&gbv=2&oq=music+distribution+suste&gs_l=heirloomhp.3.2.0i13j0i13i30l2j0i13i5i30l7.2861.13183.0.17825.24.20.0.4.4.0.354.4652.3j1j13j3.2 [5] http://stereos.about.com/od/advancedstereotopics/ht/wholehouse.htm [6] http://www.youtube.com/results?search_query=singer+viedo&oq=singer+viedo &gs_l=youtube.3...2466.12357.0.13610.16.14.1.1.1.0.393.3471.2j0j10j2.14.0...0.0...1ac.1 .sOzWcPaQ9pk [7] http://www.absolutepunk.net/showthread.php?t=1659682 [8] http://www.zimbalam.com/faq.php [9] http://www.google.co.in/search?hl=en-IN&source=hp&biw=&bih=&q=channel+ plus+music+distribution+system&gbv=2&oq=music+distribution+system&gs_l=heirloo m[10] http://www.homecontrols.com/ChannelPlus-Music-Distribution-SystemMPMDS6A

63

You might also like