Online Book Store

2009

SEBIZ INFOTECH
www.sebiz.net Sebiz Square, C-6, IT Park Sector 67, Mohali

SASIIT&R, Mohali

PROJECT REPORT ON ONLINE BOOK STORE

MASTER OF COMPUTER APPLICATIONS (SESSION 2006-2009)

SUBMITTED TO:
MR. PARMOD KUMAR

SUBMITTED BY:
GURPREET SINGH KHOKHAR

SAS INSTITUE OF INFORMATION TECHNOLOGY & RESEARCH C-124, PHASE 8 (INDUSTRIAL AREA), MOHALI. www.sasiitmohali.com

CERTIFICATE
2

SASIIT&R, Mohali

To whom it may concern

This is to certify that the software product “ONLINE BOOK STORE” is the original work done by Gurpreet Singh Khokhar, student of MCA 6th for session 2006-2009 under my personal guidance and supervision. The completion of this project is due to pure dedication and hard work by him and put their maximum efforts in development of the software.

Wishing him good luck for the future.

Name of the Student Gurpreet Singh Khokhar

Roll number 622211323

Ms. Mamta Bhandari (Project Guide, Sebiz Infotech)

Mr. Pramod Kumar (Asst. Professor, SASIIT&R)

3

SASIIT&R, Mohali

ACKNOWLEDGEMENT

I would like to thank Mr. Jack Dhariwal CEO, Sebiz Infotech Pvt. Ltd., Mohali for giving us the opportunity to carry out our project at Sebiz Infotech, and providing us environment to undertake a major project work in their organization and providing all necessary information and resources required for completion of the project.

I am grateful to Mr. Sushil Narang, Director SASIIT, Mohali, letting us go ahead with the project and being a constant source of inspiration and motivation.

I have great pleasure in expressing our profound gratitude and hearty thanks to him for his timely help and guidance throughout the project work.

I highly appreciate the efforts of Ms. Mamta Bhandari, Corporate Trainer (Sebiz Infotech) for her valuable guidance and support during entire project work.

I express our sincere thanks to all Team members for their valuable guidance, co-operation, suggestions and other help during the course of the project.

Gurpreet Singh Khokhar

4

SASIIT&R, Mohali

INDEX

SERIAL NUMBER

CONTENTS

PAGE NO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Company Profile Introduction System Development Life Cycle The Waterfall Model Manual System Feasibility Study Requirements Introduction to ASP.NET 3.5 Introduction to CSS Introduction to HTML Online Book Store Flow Charts Business Logic Database Design Stored Procedures Project Screenshots Reports Team Structure Summary Bibliography

6 11 12 14 18 21 22 23 26 30 32 35 38 51 61 87 92 93 94 95

5

SASIIT&R, Mohali

COMPANY PROFILE
Who are we? We are Sebiz Infotech based in Rochester, U.S.A. We are an IT company with a fast growing global presence. Our global footprint spans 6 offices and 3 continents. We have development facilities both in the U.S. and India which means we can offer you a 24 hour development environment and speed to market that is truly amazing. Our offerings: Today, we have a well deserved reputation for providing exciting multimedia content and creating innovative Internet business applications, offering high quality, low cost solutions. Our professional IT services aim at empowering your enterprise. From getting e-businesses up, creating enticing and powerful multimedia content, and managing technology infrastructure, we are focused on helping your business do better. We help you bring defect-free products to market, on time and within budget. We address the specialized needs of this market to offer a complete business and technology offering. This includes Software Development, Web Solutions, Internet Marketing with a special focus on Search Engine Optimization, E- learning, Hosting, and Network Management. 400-strong and growing! Our team numbers over 400 and with its varied skill sets is a committed bunch of people who definitely know what they are doing. Quality is our prime focus, this is amply illustrated by our CMMi level 3 & ISO 9001-2000 certifications and our status as a Microsoft Gold Certified Partner. We approach our work with passion and enthusiasm. The Sebiz credo is, 'We deliver, no matter what - and have fun doing it!'

6

SASIIT&R, Mohali Our Products At Sebiz Infotech, we have developed a variety of products that promise to increase your business efficiencies and enhance your visibility online. From the extremely convenient PDF to Word conversion and multimedia proposal generation to website and logo creation, our products play diverse roles. We are providing a FREE Trial download for all our products, so please go ahead and try them out! Following are some of our products: ? ProposalSmartz ProposalSmartz is a totally secure, comprehensive, Online Proposal Generation Software that helps you generate highly professional, customized business/sales proposals and letters in different formats - Adobe PDF, Macromedia Flash, and Microsoft Word. All this, you do in minutes, with lasting multimedia impact. Something you could never have dreamed of earlier! Besides this, you can integrate your contacts from other OMS like Act, Goldmine, and Outlook into ProposalSmartz. You can even include video feed into your proposal besides a host of relevant templates and wow your clients with well thought out, 'designer' proposals with matching animated intros. ? DocSmartz Conversion Software Converts PDF files into Word documents and also preserves the layout as well as the graphics. Check out this phenomenal PDF to Word converter and get the incredible results in no time. The document is seemingly original and complete with all its formatting and graphics. Prior to the advent of the phenomenal DocSmartz, converting PDF to word was both dreary and difficult. DocSmartz provides a quick, easy, and a cost-effective way to convert PDF document into word document. Furthermore, it eliminates the need to reformat word documents, thus, saving both time and money. Howzzat!

7

SASIIT&R, Mohali

? The EmailSmartz Suite of products E-mailSmartz consists of a whole gamut of products - E-mail Tarantula, E-mail Sender Pro, E-mail Generator, E-mail Sender, E-mail Manager, and E-mail Spider. E-mail Tarantula is powerful target e-mail spider software. It is designed to collect e-mail addresses matching your query from the Internet. E-mail Sender Pro is high-speed mailing software meant for professionals who need to send information or notification to a large number of recipients within couple of minutes. E-mail Generator is designed to directly search e-mail addresses from e-mail servers. It can verify all user names that you specified on the e-mail server. E-mail Sender is a direct e-mail sender program. It is ideal for newsletters, targeted marketing, and keeping in touch with clients. E-mail Manager is a power tool to make handling of e-mail address lists easier. E-mail Spider is a very professional, high-speed, and targeted e-mail extractor tool. ? Smart ImageConverter The Smart ImageConverter is a stand-alone image editing and conversion application that allows you to speedily apply effects and export images to multiple formats simultaneously. With Smart ImageConverter, you can crop images, resize them, adjust brightness, and contrast settings besides applying exciting artistic effects. The library of effects includes filters like Gaussian Blur, Solarize, Raise, Border, Emboss, and Charcoal among others. You can view images in full size, zoom in and out, change the background color of the work area for better viewing, and maximize the application window to fit the entire screen. You can also apply image transformations like Rotate, Flip, Scale, Crop, and Mirror etc. to your images. ? Websmartz WebSmartz is a stand-alone desktop application that allows you to create and customize great Flash intros for the web without knowing a word of Flash or without splurging on an expensive designer. WebSmartz lets you create intros that look as if they walked out of a professional design studio. Full of stunning graphics, animated effects and color, our intros

8

SASIIT&R, Mohali are not the mass produced variety you commonly find on the Web. They are the best, carefully selected from a multitude of intros produced by our design team. ? FolioSmartz You can create your own multimedia Folio in FolioSmartz to showcase your company and products. A Folio comprises of a dynamic multimedia Flash intro followed by a host of attractive Flash templates that you can customize to suit your own needs. Templates like Company History, Products, and Business Strengths etc. are tailor made to display your data to advantage. Sets of templates have been further categorized into visual themes so that you can select the look and feel that appeals to you the most. ? ImageSmartz ImageSmartz is an online application that allows you to show your images online with comprehensive Image Viewing Controls. ImageSmartz displays your pictures to perfection and allows for great viewing flexibility. This means, once you upload your images online through an ImageSmartz viewer, your customers can view these images by zooming in and out of the image, change brightness, contrast etc. of the image and what not!! Viewers can zoom into the image to an almost unlimited degree and see every detail in full clarity.

9

SASIIT&R, Mohali

LOCATIONS OF THE COMPANY

Head Quarters & Mailing Address: Sebiz Infotech 570 Willowbrook Office Park Rochester, New York 14450 Tel: +1-888-661-8967 Fax: +1-815-550-2295 E-mail: [email protected]

India Office: Sebiz Infotech Sebiz Square, IT - C6, Sector 67, Mohali - 160062, Punjab, India Tel: +91-172-3068070-73 Fax: +91-172-3068074 E-mail: [email protected]

Canada Office: 527 Ravenstone Court, Mississauga, ON, L5R 4A6 Tel: +1-905-481-2537 E-mail: [email protected]

10

SASIIT&R, Mohali

INTRODUCTION
Man has invented many electronic devices but the computer has made a greater impact on society than any other devices. They have made a potentially significant contribution to the society during the last three decades. The areas of computer applications are literally too numerous to mention. Computers have become an integral part of man’s everyday life. They dominate every sphere of life be it entertainment, education, banking, insurance, research, medicine, design or manufacturing. They continue to grow and open new horizons of discovery and applications. One of the primary reasons for the immense popularity of computers is the speed with which they can accomplish specified tasks. However, computer applications are not always easy to use. Any application has two parts: ? User Interface: This is the screen displayed by the application. We interact with an application via the interface. Every application has a user interface in one form or the other. The application asks for and we provide the necessary instructions using the interface. ? Program: Computers need clear-cut instructions to tell them what to do, how to do, and when to do. A set of instructions to carry put a specified task is called a program. This is what goes on in the background. To prevent an analogy from the real world, consider how we use a television. We use ON/OFF switch channel etc. These controls represent the interface while what happens internally when we use any of the controls constitute the program. All interactions between the user and application are via the user interface. Thus, for any application to be successful it needs to have a good user interface. The user interface makes a program easy to use. ? Easy to learn ? Easy to use ? Attractive

11

SASIIT&R, Mohali

SYSTEM DEVELOPMENT LIFE CYCLE

System Development Life Cycle (SDLC) is the overall process of developing information systems through a multi-step process from investigation of initial requirements through analysis, design, implementation and maintenance. There are many different models and methodologies, but each generally consists of a series of defined steps or stages. The software development life cycle (SDLC) is the entire process of formal, logical steps taken to develop a software product. The phases of SDLC can vary somewhat but generally include the following:
1. 2. 3. 4. 5. 6. 7. 8.

Conceptualization Requirements and Cost/Benefits Analysis Detailed Specification of the Software Requirements Software design Programming Testing User and Technical Training And finally, Maintenance

A number of system development life cycle (SDLC) models have been created: waterfall, fountain, and spiral build and fix, rapid prototyping, incremental, and synchronize and stabilize. The oldest of these, and the best known, is the waterfall: a sequence of stages in which the output of each stage becomes the input for the next. These stages can be characterized and divided up in different ways, including the following:
1.

Project planning, feasibility study: Establishes a high-level view of the intended project and determines its goals.

2.

Systems analysis, requirements definition: Refines project goals into defined functions and operation of the intended application. Analyzes end-user information needs.

12

SASIIT&R, Mohali Systems design: Describes desired features and operations in detail, including screen layouts, business rules, process diagrams, pseudo code and other documentation.
4.

3.

Implementation: The real code is written here. Integration and testing: Brings all the pieces together into a special testing environment, then checks for errors, bugs and interoperability.

5.

6.

Acceptance, installation, deployment: The final stage of initial development, where the software is put into production and runs actual business.

? Maintenance: What happens during the rest of the software's life: changes, correction, additions, and moves to a different computing platform and more? This, the least glamorous and perhaps most important step of all, goes on seemingly forever.

13

SASIIT&R, Mohali

THE WATERFALL MODEL

This is also known as Classic Life Cycle Model (or) Linear Sequential Model (or) Waterfall Method. It involves a series of steps to be undertaken in the development of information systems as follows: 1. System/Information Engineering and Modeling 2. Software Requirements Analysis 3. Systems Analysis and Design 4. Code Generation 5. Testing 6. Maintenance

14

SASIIT&R, Mohali

1. System/Information Engineering and Modeling As software is always of a large system or business, work begins by establishing requirements for all system elements and then allocating some subset of these requirements to software. This system view is essential when software must interface with other elements such as hardware, people and other resources. System is the basic and very critical requirement for the existence of software in any entity. So if the system is not in place, the system should be engineered and put in place. In some cases, to extract the maximum output, the system should be re-engineered and spruced up. Once the ideal system is engineered or tuned, the development team studies the software requirement for the system. 15

SASIIT&R, Mohali 2. Software Requirement Analysis This is also known as feasibility study. In this phase, the development team visits the customer and studies their system. They investigate the need for possible software automation in the given system. By the end of the feasibility study, the team furnishes a document that holds the different specific recommendations for the candidate system. It also includes the personnel assignments, costs, project schedule, and target dates. The requirements gathering process is intensified and focused specially on software. To understand the nature of the program(s) to be built, the system engineer ("analyst") must understand the information domain for the software, as well as required function, behavior, performance and interfacing. The essential purpose of this phase is to find the need and to define the problem that needs to be solved. 3. System Analysis and Design In this phase, the software development process, the software's overall structure and its nuances are defined. In terms of the client/server technology, the number of tiers needed for the package architecture, the database design, the data structure design etc is all defined in this phase. A software development model is created. Analysis and Design are very crucial in the whole development cycle. Any glitch in the design phase could be very expensive to solve in the later stage of the software development. Much care is taken during this phase. The logical system of the product is developed in this phase. 4. Code Generation The design must be translated into a machine-readable form. The code generation step performs this task. If the design is performed in a detailed manner, code generation can be accomplished without much complication. Programming tools like Compilers, Interpreters; Debuggers are used to generate the code. 5. Testing Once the code is generated, the software program testing begins. Different testing methodologies are available to unravel the bugs that were committed during the previous

16

SASIIT&R, Mohali phases. Different testing tools and methodologies are already available. Some companies build their own testing tools that are tailor made for their own development operations. 6. Post implementation and Maintenance Software will definitely undergo change once it is delivered to the customer. There are many reasons for the change. Change could happen because of some unexpected input values into the system. In addition, the changes in the system could directly affect the software operations. The software should be developed to accommodate changes that could happen during the post implementation period.

17

SASIIT&R, Mohali

MANUAL SYSTEM
Manual system is the oldest and still the most prevalent form of data processor. Despite the fantastic growth of computer application, manual information systems still outnumber them in quantity of system and information handled. People receive input data by seeing or hearing them. These data are then stored in the files, which also act as a control and logic unit. The outputs obtained from this type of information processing are oral or written reports and in some cases, even a variety of physical operations the human mind, acting as control and logic unit can perform many operation data: adding, subtracting, multiplying, dividing, sorting values repeating the operations different set of data; comparing two items, outputting result in a pre-arranged manner, revising the processing operation as result of change instruction. In spite of wide activity performed by a human, the human remains an unreliable processor. Human mind is slow in performing arithmetical calculation and is rather erratic in applying unit of logic’s fatigue and boredom are among human frailties that cause 1% to 10% of an error in computation and clerical task where judgment is require human mind is expansible to make decisions in data processing systems because of the difficulty of planning and handle all eventualities. In summary, human being alone are inefficient data processors but they become a vital component of all data processing system because of the need for decision and judgments.

DISADVANTAGES OF MANUAL SYSTEM 18

SASIIT&R, Mohali

? Being a manual system, the probability of error is high. ? Many of the tasks are repetitive and hence tedious. ? Data retrieval may be time consuming and may not easily convey information. ? Searching of records based on certain criteria is almost impossible. ? There is always a possibility of losing records. ? Lesser flexibility. ? Less user friendly. ? More working hours than as demanded by computerized system.

19

SASIIT&R, Mohali ADVANTAGES OF THE COMPUTERIZED SYSTEM ? Provides more flexibility. ? It takes comparatively lesser time to access the information. ? Provides user-friendly environment. ? Requires less working labor. ? It removes any redundancy that may occur in physical solutions to the problem as various checks can be incorporated to check the redundancy.

20

SASIIT&R, Mohali

FEASIBILITY STUDY
Feasibility study is a test of the system proposal according to its workability, impact on organization, ability to meet user needs, and effective use of resources. The feasibility study depends upon the result on initial investigation, and the survey is expanded to a more detailed feasibility study. It focuses on major three questions: ? What resources are available for the given candidate systems? Is the problem worth solving? ? What are the user’s demonstratable needs and how does a candidate system meet them? ? What are the likely impacts of the candidate system on the organization? ? Is there a new and better way to do the job that will benefit the user? ? What are the costs and saving of the alternatives? ? What is recommended? The objective of feasibility study is not only to solve the problem but to acquire the sense of its scope. The result of the feasibility study is a formal proposal. This is the simple report – a formal document detailing the nature and scope of proposed solution. The proposal summarizes what is known and what is going to be done. It consists of the following: ? Statement of the problem: a carefully worded statement of the problem that lead to the analysis. ? Summary of finding and recommendations: a list of the major findings and recommendations of the study. It is ideal for the user who requires quick access to the results of the analysis of the system under study. ? Details of findings: an outline of the methods and procedures undertaken by the existing system, followed by the coverage of the objectives and procedures of the candidate system. ? Recommendations and conclusions: specific recommendations regarding the candidate system, including personnel assignments, costs, project schedules, and target dates. 21

SASIIT&R, Mohali

REQUIREMENTS
1. Personal Edition: ? CPU Speed: ? RAM: ? Hard Disk Space: ? Operating System: ? Other: 2. Network Edition: a) Server: ? CPU Speed: ? RAM: ? Hard Disk Space: ? Operating System: P4 1 GB (2 GB recommended) 500 MB of available(1 GB recommended) For users less than 10: Win 9x, NT, 2000 or XP For users more than 10: Win NT Server, Win 2003 Server, or Win 2008 Server. b) Client: ? CPU Speed: ? RAM: ? Hard Disk Space: ? Operating System: ? Others: P4 1 GB (2 GB recommended) 500 MB of available(1 GB recommended) Win XP, Vista Microsoft word recommended P4 1 GB (2 GB recommended) 500 MB of available (1 GB recommended) WinXP, Vista Microsoft Word recommended

22

SASIIT&R, Mohali

INTRODUCTION TO ASP.NET

Microsoft released ASP.NET 3.5 on November 19, 2007. Along with it, was released Visual Studio 2008. This evolution from ASP.NET 2.0 to ASP.NET 3.5 is quiet gradual. ASP.NET 3.5 uses the same engine as that of ASP.NET 2.0, with some extra features added on top of it. In this article, we will explore the new features added to ASP.NET 3.5. This article assumes that you have been working on ASP.NET 2.0. NEW FEATURES IN ASP.NET 3.5 ASP.NET AJAX In ASP.NET 2.0, ASP.NET AJAX was used as an extension to it. You had to download the extensions and install it. However in ASP.NET 3.5, ASP.NET AJAX is integrated into the .NET Framework, thereby making the process of building cool user interfaces easier and intuitive. The integration between webparts and the update panel is much smoother. Another noticeable feature is that you can now add ASP.NET AJAX Control Extenders to the toolbox in VS2008. Even though this is an IDE specific feature, however I feel it deserves a mention over here for developers, who had to add extenders using source view earlier. It is also worth noting that Windows Communication Foundation (WCF) now supports JSON along with other standard protocols like SOAP, RSS and POX. LINQ LINQ (Language Integrated Query) adds native data querying capability to C# and VB.NET along with the compiler and Intellisense support. LINQ is a component of .NET 3.5. LINQ defines operators that allow you to code your query in a consistent manner over databases, objects and XML. The ASP.NET LinqDataSource control allows you to use LINQ to filter, order and group data before binding to the List controls. NEW CONTROLS The ListView and DataPager are new controls added along with a new DataSource controls called the LinqDataSource. 23

SASIIT&R, Mohali

? ListView The ListView control is quiet flexible and contains features of the Gridview, Datagrid, Repeater and similar list controls available in ASP.NET 2.0. It provides the ability to insert, delete, page (using Data Pager), sort and edit data. However one feature of the ListView control that stands apart, is that it gives you a great amount of flexibility over the markup generated. So you have a complete control on how the data is to be displayed. You can now render your data without using the <table> tag. You also get a rich set of templates with the ListView control. ? DataPager DataPager provides paging support to the ListView control. The best advantage is that you need not have to keep it ‘tied’ with the control on which the paging is being done. You can keep it anywhere on the page. DataPager gives you a consistent way of paging with the controls that support it. Currently only ListView supports it as it implements the IPageableItemContainer. However support is likely to be added to other List controls as well. ASP.NET MERGE TOOL ASP.NET 3.5 includes a new merge tool (aspnet_merge.exe). This tool lets you combine and manage assemblies created by aspnet_compiler.exe. This tool was available earlier as an add-on. NEW ASSEMBLIES The new assemblies that would be of use to ASP.NET 3.5 developers are as follows: • • • • • System.Core.dll - Includes the implementation for LINQ to Objects System.Data.Linq.dll - Includes the implementation for LINQ to SQL System.Xml.Linq.dll - Includes the implementation for LINQ to XML System.Data.DataSetExtensions.dll - Includes the implementation for LINQ to Data Set. System.Web.Extensions.dll: Includes the implementation for ASP.NET AJAX (new enhancements added) and new web controls as explained earlier.

24

SASIIT&R, Mohali

Some Other Important Points • • • • ASP.NET 3.5 provides better support to IIS7. IIS7 and ASP.NET 3.5 modules and handlers support unified configuration. You can have multiple versions of ASP.NET on the same machine. For those who are wondering what happened to ASP.NET 3.0, well there isn’t anything called ASP.NET 3.0. VS 2002 worked with ASP.NET 1.0, VS 2003 worked with ASP.NET 1.1, and VS 2005 worked with ASP.NET 2.0. However VS 2008 supports multi-targeting, i.e it works with ASP.NET 2.0, and ASP.NET 3.5. ENHANCED FEATURES • • • • • • • • • Security Password Web service protocol Connection string Ado.Net Data reader Namespace Side-by-side execution Mobile control

25

SASIIT&R, Mohali

INTRODUCTION TO CSS
Cascading Style Sheets: Language used to describe how an HTML document should be formatted. • CSS, short for Cascading Style Sheets, a new feature being added to HTML that gives both Web site developers and users more control over how pages are displayed. With CSS, designers and users can create style sheets that define how different elements, such as headers and links, appear. These Style Sheets can then be applied to any Web page. • It is a standard for specifying the appearance of text and other elements. CSS was developed for use with HTML in Web pages but is also used in other situations, notably in applications built using XPFE. CSS is typically used to provide a single "library" of styles that are used over and over throughout a large number of related documents, as in a web site. A CSS file might specify that all numbered lists are to appear in italics. • Cascading Style Sheets, level 2 (CSS2) is a style sheet language that allows authors and users to attach style (eg, fonts, spacing, and aural cues) to structured documents (eg, HTML documents and XML applications). By separating the presentation style of documents from the content of documents, CSS2 simplifies Web authoring and site maintenance. CSS2 builds on CSS1 and, with very few exceptions; all valid CSS1 style sheets are valid CSS2 style sheets. CSS is a simple mechanism for adding style (eg fonts, colors, spacing) to Web documents. • A Cascading Style Sheet (CSS) provides the ability to separate the layout and styles of a web page from the data or information. Styles such as fonts, font sizes, margins, can be specified in one place, and then the Web pages feed off this one master list, with the styles cascading throughout the page or an entire site.

26

SASIIT&R, Mohali •

A method of coding that allows users to define how certain HTML, DHTML, or XML structural elements, such as paragraphs and headings, should be displayed using style rules instead of additional markup.



A Web page derived from multiple sources with a predetermined order where the definitions of any style element conflict.



Cascading Style Sheets are a big breakthrough in Web design because they allow developers to control the style and layout of multiple Web pages all at once. With CSS, when you want to make a change, you simply change the style, and that element is updated automatically wherever it appears within the site. Data Center - This is where all the servers are located. Technicians are in the same building for administration and technical support.



These are used to design web pages. They are web pages derived from multiple sources with a defined order of precedence where the definitions of any style element conflict. CSS gives more control over the appearance of a web page to the page creator than to the browser designer or the viewer. Since it's likely that different browsers will choose to implement CSS



Somewhat differently, the web page creator must test the page with different browsers. Cascading Style Sheets, or CSS, are a series of instructions that specify how text should appear on a Web page. You can use CSS to set styles for text, borders, and other elements, and apply these styles to your entire Web site. • A style language that can control the appearance of HTML and XML documents by defining display features such as font types, color and size, as well as text formatting features such as indentions, margins, and tabular presentation. See also Style sheet. • Cascading Style Sheets provide a method of controlling how HTML documents appear. Replacing a web site's style sheet can radically alter the

27

SASIIT&R, Mohali way it appears. This can make it easier to rebrand a website or target different display types, such as: print, mobile phones and projectors. • A technology used to control the presentation (and often the layout) of a Web page. CSS controls colors, font faces, text sizes, etc. • The Cascading Style Sheet recommendation from the World Wide Web Consortium(W3C) defines the derivation of web page contents from multiple sources, with a hierarchical order of precedence. This makes it possible, for example, to change just on format page in order the change the appearance of many derived content pages. CSS 1 is implemented in the current versions of the Netscape and Microsoft browsers. • CSS is a style sheet format for HTML documents endorsed by the World Wide Web Consortium. CSS1 (Version 1.0) provides hundreds of layout settings that can be applied to all the subsequent HTML pages that are downloaded. CSS2 (Version 2.0) adds support for XML, oral presentations for the visually impaired, downloadable fonts and other enhancements. • A style sheet is made up of style rules that tell a browser how to present a

document. There are various ways of linking these style rules to your HTML documents, but the simplest method for starting out is to use HTML's STYLE element. This element is placed in the document HEAD, and it contains the style rules for the page. • Note that while the STYLE element is a good method of experimenting with style

sheets, it has disadvantages that should be considered before one uses this method in practice. The advantages and disadvantages of the various methods are discussed in the section on linking style sheets to HTML. • Each rule is made up of a selector--usually an HTML element such as BODY, P, or EM--and the style to be applied to the selector. 28

SASIIT&R, Mohali



There are numerous properties that may be defined for an element. Each property takes a value, which together with the property describes how the selector should be presented.

Style rules are formed as follows: Selector {property: value} Multiple style declarations for a single selector may be separated by a semicolon: selector {property1: value1; property2: value2} As an example, the following code segment defines the color and font-size properties for H1 and H2 elements: <HEAD> <TITLE>CSS Example</TITLE> <STYLE TYPE="text/css"> H1 {font-size: x-large; color: red} H2 {font-size: large; color: blue} </STYLE> </HEAD> The above style sheet tells the browser to show level-one headings in an extra-large, red font, and to show level-two headings in a large, blue font. Grouping In order to decrease repetitious statements within style sheets, grouping of selectors and declarations is allowed. For example, all of the headings in a document could be given identical declarations through a grouping: H1, H2, H3, H4, H5, H6 {color: red; font-family: sans-serif}

29

SASIIT&R, Mohali

INTRODUCTION TO HTML
Hypertext Markup Language is the authoring software language used on the Internet's World Wide Web. HTML is used for creating World Wide Web pages. Hyper Text Mark-Up Language (HTML), a subset of Standard Generalized Mark-Up Language (SGML) for electronic publishing, the specific standard used for the World Wide Web. Hypertext Markup Language (html) is a language in which web pages are written. It is the coding syntax used to write WWW documents, which are read by browsers. Short for Hypertext Markup Language, the authoring language used to create documents on the World Wide Web. In practical terms, HTML is a collection of platform-independent styles (indicated by markup tags) that define the various components of a World Wide Web document. Hypertext Markup Language, the coding language used to create hypertext documents for the World Wide Web. In HTML, a block of text can be surrounded with tags that indicate how it should appear (for example, in bold face or italics). Also, in HTML a word, a block of text, or an image can be linked to another file on the Web. HTML files are viewed with a World Wide Web browser. Hypertext Markup Language is the basic language used to write web pages. HTML is a markup language and not a full-blown programming language so is therefore essentially static in nature. HTML is parsed by your web Browser when a web page downloads and consists of tags (commands to tell the browser how to render the text, where to load in graphics etc on the web page) as well as the actual text. (Short for Hyper Text Mark-up Language), is a set of codes that are displayed over a web browser. It is guide for the browser with instructions on how the page is set-up, where and how text and graphics should be placed.

30

SASIIT&R, Mohali WWW documents are normally written in Hypertext Markup Language (HTML), the native language of the WWW. HTML enables links to be specified, and also the structure and formatting of Web documents to be defined. HTML documents are written in plain text, but with the addition of tags which describe or define the text they enclose. For example, a link is defined by the ANCHOR <A> tag placed around the hyperlinked text. It specifies the URL of the 'linked to' document, eg <A HREF="http://www. ... Hypertext Markup Language. A subset of Standard Generalized Markup Language (SGML), this language provides codes used to format hypertext documents. Individual codes are used to define the hierarchy and nature of various components of a document, as well as to specify hyperlinks. Set of programming commands inserted around blocks of text those describe how to display it. HTML commands also display other media (graphics, sound, and video). Hypertext Markup Language. The language used to create and design Web sites. HTML is a standard text file with specific tags that a browser reads and interprets into a Web page. Hypertext Markup Language is a coding language used to make hypertext documents for use on the Web. HTML resembles old-fashioned typesetting code, where a block of text is surrounded by codes that indicate how it should appear. HTML allows text to be "linked" to another file on the Internet. In computing, Hypertext Markup Language (HTML) is a markup language designed for the creation of web pages and other information viewable in a browser. HTML is used to structure information -- denoting certain text as headings, paragraphs, lists and so on -- and can be used to define the semantics of a document.

ONLINE BOOK STORE
31

SASIIT&R, Mohali

DEFINITION The main objective of the Web site is to create new marketing presence on the internet, develop a strong online brand and provide detailed books information.. The students of MCA 6th as their final year project will undergo it. This incorporates MS-SQL Server 2000 as the Back- End to manage the database of candidates. This system is extremely user-friendly and easy to use. Moreover, it facilitates the candidate to appear online for book information. FEATURES 1. Less manpower required. 2. Quick Access to information. 3. Fast report generation. 4. Time efficient. 5. Cost efficient. 6. Enhanced search procedures 7. Very easy to use interface. 8. Database access is very quick. OBJECTIVES OF ONLINE BOOK STORE The main objective of our project is to computerize the manual system of book store. ? To design a system in such a way that even a non-technical person can use it. ? To make the software completely user friendly. ? To reduce the working hours. ? Provides up-to-date information. ? To avoid errors like entering the wrong data. ? Incorporations of proper security checks. ? To prevent the physical loss of data which is possible in the manual system?

32

SASIIT&R, Mohali

? To provide the facility of generating printed reports which were previously hand written? APPLICATION OVERVIEW We have to develop a Web site for selling books of different categories. The Web site shall provide detailed books information. Easy and functional will be the main factors for this Web site. The Web site will contain a secure shopping cart application that allows user to order books. The Web site will permit credit card payments. The Web site should be easy to navigate and creative. Need for the application The main objective of the Web site is to create new marketing presence on the internet, develop a strong online brand and provide detailed books information. PROCESS/FUNCTIONAL DESCRIPTION Shopping Cart There will be a shopping cart section where user can place orders and will make payments. The Web site shall have two main sections: ? User section ? Administration section. USER SECTION This module shall take in details of the registering users and will create their profile. Once registered, the user will be provided a Username and a Password. The registration page should allowed user to enter general information such as name, email address, password, sex (optional information), age (optional information), and source of user’s information about the Web site etc. The information entered by the user can be viewed when they log on to their account and view their profile page. The users will be required to enter the shipping address and the billing address when they purchase any items from the Web site. However, registration is not mandatory for the visitor to make an order through the web site. Any visitor can make order by providing required details ADMIN SECTION 33

SASIIT&R, Mohali

? Manage Users The administrator shall be able to manage user on the Web site. He/She can view the number of registered users and modify the details of the registered users. ? Manage Billing Information The administrator will be able to manage billing information for all the users on the website. ? Manage Books Information The administrator can edit the books database by adding or removing the books information.

FLOWCHARTS FOR USER MODULE

34

SASIIT&R, Mohali

Start

Home Page
Browse By Category Books New Books Contact Us View Cart Login New User Quick Search FAQ Help

Login
Existing User Login New User Login

Flow Chart for Existing User

Login Page Displayed
Enter Username Enter Password

Flow Chart for New User

Authenticatio n
Username/password

No

Error Page

Yes FLOW CHART FOR EXISTING USERS

Homepage
Browse By Category Books New Books Contact Us View Cart Login New User

35

SASIIT&R, Mohali

FLOWCHART FOR A NEW USER

Start 36

SASIIT&R, Mohali

Display Registration Page

Check if required field contains null value

Error Page

Validation for user checked page

Successful Logged in…

BUSINESS LOGIC
I have created a user friendly interface for the buyers to browse and purchase products online from our website. I have implemented following business logic in our web site.

37

SASIIT&R, Mohali • • • • • • • • •

Home Browse by category Quick Search Add To Cart View cart Continue Shopping Proceed To Checkout Confirmation Payment Procedure

Home: By clicking on this link takes the users to the home page where he can browse the products or search any product or login to purchase something form the site, etc. Browse by category: This functionality provides all the products available for sale in the site. Each product is broadly classified by its respective category and subcategory, which provides more flexibility and usability. e.g., an item like Asp.NET books fall in the category of .NET books, Networking books fall in the category of networking books and so on. So the user is provided with the flexibility of browsing that particular subcategory to access a specific item rather than browsing the entire site. After clicking any sub category, to see the details of the product, customer has to click “Buy Now” on any item

These are the main categories and sub categories in our site. 1. Books • • 38 children computer & Internet

SASIIT&R, Mohali • •

networking .NET

2. New Books • • • Add To Cart: Any particular item can be purchased by a customer by clicking on "Add to Cart" button. On doing so, that particular item is added into the shopping cart with the corresponding item information like its primary key, item name, description, price per each item and shipping cost. If that particular item is out of stock, we inform the user and take care that the particular item is not added to cart. The file which support these functionalities are: To implement the shopping cart, we are creating a session for the user. We are creating session with current time, so that it will not be duplicated. If the user already logged in, we are creating session for a particular user, if user is not logged in, then that particular session is assigned to null. When user clicks “Add to cart”, we are taking all required field for an item to be identified uniquely. Then we are inserting that information in the database. If user log out or order is submitter, then we are removing that particular session items from the database. After adding the item into the cart, the user is provided with a choice of updating the quantity or deleting the item. The file which has this functionality is: .NET networking general books

update_item_cart: In this file, when the user updates a particular item, corresponding updating is also made into the database for that particular session. remove_item_cart: In this file, when user removes a particular item from the cart, we check if the number of items in 39

SASIIT&R, Mohali the shopping cart is greater than zero. If yes, then we display the view cart with the item removed. If not, we display shopping cart is empty. View Cart: The user can see all the items and the quantity of each item he bought through the functionality of “View Cart”. The following file supports the above mentioned functionality cart.aspx This file basically handles the functionality of displaying all the items any particular item Customer purchased. To attain this we are maintaining a table called shopping_cart_items, in which we enter all the items purchased by the user against a particular session id. Now when the user clicks on View Cart, we retrieve all the items from shopping_cart_items table and display them on the browser window for that particular session id. Continue Shopping: Our site provides the buyer the facility to shop multiple items in a single shopping session. When the user clicks continue shopping he gets homepage on his browser so that he can continue shopping. Proceed To Checkout: When the user is done with all his shopping, he can checkout. When the user clicks the link and proceed to checkout, we check if the user has already logged in or not. If yes then the user is asked to fill only the payment details i.e. name on the card, card type, card number and expiry date for the card. For the convenience of the user rest of the details like billing and shipping address etc are retrieved by the website itself. If the user is a new customer and has not registered with the site, he will be asked to register first. After that only he can proceed with the payment as explained above. Payment Procedure: One of the conveniences of e-shopping is the payment procedure, where easy and fast payment through credit card is provided. The user has to enter the type of credit card, credit card number, 40

SASIIT&R, Mohali expiration date of the card and card holder’s name. Various validations have been done for the entries made by the user related to credit card. For example if the user makes payment through the master card his card number should be a 16 digit number starting with ‘5’. Similarly American express card number should start with ‘3’. Similarly the expiry date for the card entered by the user should be beyond the current date. To test our application one can use (5555 5555 5555 1111) as the credit card number with expiration date greater than the current date. Confirmation: The customer is given an invoice with a confirmation number, as a proof of purchase. The invoice is consists of number of items purchased along with the item name, confirmation number (order id), shipping address and delivery date. Each order has a unique order id which is generated randomly through MD5. MD5 here is used to get a unique order id every time a new order is made by the user. A single order can have multiple items. After the confirmation is done all the items are removed from the shopping cart (also from the database) for that particular session. Logout: On Logout, we are destroying the session and removing items from shopping_cart_items database for that particular session is.

SHOPPING CART FLOW CHART

41

SASIIT&R, Mohali

Start Select Any Product

Get the product details Add To Cart View Cart Update

Yes

Shopping Cart Items Display Remove Item count >0 No Shopping Cart is Empty Check for login Checkout

Payment Procedure

No Login Page Homepage Yes

Order Confirmation Continu e No Log Out

ORDER FULFILLMENT FLOW CHART 42

SASIIT&R, Mohali

Start Shopping

Proceed to Checkout

Login Page

No

Yes Logge din

Ask payment and shipping information

Valid Validate Credit card Order conformation

No

ADMIN BLOCK
43

SASIIT&R, Mohali

Flow Chart to Enter the Admin Block

Start

Display Admin Login Page

Validatio n Yes Admin Page

No

Admin is supposed to enter his user name and password to use the Admin functionalities. Verification for the user name and password is done. For an authenticated user homepage is displayed. For an invalid user it displays the login page again. Three kinds of functionalities provided to the Admin are: • • • Add Form Update Form View Form

This is the overall flowchart for an admin. An authorized admin can add any entry in a particular table by clicking the link under the heading “add form”. A form would be displayed according to the selected table. An authorized admin can update any entry in a particular table by clicking the link under the heading “update form”. A form would be displayed according to the selected table.

44

SASIIT&R, Mohali An authorized admin can view any table by clicking the link under the heading “view form”. A form would be displayed according to the selected table.

Admin Page Add Form Update View Form

Links to category based form Update Form Display Links to view tablewise database details

Update Form: The Admin can select the link to the table in which he wants to update an entry. An update form will be displayed. If the Admin knows the product id (primary key) for the item he wants to update, he can enter the id directly in the given field else he needs to vie all the contents in the selected table. This he can do by clicking the submit button The Admin updates the data into the form. Once he gets the product id he can update the entry. We check the uniqueness of the product name in the table, to avoid duplicity of entry. If the product name is unique in the table then we also validate the entries made by the Admin in other fields of the form. Valid entries are updated to table else update form is displayed again to the Admin. The Flow Chart in the next page gives the diagrammatic representation of the above description View Form: Admin can see any table contents by clicking on the particular table. Corresponding table would be displayed. Add Form The Admin can select the link to the table to which he wants to add an entry. An add form will be displayed. The Admin enters the data into the form. We check the uniqueness of the product name in the table, to avoid duplicity of entry. If the product name is unique in the table then we also validate the entries made by the Admin in other fields of the form. Valid entries are added to table else add form is displayed again to the Admin. The Flow Chart in the next page gives the diagrammatic representation of the above description 45

SASIIT&R, Mohali

FLOW CHART TO ADD FORM

46

SASIIT&R, Mohali

Select Particular Table

Add Form

Enter Data

No

Validation for the unique product name

Yes

No

Validation for other fields

Yes Entry will be added to table

FLOW CHART TO UPDATE FORM

47

SASIIT&R, Mohali

Update Form

Admin Checks for product-id of the product

No

View Table

Yes Enter Product -Id Get Product -Id

Update Form Display

Validation Fields

No

Yes Update

USER ONLINE SHOPPING EXPERIENCES DIAGRAM
48

SASIIT&R, Mohali

USER PURCHASE EXPERIENCE DIAGRAM
49

SASIIT&R, Mohali

DATABASE DESIGN
50

SASIIT&R, Mohali INTRODUCTION A computer database is a structured collection of records or data that is stored in a computer system. A database relies upon software to organize the storage of data. In other words, the software models the database structure in what are known as database models (or data models). The model in most common use today is the relational model. Other models such as the hierarchical model and the network model use a more explicit representation of relationships (see below for explanation of the various database models). Database management systems are usually categorized according to the database model that they support. The data model tends to determine the query languages that are available to access the database. A great deal of the internal engineering of a DBMS, however, is independent of the data model, and is concerned with managing factors such as performance, concurrency, integrity, and recovery from hardware failures. Here in our project we have used the database, SQL Server 2005. Database Name: dbBook The tables used for our project are described below: 1. tbBook: This is a table which maintains the books records. All the information regarding books is stored in this table along with the detailed description, image of book and other information about the books. 2. tbCat: It’s a category table for books. As we know that books lies under different

categories i.e. Computer books, Management books, Law Books, Fashion etc. 3. tbSubCat: This is a Sub-Category table, used for storing subcategories for books

under the main category i.e. for a computer field books could be categorized in Operating System, Networking, Multimedia, Programming Language etc. To maintain all the sub categories for books this table is required. 4. tbBestSeller: It’s a table for maintaining information of best selling books. This

table stores just the IDs of the concerned books. 5. tbEverGreen: This is a table which contains the IDs of books which are in demand

all the time. 6. 51 tbTopBooks: IDs of top books are stored in this table.

SASIIT&R, Mohali 7. tbMem: This is a table which is used to store all the information of users of the

system. This includes the information of Administrator as well as normal users of the system i.e. username, password, first name, last name, address, contact etc. 8. tbCnt: Its a Country table which contains all the countries which are selected by

users at the time of new registration. 9. tbState: It’s a State table to store states under specific countries.

10. tbCty: It’s a City table to maintain information about the cities which lies under the respective states. 11. tbOrder: This is a table for maintaining all the order details, because when some user wants to purchase a book then he/she has to place a order online. 12. tbOrdDetail: It’s a table which stores the order quantity information. 13. tbShippingMethods: This table stores the Shipping Methods for completing the orders. 14. tbFaq: It’s a table for maintaining data about Frequently Asked Questions, because users of the website could ask a question, if any. 15. tbFaqCat: This table contains the data about the Questions as well as categories of FAQs because questions could also lie under different categories. 16. tbBanner: It’s a table which supports the working of banner image of the website. A banner is displayed at the top of the website which is changed as the user refreshes the window. To maintain data for different banners this table is required.

52

SASIIT&R, Mohali DETAILED DESCRIPTION OF DATABASE TABLES

1. BOOKS INFORMATION TABLE

2. BOOKS CATEGORY TABLE

53

SASIIT&R, Mohali

3. BOOKS SUB-CATEGORY TABLE

4. BEST SELLING BOOKS TABLE

54

SASIIT&R, Mohali

5. EVER GREEN BOOKS TABLE

6. TOP BOOKS TABLE

55

SASIIT&R, Mohali

7. MEMBER DETAILS TABLE

8. USER’S COUNTRY TABLE

56

SASIIT&R, Mohali

9. USER’S STATE TABLE

10. USER’S CITY TABLE

57

SASIIT&R, Mohali

11. CUSTOMER ORDER TABLE

12. CUSTOMER ORDER QUANTITY TABLE

58

SASIIT&R, Mohali

13. CUSTOMER SHIPPING DETAILS TABLE

14. USER’S FAQ TABLE

59

SASIIT&R, Mohali

15. USER’S FAQ CATEGORY TABLE

16. WEBSITE BANNER TABLE

60

SASIIT&R, Mohali

STORED PROCEDURES
Stored Procedures help to simplify the database development process by grouping Transact-SQL statements into manageable blocks. Stored procedures are very similar to user-defined functions, but there are subtle differences. Benefits of Stored Procedures


Precompiled execution. SQL Server compiles each stored procedure once and then reutilizes the execution plan. This results in tremendous performance boosts when stored procedures are called repeatedly.



Reduced client/server traffic. If network bandwidth is a concern in your environment, you'll be happy to learn that stored procedures can reduce long SQL queries to a single line that is transmitted over the wire.



Efficient reuse of code and programming abstraction. Stored procedures can be used by multiple users and client programs. If you utilize them in a planned manner, you'll find the development cycle takes less time.



Enhanced security controls. You can grant users permission to execute a stored procedure independently of underlying table permissions.

Structure Stored procedures are extremely similar to the constructs seen in other programming languages. They accept data in the form of input parameters that are specified at execution time. These input parameters (if implemented) are utilized in the execution of a series of statements that produce some result. This result is returned to the calling environment through the use of a recordset, output parameters and a return code. That may sound like a mouthful, but you'll find that stored procedures are actually quite simple. Example: CREATE PROCEDURE updtopbooks ( @topbookid int, @topbooksbookid int ) 61

SASIIT&R, Mohali As update tbtopbooks set TopbooksbookID=@topbooksbookid where TopbookID=@topbookid Project Procedures In our project “Online Book Store”, we have used several stored procedures for making transactions with the database. For each table of our database there are Five Stores procedures used for different operations i.e. Select, Insert, Delete, Update and Search. Following are the details for each stored procedure for respective tables. 1. Books Info. Table a. Select Procedure CREATE PROCEDURE dispbook As select * from tbbook b. Insert Procedure CREATE PROCEDURE insbook ( @booksubcatid int, @booktit varchar(50), @bookshortdesc varchar(200), @bookpub varchar(50), @bookaut varchar(50), @bookisbn varchar(50), @bookprc integer, @bookdisc integer, @bookimg varchar(50), @bookaddate datetime, @bookstatus char(10) ) As insert into tbbook(BooksubcatID,Booktit,Bookshortdesc,Bookpub,Bookaut,BookISBN 62

SASIIT&R, Mohali ,Bookprc,Bookdisc,Bookimg,Bookaddate,Bookstatus) values(@booksubcatid, @booktit, @bookshortdesc, @bookpub, @bookaut,@bookisbn, @bookprc, @bookdisc, @bookimg, @bookaddate, @bookstatus) c. Delete Procedure CREATE PROCEDURE delbook ( @bookid int ) As delete from tbbook where BookID=@bookid d. Update Procedure CREATE PROCEDURE updbook ( @bookid int, @booksubcatid int, @booktit varchar(50), @bookshortdesc varchar(200), @bookpub varchar(50), @bookaut varchar(50), @bookisbn varchar(50), @bookprc integer, @bookdisc integer, @bookimg varchar(50), @bookaddate datetime, @bookstatus char(10) ) As

63

SASIIT&R, Mohali update tbbook set BooksubcatID=@booksubcatid,Booktit=@booktit,Bookshortdesc=@books hortdesc,Bookpub=@bookpub, Bookaut=@bookaut,BookISBN=@bookisbn,Bookprc=@bookprc,Bookdisc =@bookdisc,Bookimg=@bookimg,Bookaddate=@bookaddate, Bookstatus=@bookstatus where BookID=@bookid e. Search Procedure CREATE PROCEDURE findbook ( @bookid int ) As select * from tbbook where BookID=@bookid 2. Books Category Table a. Select Procedure CREATE PROCEDURE dispcat As select * from tbcat b. Insert Procedure CREATE PROCEDURE inscat ( @catnam varchar(50), @cataddate datetime, @catstatus char(10) ) AS insert into tbcat(Catnam,Cataddate,Catstatus) values(@catnam,@cataddate,@catstatus) c. Delete Procedure CREATE PROCEDURE delcat 64

SASIIT&R, Mohali ( @catid int ) AS delete from delcat where CatID=@catid d. Update Procedure CREATE PROCEDURE updcat ( @catid int, @catnam varchar(50), @cataddate datetime, @catstatus char(10) ) AS update tbcat set Catnam=@catnam,Cataddate=@cataddate,Catstatus=@catstatus where CatID=@catid e. Search Procedure CREATE PROCEDURE findcat ( @catid int ) AS select * from tbcat where CatID=@catid 3. Books Sub-Category Table a. Select Procedure CREATE PROCEDURE dispsub As select * from tbsub b. Insert Procedure 65

SASIIT&R, Mohali CREATE PROCEDURE inssub ( @subcatcatid int, @subcatnam varchar(50), @subcataddate datetime, @subcatstatus char(10) ) As insert into tbsub values(@subcatcatid,@subcatnam,@subcataddate,@subcatstatus) c. Delete Procedure CREATE PROCEDURE delsub ( @subcatid int ) As delete from tbsub where SubcatID=@subcatid d. Update Procedure CREATE PROCEDURE updsub ( @subcatid int, @subcatcatid int, @subcatnam varchar(50), @subcataddate datetime, @subcatstatus char(10) ) As update tbsub set SubcatcatID=@subcatcatid,Subcatnam=@subcatnam,Subcataddate=@subc ataddate,Subcatstatus=@subcatstatus where SubcatID=@subcatid e. Search Procedure 66

SASIIT&R, Mohali CREATE PROCEDURE findsub ( @subcatid int ) As select * from tbsub where SubcatID=@subcatid 4. Best Selling Books Table a. Select Procedure CREATE PROCEDURE dispbestseller As select * from tbbestseller b. Insert Procedure CREATE PROCEDURE insbestseller ( @bestsellerbookid int ) As insert into tbbestseller(BestsellerbookID) values(@bestsellerbookid) c. Delete Procedure CREATE PROCEDURE delbestseller ( @bestsellerid int ) As delete from tbbestseller where BestsellerID=@bestsellerID d. Update Procedure CREATE PROCEDURE updbestseller ( @bestsellerid int, @bestsellerbookid int 67

SASIIT&R, Mohali ) As update tbbestseller set BestsellerbookID=@bestsellerbookid where BestsellerID=@bestsellerID e. Search Procedure CREATE PROCEDURE findbestseller ( @bestsellerid int ) As select * from tbbestseller where BestsellerID=@bestsellerID 5. Ever-Green Books Table a. Select Procedure CREATE PROCEDURE dispevergreen As select * from tbevergreen b. Insert Procedure CREATE PROCEDURE insevergreen ( @evergreenbookid int ) As insert into tbevergreen(EvergreenbookID) values(@evergreenbookid) c. Delete Procedure CREATE PROCEDURE delevergreen ( @evergreenid int ) As delete from tbevergreen where EvergreenID=@evergreenid 68

SASIIT&R, Mohali d. Update Procedure CREATE PROCEDURE updevergreen ( @evergreenid int, @evergreenbookid int ) As update tbevergreen set EvergreenbookID=@evergreenbookid where EvergreenID=@evergreenid e. Search Procedure CREATE PROCEDURE findevergreen ( @evergreenid int ) As select * from tbevergreen where EvergreenID=@evergreenid 6. Top Selling Books Table a. Select Procedure CREATE PROCEDURE disptopbooks As select * from tbtopbooks b. Insert Procedure CREATE PROCEDURE instopbooks ( @topbooksbookid int ) As insert into tbtopbooks(TopbooksbookID) values(@topbooksbookid) c. Delete Procedure CREATE PROCEDURE deltopbooks 69

SASIIT&R, Mohali ( @topbookid int ) As delete from tbtopbooks where TopbookID=@topbookid d. Update Procedure CREATE PROCEDURE updtopbooks ( @topbookid int, @topbooksbookid int ) As update tbtopbooks set TopbooksbookID=@topbooksbookid where TopbookID=@topbookid e. Search Procedure CREATE PROCEDURE findtopbooks ( @topbookid int ) As select * from tbtopbooks where TopbookID=@topbookid 7. Members Table a. Select Procedure CREATE PROCEDURE dispmem As select * from tbmem b. Insert Procedure CREATE PROCEDURE insmem ( @memfnam varchar(50), 70

SASIIT&R, Mohali @memlnam varchar(50), @memusrnam varchar(50), @mempwd varchar(50), @memgender varchar(50), @memage int, @memaddline1 varchar(50), @memaddline2 varchar(50), @memcty varchar(50), @memstate varchar(50), @memcnt varchar(50), @mempincode varchar(50), @memcontactno varchar(50), @memstatus char(10), @memaddate datetime, @memrole varchar(50) ) As insert into tbmem(Memfnam,Memlnam,Memusrnam,Mempwd,Memgender,Memage, Memaddline1,Memaddline2,Memcty, Memstate,Memcnt,Mempincode,Memcontactno,Memstatus,Memaddate,Me mrole) values(@memfnam,@memlnam,@memusrnam,@mempwd,@memgender, @memage,@memaddline1,@memaddline2,@memcty, @memstate,@memcnt,@mempincode,@memcontactno,@memstatus,@me maddate,@memrole) c. Delete Procedure CREATE PROCEDURE delmem ( @memid int ) 71

SASIIT&R, Mohali As delete from tbmem where MemID=@memid d. Update Procedure CREATE PROCEDURE updmem ( @memid int, @memfnam varchar(50), @memlnam varchar(50), @memusrnam varchar(50), @mempwd varchar(50), @memgender varchar(50), @memage int, @memaddline1 varchar(50), @memaddline2 varchar(50), @memcty varchar(50), @memstate varchar(50), @memcnt varchar(50), @mempincode varchar(50), @memcontactno varchar(50), @memstatus char(10), @memaddate datetime, @memrole varchar(50) ) As update tbmem set Memfnam=@memfnam,Memlnam=@memlnam,Memusrnam=@memusrna m,Mempwd=@mempwd,Memgender=@memgender,Memage=@memage, Memaddline1=@memaddline1,Memaddline2=@memaddline2,Memcty=@ memcty,

72

SASIIT&R, Mohali Memstate=@memstate,Memcnt=@memcnt,Mempincode=@mempincode, Memcontactno=@memcontactno,Memstatus=@memstatus,Memaddate=@ memaddate,Memrole=@memrole where MemID=@memid e. Search Procedure CREATE PROCEDURE findmem ( @memid int ) As select * from tbmem where MemID=@memid 8. Country Table a. Select Procedure CREATE PROCEDURE dispcnt As select * from tbcnt b. Insert Procedure CREATE PROCEDURE inscnt ( @cntnam varchar(50), @cntstatus char(10), @cntaddate datetime ) As insert into tbcnt(Cntnam,Cntstatus,Cntaddate) values(@cntnam,@cntstatus,@cntaddate) c. Delete Procedure CREATE PROCEDURE delcnt ( @cntid int ) 73

SASIIT&R, Mohali As delete from tbcnt where CntID=@cntid d. Update Procedure CREATE PROCEDURE updcnt ( @cntid int, @cntnam varchar(50), @cntstatus char(10), @cntaddate datetime ) As update tbcnt set Cntnam=@cntnam,Cntstatus=@cntstatus,Cntaddate=@cntaddate where CntID=@cntid e. Search Procedure CREATE PROCEDURE findcnt ( @cntid int ) As select * from tbcnt where CntID=@cntid 9. State Table a. Select Procedure CREATE PROCEDURE dispstate As select * from tbstate b. Insert Procedure CREATE PROCEDURE insstate ( @statecntid int, 74

SASIIT&R, Mohali @statenam varchar(50), @statestatus char(10), @stateaddate datetime ) As insert into tbstate(Statecntid,Statenam,Statestatus,Stateaddate) values(@statecntid,@statenam,@statestatus,@stateaddate) c. Delete Procedure CREATE PROCEDURE delstate ( @stateid int ) As delete from tbstate where Stateid=@stateid d. Update Procedure CREATE PROCEDURE updstate ( @stateid int, @statecntid int, @statenam varchar(50), @statestatus char(10), @stateaddate datetime ) As update tbstate set StatecntID=@statecntid,Statenam=@statenam,Statestatus=@statestatus,Stat eaddate=@stateaddate where Stateid=@stateid e. Search Procedure CREATE PROCEDURE findstate ( @stateid int 75

SASIIT&R, Mohali ) As select * from tbstate where Stateid=@stateid 10. City Table a. Select Procedure CREATE PROCEDURE dispcty As select * from tbcty b. Insert Procedure CREATE PROCEDURE inscty ( @ctystateid int, @ctynam varchar(50), @ctystatus char(10), @ctyaddate datetime ) As insert into tbcty(CtystateID,Ctynam,Ctystatus,Ctyaddate) values(@ctystateid,@ctynam,@ctystatus,@ctyaddate) c. Delete Procedure CREATE PROCEDURE delcty ( @ctyid int ) As delete from tbcty where CtyID=@ctyid d. Update Procedure CREATE PROCEDURE updcty ( @ctyid int, 76

SASIIT&R, Mohali @ctystateid int, @ctynam varchar(50), @ctystatus char(10), @ctyaddate datetime ) As update tbcty set CtystateID=@ctystateid,Ctynam=@ctynam,Ctystatus=@ctystatus,Ctyaddat e=@ctyaddate where CtyID=@ctyid e. Search Procedure CREATE PROCEDURE findcty ( @ctyid int ) As select * from tbcty where CtyID=@ctyid 11. Order Table a. Select Procedure CREATE PROCEDURE disporder As select * from tborder b. Insert Procedure CREATE PROCEDURE insorder ( @ordermemid int, @orderdate datetime, @orderbookamt int, @orderstatus char(10), @orderpaymentmethod varchar(50), @ordershippingcharge int 77

SASIIT&R, Mohali ) As insert into tborder(Ordermemid,Orderdate,Orderbookamt,Orderstatus,Orderpaymentm ethod,Ordershippingcharge) values(@ordermemid,@orderdate,@orderbookamt,@orderstatus,@orderpa ymentmethod,@ordershippingcharge) c. Delete Procedure CREATE PROCEDURE delorder ( @orderid int ) As delete from tborder where OrderID=@orderid d. Update Procedure CREATE PROCEDURE updorder ( @orderid int, @ordermemid int, @orderdate datetime, @orderbookamt int, @orderstatus char(10), @orderpaymentmethod varchar(50), @ordershippingcharge int ) As update tborder set OrdermemID=@ordermemid,Orderdate=@orderdate,Orderbookamt=@orde rbookamt, Orderstatus=@orderstatus,Orderpaymentmethod=@orderpaymentmethod,O rdershippingcharge=@ordershippingcharge 78

SASIIT&R, Mohali where OrderID=@orderid e. Search Procedure CREATE PROCEDURE findorder ( @orderid int ) As select * from tborder where OrderID=@orderid 12. Order Quantity Table a. Select Procedure CREATE PROCEDURE disporddetail As select * from tborddetail b. Insert Procedure CREATE PROCEDURE insorddetail ( @orddetailorderid int, @orddetailqty int ) As insert into tborddetail(Orddetailorderid,Orddetailqty) values(@orddetailorderid,@orddetailqty) c. Delete Procedure CREATE PROCEDURE delorddetail ( @orddetailid int ) As delete from tborddetail where OrddetailID=@orddetailid d. Update Procedure 79

SASIIT&R, Mohali CREATE PROCEDURE updorddetail ( @orddetailid int, @orddetailorderid int, @orddetailqty int ) As update tborddetail set OrddetailorderID=@orddetailorderid,Orddetailqty=@orddetailqty where OrddetailID=@orddetailid e. Search Procedure CREATE PROCEDURE findorddetail ( @id int ) As select * from tborddetail where OrddetailID=@id 13. Shipping Details Table a. Select Procedure CREATE PROCEDURE dispshippingmethods As select * from tbshippingmethods b. Insert Procedure CREATE PROCEDURE insshippingmethods ( @shippingmethodnam varchar(50), @shippingcharges int, @addate datetime ) As 80

SASIIT&R, Mohali insert into tbshippingmethods(Shippingmethodnam,Shippingcharges,Addate) values(@shippingmethodnam,@shippingcharges,@addate) c. Delete Procedure CREATE PROCEDURE delshippingmethods ( @shippingmethodid int ) As delete from tbshippingmethods where ShippingmethodID=@shippingmethodid d. Update Procedure CREATE PROCEDURE updshippingmethods ( @shippingmethodid int, @shippingmethodnam varchar(50), @shippingcharges int, @addate datetime ) As update tbshippingmethods set Shippingmethodnam=@shippingmethodnam,Shippingcharges=@shippingc harges,Addate=@addate where ShippingmethodID=@shippingmethodid e. Search Procedure CREATE PROCEDURE findshippingmethods ( @shippingmethodid int ) As select * from tbshippingmethods where ShippingmethodID=@shippingmethodid 81

SASIIT&R, Mohali

14. FAQ Table a. Select Procedure CREATE PROCEDURE dispfaq As select * from tbfaq b. Insert Procedure CREATE PROCEDURE insfaq ( @faqid int, @faqansnam varchar(50), @faqstatus char(10), @faqaddate datetime ) As insert into tbfaq(FaqID,Faqansnam,Faqstatus,Faqaddate) values(@faqid,@faqansnam,@faqstatus,@faqaddate) c. Delete Procedure CREATE PROCEDURE delfaq ( @faqid int ) As delete from tbfaq where FaqID=@faqid d. Update Procedure CREATE PROCEDURE updfaq ( @faqid int, @faqansnam varchar(50), @faqstatus char(10), @faqaddate datetime 82

SASIIT&R, Mohali ) As update tbfaq set Faqansnam=@faqansnam,Faqstatus=@faqstatus,Faqaddate=@faqaddate where FaqID=@faqid e. Search Procedure CREATE PROCEDURE findfaq ( @faqid int ) As select * from tbfaq where FaqID=@faqid 15. FAQ Category Table a. Select Procedure CREATE PROCEDURE dispfaqcat AS select * from tbfaqcat b. Insert Procedure CREATE PROCEDURE insfaqcat ( @faqnam varchar(50), @faqstatus char(10), @faqaddate datetime ) AS insert into tbfaqcat(Faqnam,Faqstatus,Faqaddate) values(@faqnam,@faqstatus,@faqaddate) c. Delete Procedure CREATE PROCEDURE delfaqcat ( 83

SASIIT&R, Mohali @faqcatid int ) AS delete from tbfaqcat where FaqcatID=@faqcatid d. Update Procedure CREATE PROCEDURE updfaqcat ( @faqid int, @faqcatid int, @faqnam varchar(50), @faqstatus char(10), @faqaddate datetime ) AS update tbfaqcat set faqcatid= @faqcatid, faqnam=@faqnam,faqstatus=@faqstatus,faqaddate=@faqaddate where faqID=@faqid e. Search Procedure CREATE PROCEDURE findfaqcat ( @faqid int ) AS select * from tbfaqcat where faqID=@faqid 16. Website Banner Table a. Select Procedure CREATE PROCEDURE dispbanner As select * from tbbanner b. Insert Procedure 84

SASIIT&R, Mohali CREATE PROCEDURE insbanner ( @imageurl varchar(50), @navigateurl varchar(50), @impression int, @keyword varchar(50), @status char(10) ) As insert into tbbanner(Imageurl,Navigateurl,Impression,Keyword,Status) values(@imageurl,@navigateurl,@impression,@keyword,@status) c. Delete Procedure CREATE PROCEDURE delbanner ( @bannerid int ) As delete from tbbanner where BannerID=@bannerid d. Update Procedure CREATE PROCEDURE updbanner ( @bannerid int, @imageurl varchar(50), @navigateurl varchar(50), @impression int, @keyword varchar(50), @status char(10) ) As

85

SASIIT&R, Mohali update tbbanner set Imageurl=@imageurl,Navigateurl=@navigateurl,Impression=@impression, Keyword=@keyword,Status=@status where BannerID=@bannerid e. Search Procedure CREATE PROCEDURE findbanner ( @bannerid int ) As select * from tbbanner where BannerID=@bannerid

86

SASIIT&R, Mohali

PROJECT SCREENSHOTS

REGISTRATION FORM 87

SASIIT&R, Mohali

BOOKS ENTRY 88

SASIIT&R, Mohali

TOP BOOKS ENTRY FORM 89

SASIIT&R, Mohali

FAQ FORM 90

SASIIT&R, Mohali

REPORTS

91

SASIIT&R, Mohali

REPORT NAME

DESCRIPTION

Login users

Users that are currently login.

Particulars of the users

This displays the information about the users.

Total login users

This displays the total users who logged in at that particular time.

Shipment Report

The report for the user after purchasing the items.

User’s personal Information

This display’s the user personal information.

92

SASIIT&R, Mohali

TEAM STRUCTURE

Project Guide: Our project guide is Ms. Mamta Bhandari, Corporate Trainer, Sebiz Infotech and Mr. Pramod Kumar, Asst. Professor, SASIIT&R under whose guidance we are directing our efforts to conceive the project. Project Coordinator: The project coordinators of the entire project are Gurpreet Singh Khokhar and Sukhwinder Singh. Both of them devoted their full efforts to manage the project development cycle properly. Project Analysts: The system analysts of this project are Sunil Dhawan and Sukhwinder Singh. Both of them devoted their full efforts in gathering the relevant information and analyzing it properly.

93

SASIIT&R, Mohali

SUMMARY
Dynamic web site design is to allows the creation of customized interactive web site. Server-side scripting language is used to build dynamic websites and web applications that allow real-time interaction between the user and content being presented. ASP.NET is a widely-used generalpurpose scripting language that is especially suited for Web development and can be embedded into HTML. Used with SQL 2005, we built a database-driven, dynanmic web application for an online bookstore. There are many things need to be borne in mind to build a robust and efficient web site: • • • web pages design, implementation and maintainence database schema design high availability of web servers capacity

We keep simple business logic throughout our project. However, it can be toned up to use for real life e-commerce (shopping online) web site at following aspects: • • • 94 Transaction control Inventory control Advanced search function

SASIIT&R, Mohali • • • • •

Client side validation of required fields Payment (merchant account) process SSL support Completely cross platform design Email notification function

This project gave us valuable experience in builinding an e-commerce(shopping online) website on web pages and database schema design . By using ASP.NET 3.5 and SQL 2005 database, we built up web pages which dynamically respond HTTP request, with database connection, server-side validation, session handling, online registration, online administration, persistant shopping cart, etc.

BIBLOGRAPHY

NAME OF BOOK
• • • ASP.NET 3.5 ASP.NET C#.NET Fundas Websites

AUTHOR
Unleashed WROX Yashwant Kanetkar http://www.asp.net http://www.gotacoder.com



95

SASIIT&R, Mohali

96



doc_106512389.doc
 

Attachments

Back
Top