Professional Documents
Culture Documents
Bhatti Books
Bhatti Books
Bhatti Books
BHATTI BOOKSHOP
(Session 2001-2003)
Project Advisor
PROF. SYED SALMAN AHMED
Authors
Authors
PREFACE
Books are very important source of information and are valuable
asset. We are students of BS 6th. We made web site for project as
well as for our own knowledge & experience.
In this project report we tried our best to provide all the relevant
material about the website. For that reason, first of all we brief
introduction of the tools used in building this web sites, which
include introduction of dreamweaver, Active Server Pages (ASP)
and Access 2002. We also introduce you to the World Wide Web
(WWW) and HTML. After that we give the list of tools which are
being used in development of web site. These tools include
FrontPage etc.
We hope you will appreciate our work & effort, and this appreciation
will encourage us to work better & great effort in future.
CONTENTS
CHAPTER # 1
INTRODUCTION
a) COMPANY PROFILE
b) NEED FOR SITE
c) BHATTI BOOKSHOP INTRODUCTION
d) DFD OF BHATTI BOOKSHOP
CHAPTER # 2
ACCESS 2002
e) INTRODUCTION TO DATABASE
1. Tables and relationships
2. Queries
3. Forms
4. Data access pages
5. Macros
i. What is macro?
6. Modules
i. What is module?
7. Relationship in databases
ii. How relationship works?
iii. A one-to-many relationship
iv. A many-to-many relationship
v. A one-to-one relationship
vi. Defining relationship
vii. Referential integrity
CHAPTER # 3
ACTIVE SERVER PAGES
a) INTRODUCTION
i. The static internet
c) CLIENT-SIDE SCRIPTING
d) SERVER-SIDE SCRIPTING
e) ADVANTAGES
CHAPTER # 4
DREAMWEAVER
a) DREAMWEAVER OVERVIEW
b) DESIGNING WEB PAGES
c) ACCESSIBILITY AND DREAMWEAVER
d) WHAT'S SPECIAL IN DREAMWEAVER?
i. Enhanced code editing
ii. Easier page design
iii. Improved integration
iv. Streamlining your workflow
v. Common user interface
CHAPTER # 5
WORLD WIDE WEB
a) WWW
b) HYPERTEXT MARKUP LANGUAGE
c) HYPERTEXT TRANSFER PROTOCOL
i. URL
ii. Relative URL
iii. E-Mail
d) WEB
i. Internet webs
ii. Intranet web
iii. Make it interactive
CHAPTER # 6
SOURCE CODE OF PROJECT
CHAPTER # 7
CONCLUSION
CONCLUSION
FUTURE WORK
INTRODUCTION
COMPANY PROFILE
• Home
• Shopping Cart
• Urdu Books
• Pakistan
• Islamic Books
• Downloads
• Support
• Chat
• Sign-in
• Search
Home
Shopping Cart
Urdu Books
Islamic Books
Downloads
Support
Chat
Sign-in
Search
• Title of book
• Author of book
• Category of book
BHATTI
BOOKSTORE
WEBSITE OF
BOOKSTORE
SHOPPING ENGLISH
URDU BOOKS DOWNLOAD SEARCH SUPPORT
CART BOOKS
SELECTED
ITEMS
LIST OF BOOKS SEARCH BY SEARCH BY SEARCH BY
WITH TITLE CATEGORY AUTHOR
INFORMATION
ADD SELECTED
BOOK TO CART
PLACE ORDER
CONFIRM
BANK
ORDER
BHATTI
BOOKSHOP
DATABASE
ACCESS 2002
Access 2002
Databases: What they are and how they work
For example, suppose the phone numbers of your suppliers are stored in various
locations: in a card file containing supplier phone numbers, in product information
files in a file cabinet, and in a spreadsheet containing order information. If a
supplier's phone number changes, you might have to update that information in
all three places. In a database, however, you only have to update that
information in one place — the supplier's phone number is automatically updated
wherever you use it in the database.
To store your data, create one table for each type of information that you track.
To bring the data from multiple tables together in a query, form, report, or data
access page, define relationships between the tables.
Queries
To find and retrieve just the data that meets conditions that you specify, including
data from multiple tables, create a query. A query can also update or delete
multiple records at the same time, and perform predefined or custom calculations
on your data.
Forms
To easily view, enter, and change data directly in a table, create a form. When
you open a form, Microsoft Access retrieves the data from one or more tables,
and displays it on the screen with the layout you choose in the Form Wizard, or
with the layout that you created on your own in Design view.
• A table displays many records at the same time, but you might have to
scroll to see all of the data in a single record. Also, when viewing a table,
you can't update data from more than one table at the same time.
• A form focuses on one record at a time, and it can display fields from
more than one table. It can also display pictures and other objects.
• A form can contain a button that prints, opens other objects, or otherwise
automates tasks.
Reports
To analyze your data or present it a certain way in print, create a report. For
example, you might print one report that groups data and calculates totals, and
another report with different data formatted for printing mailing labels.
Macros are a set of actions that you can create to help you to automate common
tasks. By using groups of macros, you can perform several tasks at once.
What is a macro?
A macro is a set of one or more actions that each perform a particular operation,
such as opening a form or printing a report. Macros can help you to automate
common tasks. For example, you can run a macro that prints a report when a
user clicks a command button.
• When you create a macro, you enter the actions you want to carry out in
this portion of the Macro window.
• You can specify arguments for an action in this portion of the window.
What is a module?
• Object box
• Procedure box
• Declarations
• Procedures
• Procedure View button
• Full Module View button
Relationships in a database
After you've set up different tables for each subject in your Microsoft Access
database, you need a way of telling Microsoft Access how to bring that
information back together again. The first step in this process is to define
relationships between your tables. After you've done that, you can create
queries, forms, and reports to display information from several tables at once.
In the previous example, the fields in four tables must be coordinated so that they
show information about the same order. This coordination is accomplished with
relationships between tables. A relationship works by matching data in key
fields — usually a field with the same name in both tables. In most cases, these
matching fields are the primary key from one table, which provides a unique
identifier for each record, and a foreign key in the other table. For example,
employees can be associated with orders they're responsible for by creating a
relationship between the EmployeeID fields.
A one-to-many relationship
A many-to-many relationship
A one-to-one relationship
In a one-to-one relationship, each record in Table A can have only one matching
record in Table B, and each record in Table B can have only one matching
record in Table A. This type of relationship is not common, because most
information related in this way would be in one table. You might use a one-to-one
relationship to divide a table with many fields, to isolate part of a table for security
reasons, or to store information that applies only to a subset of the main table.
For example, you might want to create a table to track employees participating in
a fundraising soccer game. Each soccer player in the Soccer Players table has
one matching record in the Employees table.
Defining relationships
The kind of relationship that Microsoft Access creates depends on how the
related fields are defined:
You can also create a relationship between a table and itself. This is useful in
situations where you need to perform a Lookup within the same table. In the
Employees table, for example, you can define a relationship between the
EmployeeID and ReportsTo fields, so that the ReportsTo field can display
employee data from a matching EmployeeID.
Referential integrity
• The matching field from the primary table is a primary key or has a unique
index.
• The related fields have the same data type. There are two exceptions. An
AutoNumber field can be related to a Number field with a FieldSize
property setting of Long Integer, and an AutoNumber field with a FieldSize
property setting of Replication ID can be related to a Number field with a
FieldSize property setting of Replication ID.
• Both tables belong to the same Microsoft Access database. If the tables
are linked tables, they must be tables in Microsoft Access format, and you
must open the database in which they are stored to set referential
integrity. Referential integrity can't be enforced for linked tables from
databases in other formats.
• You can't enter a value in the foreign key field of the related table that
doesn't exist in the primary key of the primary table. However, you can
enter a Null value in the foreign key, specifying that the records are
unrelated. For example, you can't have an order that is assigned to a
customer that doesn't exist, but you can have an order that is assigned to
no one by entering a Null value in the CustomerID field.
• You can't delete a record from a primary table if matching records exist in
a related table. For example, you can't delete an employee record from
the Employees table if there are orders assigned to the employee in the
Orders table.
• You can't change a primary key value in the primary table, if that record
has related records. For example, you can't change an employee's ID in
the Employees table if there are orders assigned to that employee in the
Orders table.
Features that are new in Microsoft Access 2002 are available when you use a
Microsoft Access 2000 file in Access 2002 file format, but aren't available when
you use the same file in Access 2000. These features include the following:
In most cases, you can use an Access file that implements an Access 2002
feature in Access 2000 without any problems. However, if you open an Access
2000 file in Access 2002 and create a Visual Basic procedure that uses an
object, function, property, method, or argument that is available only in Access
2002, you'll receive a compile error when you open the Access file in Access
2000.
Using Microsoft Access, you can manage all your information from a single
database file. Within the file, you can use:
In the early days of the World Wide Web, all information served to the client’s
browser was static. In other words, the content for page A served to client 1 was
exactly the same as the content for page A served to client 2. The web server did
not dynamically generate any part of the site’s contents but simply served
requests for static HTML pages loaded from the web server’s file system and
sent to the requesting client. There was no interactivity between the user and the
server. The browser requested information, and the server sent it. Although the
static Internet quickly evolved to include graphics and sounds, the Web was still
static, with little interactivity and very little functionality beyond that provided by
simple hyper linking.
ASP encapsulates the properties and methods of the following six built-in
objects:
• Application
• ObjectContext
• Request
• Response
• Server
• Session
These objects are part of the ASP.DLL and are always available to your ASP
applications.
represents your ASP application itself. This object is universal to all users
attached to an application, and there is only one Application object for all users.
The Application object has two events, Application_OnStart and
Application_OnEnd, that fire when the first user requests a page from your
application and when the administrator explicitly unloads the application using
the Microsoft Management Console respectively.
The OnStart event can be used to initialize information needed for every aspect
of the application. The OnEnd event can be used to do any custom cleanup work
after the end of your application. You can store any variable type with
application-level scope. These variables hold the same value for every user of
the site.
Is actually part of the Microsoft Transaction Server and is only interfaced through
ASP. The ObjectContext object allows you to create transactional Active Server
Pages. The functions in these pages that support transactions will succeed as a
single unit or fail completely. If your application requires the use of functions that
do not natively support transactions (notably file access), you must write custom
code to handle success or failure of these functions.
Represents the way you interact with the client’s HTTP request. This is one of
the most important objects in the ASP object model. It is through the use of the
Request object that you access both HTML form-based data and parameters
sent over the address line. In addition, you can use the Request object to receive
HTTP cookie information and client certificate information from your users.
Finally, the ServerVariables collection of the Request object gives you access to
all the information in the HTTP request header. This information contains (in
addition to the cookie information) other relevant data describing the client
machine, its connection, and its actual requests. The ServerVariables collection
is equivalent to environment variables in traditional CGI applications.
Represents your access/control over the HTTP response sent back to the user.
Through the Response object, you can send cookies to the client and set if and
when content should expire. In addition to this, the Response object is your route
to completely controlling how data is sent to the client. Is it buffered before
sending? Is it sent as it is constructed? Finally, the Response object allows you
to seamlessly redirect the user from one URL to another.
Gives you access to the web server itself. This object contains many utility
features that you use in almost every application. Through the Server object, you
can set the timeout variable for your scripts (how long the web server will attempt
to serve a script before serving an error note instead). You also can use the
Server object to map a virtual path to a physical path or encode information for
sending over the address line. The most important method of the Server object,
however, is its CreateObject method, which enables you to create instances of
server-side components. You will use this method any time you require
functionality outside that provided by the built-in objects. Database access, for
example, is handled by various ActiveX Data Objects that must be instantiated
on the server before being used.
Holds information that is unique to a specific user’s current session on the web
server. Each user session is identifiable through the use of a unique cookie that
is sent to the user every time the user makes a request. The web server starts a
session for every new user that requests a page from your web application. This
session stays active by default until 20 minutes after the user’s last request or
until the session is explicitly abandoned through code.
Client-Side Scripting
The Hypertext Markup Language, or HTML, provides for very detailed formatting
of static textual content. This content can contain images, tables, and carefully
formatted text and hyperlinks, making for a very powerful medium through which
to present information. However, aside from the very low level interactivity of
hyperlinks and their ability to move the user from one page to another in a stream
of information flowing from one page to another, HTML by itself allows for no true
interactivity. HTML does not allow the web page to react to user input in any way
beyond navigating to another page. HTML is an excellent way to allow for the
presentation of information but does not allow for the interactivity required to
transform web pages from an information medium to a dynamic web application
solution. Netscape Communications along with Sun Microsystems created a
solution called LiveScript that allowed for the inclusion of limited programming
instructions that reside in web pages viewed using the Netscape Navigator
browser on the client machine. This programming language was limited in its
ability to interact with the user’s machine outside the browser and slowly over an
evolving process was made safe and secure. You could not use LiveScript
programming instructions on the client machine to undermine the security innate
to the Netscape Navigator browser. LiveScript, in accordance with the marketing
frenzy surrounding Java, was quickly renamed to JavaScript. Unfortunately, this
renaming has led, errone- ously, to its being thought of by many as a subset of
the powerful Java language, although only its syntax is similar to that of Java.
HTML was enlivened. Using JavaScript, you could build forms and mortgage
calculators and all sorts of interactive web pages. The only drawback was that
your browser had to be a scripting host for this scripting language. But that being
said, web content quickly went from being static and largely simple to being
interactive and alive.
Before JavaScript, all interaction with the user and all reaction on the part of the
web server required the use of sophisticated web server applications and higher
end web server machines. With the advent of JavaScript, the user’s machine was
now added to the equation, making it possible to offload some of this
computational power onto the client, whereas before it had rested solely on the
server.
Not to be outdone, Microsoft Corporation quickly created a scripting language of
its own: Visual Basic, Scripting Edition, or VBScript for short. VBScript is a subset
of the Visual Basic for Applications language and, like JavaScript, it allows for the
creation of interactive web pages. Unlike JavaScript, whose syntax was similar
to? that of Java (and thus similar to that of C++), the syntax of VBScript was
exactly that of Visual Basic. If you knew Visual Basic (and many, many people
do), you already had a good grasp on VBScript. Furthermore, Microsoft also
created its own version of JavaScript called JScript that was similar but not
identical to its predecessor.
Today (only a few short years later), JavaScript has undergone a transformation
into a new language built using submissions from both Netscape and Microsoft.
This new language is called ECMAScript (from European Computer
Manufacturers Association). According to David Flanagan in JavaScript: The
Definitive Guide, this name was chosen specifically because it had no relation to
either parent company and it had none of the marketing glitz of Java artificially
associated with it. Both Netscape and Microsoft have continued to help
ECMAScript (still called JavaScript by everyone except members of the
European Computer Manufacturers Association) evolve. For more details on the
different browsers’ implementations, Flanagan provides excellent coverage in his
book.
Although the preceding discussion suggests that only JavaScript and VBScript
exist, the web browser actually allows for a multitude of scripting language
alternatives. You could even build your own. Some of the other languages
include PerlScript, Python, and Awk, with PerlScript being the most popular after
JavaScript and VBScript.
One thing all scripting languages have in common, however, is how they are
included on a web page and how the browser recognizes them as script and not
as HTML. All script is surrounded by matching <SCRIPT></SCRIPT> tags, as
the This can be any language that your browser supports. JavaScript is probably
the safest bet for client-side scripting, since VBScript is supported only with the
use of plugins in non-Microsoft browsers, and other scripting languages are not
commonly installed on user machines.
Server-Side Scripting
The last section served to introduce you to client-side scripting: how to include
scripting code in the web pages that are viewed by your users. Now you will learn
how to bring the power of scripting to the server and harness it to dynamically
create HTML in reaction to user requests.
As you will recall from the last chapter, when the browser makes a request for a
file ending with the .ASP file extension, IBIS knows to bring ASP.DLL into play to
interpret the ASP code in the file. Once interpreted, the results of this code are
placed into the document, which is a simple HTML document before it is sent to
the user.
How does ASP.DLL know which code to interpret? The answer to this question is
the key to executing code on the server. ASP.DLL interprets all code in a file
with the .ASP file extension) that’s delimited with <%…%> as being ASP code.
There is another way to delineate server-side code that I’ll cover in a moment.)
IIS pulls the file from the file system into its memory. Recognizing the .ASP
extension from the settings in the Management Console, it uses ASP.DLL to read
and interpret the file. Once interpreted, IIS sends the final result down to the
requesting client browser. IIS handles all the HTTP traffic. ASP.DLL only
interprets server-side code, pulling in the DLL of the appropriate scripting engine
when necessary. Response Object. For now, recognize it as one way of writing
information from the portion of the script that is interpreted on the server to the
portion of HTML that will be displayed on the browser. It is important to recognize
this for what it is. There is no magic here. We are simply capturing the HTTP
request. Then ASP.DLL interprets some code and alters the HTTP response that
is sent back to the client.
ASP.DLL is an ISAPI filter that alters the resulting HTTP response stream in
reaction to information in the HTTP request combined with code in the requested
document.
The Response.Write method call is one way of inserting code into the HTML
stream that is sent back to the client, but there is a shortcut for this method call:
the <%=…%> delimiters. Note the inclusion of the equal sign (=). The equal sign
is what differentiates this as a shortcut call to the Response.Write method and
not simply more ASP code to interpret.
The <%=…%> delimiters allow for some subtle effects that can allow you to
produce some powerful server-side/client-side HTML combinations. Using the <
%=…%> delimiters is the same as using the Write method of the Response
object. It simply inserts into the HTML stream whatever is between the opening <
%= and the closing %>. If the content between the delimiters represents a
variable, that variable’s value is inserted into the HTML stream. If the content is a
call to a function, the result of the function call is inserted into the HTML stream.
With the careful use of these delimiters.
Advantages of ASP
There are different tools available in market for web development. I.e.
JSP, CGI etc. every tool has its own importance and benefits. ASP has certain
advantages over them:-
Dreamweaver includes many coding tools and features: an HTML, CSS, and
JavaScript reference, a JavaScript Debugger, and code editors (the Code view
and Code inspector) that allow you to edit JavaScript, XML, and other text
documents directly in Dreamweaver. Macromedia's Roundtrip HTML technology
imports HTML documents without reformatting the code—and you can set
Dreamweaver to clean up and reformat HTML when you want it to.
Dream weaver’s visual editing features also let you quickly add design and
functionality to your pages without writing a line of code. You can view all your
site elements or assets and drag them from an easy-to-use panel directly into a
document. Streamline your development workflow by creating and editing images
in Macromedia Fireworks, then importing them directly into Dreamweaver, or by
adding Flash objects you create directly in Dreamweaver.
Most Web design projects start with storyboards or flowcharts that are turned into
sample pages. Use Dreamweaver to create mock-up sample pages as you work
toward a final design. Mock-ups usually show the design layout, site navigation,
technical components, themes and color, and graphic images or other media
elements.
Macromedia supports the creation of great Web experiences that are accessible
to everyone, including those with disabilities. We encourage the implementation
of international standards to guide developers of accessible sites, including the
guidelines offered by the World Wide Web Consortium (W3C). Many government
policies on Web accessibility, including those of the United States, reference
W3C guidelines. W3C guidelines on Web content encourage developers to adopt
design and coding practices for accessibility, many of which are robustly
supported by Macromedia products. For more information on W3C guidelines,
please consult the Web Content Authoring Guidelines.
• The Dreamweaver toolbar allows you to manage how you view a page—
Design view, Code view, or a view of both code and design. The toolbar
provides easy access to commonly used features such as Preview in
Browser and Design Notes. See Toolbar
• Code view provides a new way to view HTML source code directly in the
Dreamweaver Document window. See Opening the Code view (or Code
inspector). You can also edit non-HTML documents such as JavaScript
files and XML files directly in Dream weaver’s Code view. See Inserting
scripts.
• Integrated code editors Dreamweaver now has integrated, state-of-the-
art code editors—the Code view and the Code inspector. You can set
word wrapping, code indenting, live syntax coloring, and more from the
Options menu in either of these editors. See Setting Code view (or Code
inspector) options.
• The Reference panel is a quick reference tool for HTML, JavaScript, and
CSS. It provides information about the specific tags you are working with
in the Code view (or Code inspector). See Using Dream weaver’s
Reference panel.
• The Code Navigation pop-up menu allows you to select code for
JavaScript functions in a page; by using this menu, you can quickly
navigate JavaScript code while working in Code view. See Viewing script
functions.
• The JavaScript Debugger lets you debug JavaScript document while in
Dreamweaver. For example, you can set breakpoints to control the code
you want to examine. See JavaScript Debugger overview.
Easier page design
• Layout view lets you quickly design your Web pages by drawing boxes
(tables or cells) to which you can add content. See Drawing layout cells
and tables.
• Improved templates make it easier for you to identify the editable regions
in a template file. Templates now display a tab that contains the editable
region's name and a bounding rectangle. See Creating templates.
• CSS style sheets can now be defined as soon as you create a new style.
You can also easily attach an existing CSS style sheet with a button in the
CSS Styles panel. See Using CSS style sheets.
Improved integration
• Flash buttons and Flash text are now built right into Dreamweaver. You
can pick from a set of predefined Flash buttons and insert them into your
document or have your Flash designer create custom button templates for
you. See Using Flash button objects and Using Flash text objects.
• Roundtrip slicing lets you work seamlessly between Dreamweaver and
Fireworks 4. You can edit and update images and HTML tables you import
from Fireworks. You can also edit in Dreamweaver or Fireworks and have
the changes preserved in both places. See Editing Fireworks files placed
in Dreamweaver.
• The Web-safe color picker allows you to easily match colors with
graphics. With just one click, you can select a color from anywhere on the
desktop and the color picker snaps to the nearest Web-safe color. See
Working with colors.
• The Assets panel allows you to manage your site's assets. You can see
all the images, colors, external URLs, and scripts, as well as Flash,
Shockwave, QuickTime, template, and library items in a central location.
Preview assets, and then drag them right into place on your HTML
document. Save commonly used assets in a favorites list and reuse them
across sites. See Using the Assets panel and Using favorite assets.
• Improved Design Notes let you attach notes to a file so you can track
changes or communicate about development issues with other members
of your team. You can insert and view comments directly in Dream
weaver’s Site window. See About Design Notes and Using reports to
improve workflow.
• Integrated e-mail allows you to communicate with team members. When
a file is checked out by someone else, you can now click on the team
member's name to send an e-mail message. See Setting up the Check
In/Check Out system.
• Site reporting lets you use several predefined reports to test common
HTML document problems, such as untitled documents or missing alt
tags. You can also write custom reports to suit your needs, display report
results, and open problem files within the Report results window. See
Setting up the Check In/Check Out system and Creating reports.
• SourceSafe integration If you own SourceSafe, you can now check files
into and out of SourceSafe while working in Dreamweaver. See Using
Dreamweaver with Visual SourceSafe.
• WebDAV integration now use Dreamweaver to transfer files using the
WebDAV protocol. See Using Dreamweaver with the WebDAV protocol.
• The Extension Manager easily install extensions with a single click. Visit
the Macromedia Exchange and download useful extensions to make your
job easier. See Adding extensions to Dreamweaver.
The Assets panel provides access to all of the assets in your site. Macromedia
Dreamweaver provides two special "linked" categories of assets: templates and
libraries. A page that uses a linked asset is automatically updated when you
change the linked asset.
Dreamweaver templates and libraries can help you create Web pages with a
consistent design. Using templates and libraries also makes it easier to maintain
your Web site, since you can redesign your site and change hundreds of pages
in seconds.
A template is a document you can use to create multiple pages that share the
same layout. When you create a template, you can indicate which elements of a
page should remain constant (no editable, or locked) in documents based on that
template, and which elements can be changed.
For example, if you're publishing an online magazine, the masthead and overall
layout probably won't change from one issue to the next, or even from one story
in the magazine to the next, but the title and content of each story will be
different. A designer can create the layout of a story page for the magazine, with
placeholder text where the story's title and contents will be (and with those
regions marked as editable); the designer can then save that layout as a
template. The person putting together a new issue of the magazine creates a
new page based on the template, and replaces the placeholder text with the
actual title and text of the new story.
You can modify a template even after you've created documents based on it.
When you modify a template, the locked (no editable) regions in documents that
are based on the template are updated to match the changes to the template.
Note: If you open a template file, you can edit everything in that file, whether it's
marked as editable or locked. If you open a document that is based on a
template file, you can edit only the regions that are marked as editable. So the
terms editable and locked refer to whether a region is editable in a document
based on a template, not to whether the region is editable in the template file
itself.
Templates are best for situations in which you want a set of pages to have an
identical layout—where you want to design the complete final layout for a set of
pages first, and then add content later. If you simply want your pages to have the
same headers and footers, with different layouts in between, use library items to
store the headers and footers. (Library items are stored page elements that you
can reuse in multiple pages; as with templates, you can update all the pages that
use a library item whenever you change the item's contents. For more
information, ) It's important to note that for pages created with templates, you
can't convert tables to layers or layers to tables.
Note: Using a template may limit your later changes to design and layout. If you
intend to make major layout changes to your pages later, you may want to use
library items instead of templates.
1. Server-side includes can be used only for sites that are viewed from a
server, not for sites that are viewed on a local system without a server.
They can be seen only on servers that are configured to process server-
side includes. (Ask your webmaster or system administrator whether your
Web server supports server-side includes.)
2. Library items can be used on sites that are viewed locally as well as those
that reside on a server. On sites that are viewed locally, without a server,
you must use library items rather than server-side includes.
WORLD WIDE WEB
World Wide Web (www)
The World Wide Web is the most recent information/communication
service on the Internet. The two of the fundamental differences between the www
and other services are as follows:
HYPERTEXT:
The web server can run programs and return results to the browser.
The web server can receive information that you enter into a browser
application and pass this information for processing by other programs stored
on the server.
This program that the web server runs is called the “GATEWAYS”
programs because they often provide a gateway between the web server and
another information resource on the server’s computer.
URL
A URL is an address that identifies or points to a specific item stored on a
server application on a network. The URL location includes the drive letter A, B
etc and the sequence of folders and subfolders. The URL also specifies the
name of the server computer and the protocol that is used to a phrase in a text
document or a table or query in a database.
To build a URL for the HTTP protocol arrange the three piece of
information in reverse order like this:
http://servername/path/filename
Each communication protocol may have its own URL syntax. For example
lets take a look at the mailto:protocol for E-mail. A typical E-mail for the http
protocol has the following syntax:
Mailto: Aamir037@hotmail.com
RELATIVE URL
When a web is created with hyper links, most of the links are to other file
in the same web. For creating a new link in the same file it is not necessary to
specify the entire URL, instead a relative URL that gives the path and file name
of the file relative to the current page. The relative path includes directions from
the current page of the file including whether to go up or down folder levels. The
below mentioned table shows examples of URL, when a link to a file in another
web on the Internet is created that FrontPage editor uses the absolute URL.
RELATIVE DESCRIPTION
PATH+FILE
Meeting.htm Meeting.htm is in the current folder
INBOX
OUTBOX
SEND ITEMS
RECEIVED ITEMS
DRAFTS
THE WEB
A web is a collection of pages containing any sort of information or
introduction to a product etc. published on to the World Wide Web through
FrontPage or Internet explorer, vice versa. Webs are of two types.
INTERNET WEBS:
The web, which is open to all and destined for the public Internet, will be
competing with millions of other webs. The understanding theme of any Internet
web is that the viewer is and active explorer.
INTERANET WEB:
MAKE IT INTERACTIVE:
CATEGORIES EXAMPLES
INFORMATION News library database, educational sites, online
courses, and medical databases.
COMMERCE Corporate presence sites, advertising, marketing
and production information, sales of product and
services.
COMMUNITY Online newsletters, legislation databases.
ORGANIZATION
PERSONAL Biographical webs, special interests hobbies.
SPECIAL Travel sports, science and food.
DELIVERY
TOPICS
The Internet
The Internet is named after the Internet Protocol, the standard communications protocol
used by every computer on the Net. The Internet can powerfully leverage your ability to
find, manage, and share information. More information is provided below:
The conceptual foundation for creation of the Internet was significantly developed by
three individuals and a research conference, each of which changed the way we thought
about technology by accurately predicting its future:
• Vannevar Bush wrote the first visionary description of the potential uses
for information technology with his description of the "memex" automated
library system.
• Norbert Wiener invented the field of Cybernetics, inspiring future
researchers to focus on the use of technology to extend human
capabilities.
In 1957, the Soviet Union launched the first satellite, Sputnik I, triggering US President
Dwight Eisenhower to create the ARPA agency to regain the technological lead in the
arms race. ARPA appointed J.C.R. Licklider to head the new IPTO organization with a
mandate to further the research of the SAGE program and help protect the US against a
space-based nuclear attack. Licklider evangelized within the IPTO about the potential
benefits of a country-wide communications network, influencing his successors to hire
Lawrence Roberts to implement his vision.
Roberts led development of the network, and based it on the new and powerful idea of
packet switching, first discovered by Paul Baran at RAND, and independently a few
years later by Donald Davies at the UK National Physical Laboratory. A special
computer called an Interface Message Processor was developed to realize the design,
and the ARPANET went live in early October, 1969. The first communications were
between Leonard Kleinrock's research center at the University of California at Los
Angeles, and Douglas Engelbart's center at the Stanford Research Institute.
The first networking protocol used on the ARPANET was the Network Control Program.
In 1983, it was replaced with the TCP/IP protocol developed by Bob Kahn, Vinton Cerf,
and others, which quickly became the most widely used network protocol in the world.
In 1990, the ARPANET was retired and transferred to the NSFNET. The NSFNET was
soon connected to the CSNET, which linked Universities around North America, and
then to the EUnet, which connected research facilities in Europe. Thanks in part to the
NSF's enlightened management, and fueled by the popularity of the web, the use of the
Internet exploded after 1990, causing the US Government to transfer management to
independent organizations starting in 1995.
Geographic Distribution
The key feature of the Internet is that once you have connected to any part of it, you can
communicate with all of it. All of the net's technologies -- web, newsgroups, email,
mailing lists, IRC, MUDs -- enable geographically distributed groups of people to
communicate who otherwise couldn't do so. This new, powerful communication media
has interconnected our world, and created an electronic global village.
The Internet is having the same effect on our civilization as previous inventions that have
dramatically expanded our geographic communication reach, making the world smaller:
• Boats
• Horses
• Roads
• Books
• Printing presses
• Railroads
• Typewriters
• Telegraphs
• Cars
• Amateur radios
• Telephones
• Citizen band radio
• Satellites
The Internet is the latest and most powerful such invention, with a current reach to every
corner of the globe, and now moving into space.
SOURCE CODE OF PROJECT
Home Page:-
Urdu Books Home Page:-
Pakistani English Books Home Page:-
Books Preview:-
you can add the book to the shopping cart by clicking on the appropriate link shown in
the above image. This will lead you to the shopping cart.
Logon:-
<!--#include file="header.inc"-->
<% @language=vbscript %>
<%
‘----------------formvalidate.asp------------------‘
if(trim(request("txtname"))="" or trim(request("txtaddress"))="" or
trim(request("txtcity"))="" or trim(request("txtstate"))="" or trim(request("txtzip"))="" or
trim(request("countrycode"))="" or trim(request("txtphone"))="" or
trim(request("txtlogin"))="" or request("txtpass")="" or request("txtrepass")="" or
request("txtpin")="") then
response.write("<font face=verdana size=4>form not filled completely</font>")
response.end
%>
<br><input type=button value=Back onClick="history.go(-1)" id=button1 name=button1>
<%
elseif (request("txtpass") <> request("txtrepass")) then
response.write(“Passwords not same”)
response.end
%>
<br><input type=button value=Back onClick="history.go(-1)" id=button2 name=button2>
<%
end if
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
pincode=clng(request("txtpin"))
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
rs.open "select * from bhatti_bank where pincode=" & pincode,cn
<!--#include file="header.inc"-->
<% @language=vbscript %>
<html><head><link href="index2.css" rel="stylesheet" type="text/css"></head>
<%
‘---------------------bankvalidate.asp-----------------------‘
if(trim(request("txtname"))="" or trim(request("txtcard"))="" or
trim(request("txtbalance"))="") then
response.write("<font face=verdana size=4>Form not filled completely</font>")
%>
<br><input type=button value=Back onClick="history.go(-1)">
<%
response.end
end if
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
set rs=cn.execute ("select creditcardno from bhatti_bank where creditcardno='" &
request("txtcard") & "'")
do while not rs.eof
response.write("<font face=verdana size=4>Another user already has this credit card
number</font><br>")
response.write("<input type=button value='Back to Bank Form' onClick='history.go(-
1)'>")
response.end
loop
rander=clng(request("txtcard"))
bal=clng(request("txtbalance"))
if(rander > 9999) then
rander= (rander + bal) * 19 - 167 + 1327
else
rander= (rander + bal) * 190 - 1617 + 135427
end if
set rs=cn.execute ("select max(userid) as max_userid from bhatti_bank")
session("uid")=rs("max_userid") +1
set rs=cn.execute("insert into bhatti_bank(userid,cardholdername,creditcardno,
balance,expyear,expmonth,pincode) values(" & session("uid") & ",'" & request("txtname")
& "','" & request("txtcard") & "'," & clng(request("txtbalance")) & ",'" & request("selmonth")
& "','" & request("selyear") & "'," & rander & ");")
response.write("<font face=verdana size=4>Account Created</font>")
response.write("<br><font face=verdana size=4> your pin code is: " & rander &
"</font>")
response.write("<br><font face='Verdana, Arial, Helvetica, sans-serif' size='2'><a
href='userform.asp'>Back to Registration Form</a></font>")
%>
<!--#include file="tail.inc"-->
</html>
Shopping Cart:-
<!--#INCLUDE FILE="header.inc"-->
<link type=text/css rel="stylesheet" href="index2.css">
<% @language=vbscript %>
<%
‘-----------------------shoppingcart.asp-----------------------------‘
if session("basketid")="" then
response.write(“No user logon”)
response.end
end if
response.write("<h1 align=center>Shopping cart</h1>")
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
rs.open "select * from shopping_cart where basketid=" & session("basketid"),cn
qty=5
%>
i=1
%>
<% do while not rs.eof
response.write(quantity)
qty2=1
totalprice =rs("price") * rs("quantity")
grandtotal=totalprice+grandtotal
qty="qty" & cstr(i)
%>
<tr>
<td bordercolor="#FFFFFF" width="63%"> <font face="Verdana, Arial, Helvetica,
sans-serif" size="2">
<% =rs("bookname") %>
</font></td>
<td bordercolor="#FFFFFF" width="10%"> <font face="Verdana, Arial, Helvetica,
sans-serif" size="2">
<input type=text name="<% =qty %>" value=<% =rs("quantity") %> size =4>
</font></td>
<td bordercolor="#FFFFFF" width="10%"> <font face="Verdana, Arial, Helvetica,
sans-serif" size="2">$
<% =rs("price") %>
</font></td>
<td bordercolor="#FFFFFF" width="10%"> <font color="#CC3300"><b><font
face="Verdana, Arial, Helvetica, sans-serif" size="2">$
<% response.write(totalprice) %>
</font></b></font></td>
<td bordercolor="#FFFFFF" width="7%"> <font face="Verdana, Arial, Helvetica,
sans-serif" size="2"><a href="remcart.asp?bookid=<% =rs("bookid") %>">Remove</a>
</font></td>
</tr>
<%
i=i+1
rs.movenext
loop
%>
<tr>
<td colspan="5" height="2" bordercolor="#FFFFFF">
<p align=right> <font size="2" face="Verdana, Arial, Helvetica, sans-
serif"><b>Grand
Total:</b>
<% response.write(grandtotal) %>
</font>           
<input type=submit value="Update">
</td>
</tr>
</table>
</form>
<form name=f2 method=get action=orderconfirm.asp>
<p align=center>
<input type=submit value="Confirm Order">
  
</form>
Confirming Order:-
<!--#include file="header.inc"-->
<% @language=vbscript %>
<%
‘--------------------orderconfirm.asp----------------------‘
dim ccardno
dim choldername
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
rs.open "select * from bhatti_bank where userid=" & cint(session("userid")), cn
balance=rs("balance") - session("grandtotal")
ccardno=rs("creditcardno")
choldername=rs("cardholdername")
if (rs("balance") < session("grandtotal")) then
response.write("<font face=verdana size=5>Balance is not sufficient for this
order</font>")
response.write("<font face=verdana size=5><br>Balance is " & rs("balance") & "
</font>")
response.end
else
set rs= cn.execute(" select * from shopping_cart where basketid=" &
session("basketid"),cn)
i=0
do while not rs.eof
if i=0 then
response.write("<font face=verdana size=5>Order Confirmed</font>")
end if
i=i+1
bookid=rs("bookid")
qty=rs("quantity")
price=rs("price") * qty
date_time= date & " " & time
set cnn=server.createobject("adodb.connection")
set rss=server.createobject("adodb.recordset")
cnn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
sqlstr="insert into orders(bookid,quantity,price,date_time,userid) values(" & bookid & ","
& qty & "," & price & ",'" & date_time & "'," & cint(session("userid")) & ");"
cnn.execute sqlstr
set rss=cnn.execute (" update bhatti_bank set balance=" & balance &" where userid=" &
cint(session("userid")))
set rss=cnn.execute (" select * from books where bookid=" & bookid)
stock=rss("stock")
stock=stock-qty
set rss=cnn.execute (" update books set stock=" & stock & " where bookid=" & bookid)
rs.movenext
loop
end if
%>
if (session("id")<1) then
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
set rs=cn.execute ("select * from books where bookid=" & session("id") )
if(session("basketid")="") then
if(session("userid")="") then
response.write(“please logon first”)
response.end
end if
set rs=cn.execute ("select max(basket_id) as max_basket_id from basket")
session("basketid")=rs("max_basket_id") + 1
cn.execute "insert into basket(basket_id,user_id) values(" & cint((session("basketid"))) &
"," & cint((session("userid"))) & ");"
end if
response.redirect "index.asp"
else
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
set rs=cn.execute ("select * from books where bookid=" & session("id") )
dim bookname,price
bookname=(rs("bookname"))
price=rs("price")
if(session("basketid")="") then
if(session("userid")="") then
response.write(“please logon first”)
response.end
end if
set rs=cn.execute ("select max(basket_id) as max_basket_id from basket")
session("basketid")=rs("max_basket_id") + 1
cn.execute "insert into basket(basket_id,user_id) values(" & cint((session("basketid"))) &
"," & cint((session("userid"))) & ");"
end if
set rs= cn.execute ("select * from shopping_cart where basketid=" & session("basketid"))
do while not rs.eof
if(session("id")=rs("bookid")) then
qty=rs("quantity")
price=price * qty
set rss=cn.execute ("update shopping_cart set quantity=" & qty+1 & " where basketid="
& session("basketid") & " and bookid=" & session("id"))
response.redirect "shoppingcart.asp"
response.end
end if
rs.movenext
loop
cn.execute "insert into shopping_cart(bookid,basketid,bookname,quantity,price) values("
& session("id") & "," & session("basketid") & ",'" & bookname & "',1,'" & price & "');"
response.redirect "shoppingcart.asp"
end if
%>
Account History:
<!--#include file="header.inc"-->
<% @language=vbscript %>
<%
‘---------------------account.asp-----------------------‘
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
rs.open "select b.bookname, o.quantity, o.price, o.date_time from books b, orders o
where o.userid=" & session("userid") & " and b.bookid=o.bookid",cn
response.write("<font size=4 face=verdana>Account History </font><br><br>")
%>
<table width=100% border=1 cellpadding="0" cellspacing="0" bordercolor="#99CC99">
<tr bgcolor="#99CC99">
<th width="55%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"
color="#FFFFFF">Book</font></th>
<th width="9%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"
color="#FFFFFF">Qty</font></th>
<th width="13%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"
color="#FFFFFF">Price</font></th>
<th width="23%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"
color="#FFFFFF">Date
& Time</font></th>
</tr>
<% do while not rs.eof %>
<tr>
<td width="55%" ><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><
%=rs("bookname") %></font></td>
<td width="9%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><
%=rs("quantity") %></font></td>
<td width="13%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">$
<%=rs("price") %></font></td>
<td width="23%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><
%=rs("date_time") %></font></td>
</tr>
<%
rs.movenext
loop
%>
</table>
<%
rs.close
cn.close
%>
Support Form:-
<!--#include file="header.inc"-->
<% @language=vbscript %>
<%
‘--------------------supportvalidate.asp--------------------------‘
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
%>
<br>
<input type=button value=Back onClick="history.go(-1)">
<%
response.end
end if
mail=request("txtmail")
atrate=instr(mail,"@")
if atrate >1 then
dot=instr(mail,".")
if dot > atrate then
if dot > 3 then
else
response.write("<font face=verdana size=4>Incorrect E-Mail
Address</font>")
end if
else
response.write("<font face=verdana size=4>Incorrect E-Mail
Address</font>")
end if
else
response.write("<font face=verdana size=4>Incorrect E-Mail
Address</font>")
end if
comm=request.form("txtcomment")
set rs=cn.execute ("insert into support(name,email,subject,comments) values('" &
request("txtname") & "','" & request("txtmail") & "','" & request("txtsub") & "','" & comm &
"')")
response.write("<font face=verdana size=4>Message send</font>")
%>
Download:-
<html>
<head>
<title>Untitled Document</title>
‘ -----------------download.htm---------------‘
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link type="text/css" rel="stylesheet" href="dld.css">
<link type=text/css rel="stylesheet" href="index.css">
</head>
<!--#include file="header.inc"-->
<link type=text/css rel=stylesheet href=index2.css>
<% @language=vbscript %>
<%
‘------------------search.asp--------------------‘
dim looper
looper=0%>
<html><body>
<p>
<%
if(trim(request("srch")) <> "" and (request("select")="title")) then
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
rs.open "select * from books where bookname like '%" & request("srch") & "%'",cn
%>
</p><table border=1 cellspacing="0" cellpadding="0" bordercolor="#99CC99"
align=center width=100%>
<tr align=center bgcolor="#99CC99">
<th><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif"
size="2">Book
Name</font></th>
<th><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif"
size="2">Author</font></th>
<th><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif"
size="2">price</font></th>
</tr>
<%
do while not rs.eof
looper=looper+1
%>
<tr align=center>
<td><a href="<% =rs("link") %>" style='text-decoration:none'> <font face="Verdana,
Arial, Helvetica, sans-serif" size="2">
<% =rs("bookname") %> </font></a></td>
<td> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<% =rs("Author") %> </font></td>
<td><font face="Verdana, Arial, Helvetica, sans-serif" size="2">$
<% =rs("Price") %> </font></td>
<%rs.movenext%>
</tr>
<%loop%>
</table>
<%
if (looper=0) then
response.write("<b><h2 align=center>Found : " & looper & " Record")
else
response.write("<b><h2 align=center>Found : " & looper & " Records")
end if
rs.close
cn.close
elseif(trim(request("srch")) <> "" and (request("select")="author")) then
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
rs.open "select * from books where author like '%" & request("srch") & "%'",cn
%>
<table border=1 cellpadding="0" cellspacing="0" bordercolor="#99CC99" align=center
width=100%>
<tr align=center bgcolor="#99CC99">
<th><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif"
size="2">Book
Name</font></th>
<th><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif"
size="2">Author</font></th>
<th><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif"
size="2">price</font></th>
</tr>
<%
do while not rs.eof
looper=looper+1
%>
<tr align=center>
<td ><a href="<% =rs("link") %>" style='text-decoration:none'> <font face="Verdana,
Arial, Helvetica, sans-serif" size="2">
<% =rs("bookname") %> </font></a></td>
<td> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<% =rs("Author") %> </font></td>
<td><font face="Verdana, Arial, Helvetica, sans-serif" size="2">$
<% =rs("Price") %> </font></td>
<% rs.movenext %>
</tr>
<% loop %>
</table>
<%
if (looper=0) then
response.write("<b><h2 align=center>Found : " & looper & " Record")
else
response.write("<b><h2 align=center>Found : " & looper & " Records")
end if
rs.close
cn.close
elseif(trim(request("srch")) <> "" and (request("select")="category")) then
set cn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
cn.open "provider=microsoft.jet.oledb.4.0; data source=d:\inetpub\wwwroot\bhatti
bookshop\bhatti.mdb"
rs.open "select * from books where category like '" & request("srch") & "'",cn
%>
<table border=1 cellpadding="0" cellspacing="0" bordercolor="#99CC99" align=center
width=100%>
<tr align=center bgcolor="#99CC99">
<th ><font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-
serif">Book
Name</font></th>
<th bgcolor="#99CC99"><font color="#FFFFFF" size="2" face="Verdana, Arial,
Helvetica, sans-serif">Author</font></th>
<th ><font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-
serif">price</font></th>
</tr>
<%
do while not rs.eof
looper=looper+1
%>
<tr align=center>
<td><a href="<% =rs("link") %>" style='text-decoration:none'> <font size="2"
face="Verdana, Arial, Helvetica, sans-serif">
<% =rs("bookname") %> </font></a></td>
<td > <font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<% =rs("Author") %> </font></td>
<td ><font size="2" face="Verdana, Arial, Helvetica, sans-serif">$
<% =rs("Price") %> </font></td>
<% rs.movenext %>
</tr>
<% loop %>
</table>
<%
if (looper=0) then
response.write("<b><h2 align=center><font face=verdena>Found :"& looper &" Record")
else
response.write("<b><h2 align=center><font face=verdena>Found:"& looper&" Records")
end if
rs.close
cn.close
else
response.write("<b><h2 align=center><font face=verdana color='#123400'>Please Enter
Text in Searching Field </font></h2></b>")
end if %>
Chat Room:-
<%@ Language=vbscript%>
<%
‘--------------------chat.asp---------------------‘
IF len(Request.Cookies("ChatName"))= 0 AND len(Request.Form("FormChatName"))= 0
THEN
%>
<HTML>
<HEAD>
<TITLE>Chat Room Login</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#567F9E" link="#CCC56A" vlink="#800000"
alink="#567F9E">
<BR>
<CENTER>
<font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#000000">To
join in the chat, enter your name (or a nickname)<br>
and click on Enter Chat Room"<br>
</font>
</CENTER>
<FORM METHOD="POST" ACTION="Chat.asp">
<CENTER>
<font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#000000">Name
(or nickname): </font>
<INPUT NAME="FormChatName" TYPE="TEXT" SIZE=20></CENTER>
<CENTER><INPUT TYPE="SUBMIT" VALUE="Enter chat room"></CENTER></form>
</BODY>
</HTML>
<%
ELSE
Response.Cookies("ChatName")=Request.Form("FormChatName")
APPLICATION.LOCK
Application("ChatLine15") = Application("ChatLine14")
Application("ChatLine14") = Application("ChatLine13")
Application("ChatLine13") = Application("ChatLine12")
Application("ChatLine12") = Application("ChatLine11")
Application("ChatLine11") = Application("ChatLine10")
Application("ChatLine10") = Application("ChatLine9")
Application("ChatLine9") = Application("ChatLine8")
Application("ChatLine8") = Application("ChatLine7")
Application("ChatLine7") = Application("ChatLine6")
Application("ChatLine6") = Application("ChatLine5")
Application("ChatLine5") = Application("ChatLine4")
Application("ChatLine4") = Application("ChatLine3")
Application("ChatLine3") = Application("ChatLine2")
Application("ChatLine2") = Application("ChatLine1")
Application("ChatLine1") = "<FONT COLOR=""#CCC56A"">** " &
Request.Form("FormChatName") & " enters chatroom **</FONT>"
APPLICATION.UNLOCK
%>
Displaying Messages
<HTML>
‘------------------------displaymessages.asp-------------------------‘
<HEAD></HEAD>
<FRAMESET ROWS="180,70" FRAMEBORDER="0" BORDER="false">
<FRAME SRC="DisplayMessages.asp" SCROLLING="auto">
<FRAME SRC="SendMessage.asp" SCROLLING="no">
</FRAMESET>
</HTML>
<%
END IF
%>
<HTML>
<HEAD>
<!-- Refresh the page (DisplayMessages.asp) every 5 seconds seconds -->
<META HTTP-EQUIV="REFRESH" CONTENT="5;DisplayMessages.asp">
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" link="#CCC56A" vlink="#800000"
alink="#567F9E">
<FONT SIZE=2 face=verdana>
<%=Application("ChatLine15")%><BR>
<%=Application("ChatLine14")%><BR>
<%=Application("ChatLine13")%><BR>
<%=Application("ChatLine12")%><BR>
<%=Application("ChatLine11")%><BR>
<%=Application("ChatLine10")%><BR>
<%=Application("ChatLine9")%><BR>
<%=Application("ChatLine8")%><BR>
<%=Application("ChatLine7")%><BR>
<%=Application("ChatLine6")%><BR>
<%=Application("ChatLine5")%><BR>
<%=Application("ChatLine4")%><BR>
<%=Application("ChatLine3")%><BR>
<%=Application("ChatLine2")%><BR>
<%=Application("ChatLine1")%><BR>
</FONT>
</BODY>
</HTML>
Sending Messages
<%
‘-------------------sendmessages.asp-----------------------‘
If not Request.Form("message")="" THEN
APPLICATION.LOCK
Application("ChatLine15") = Application("ChatLine14")
Application("ChatLine14") = Application("ChatLine13")
Application("ChatLine13") = Application("ChatLine12")
Application("ChatLine12") = Application("ChatLine11")
Application("ChatLine11") = Application("ChatLine10")
Application("ChatLine10") = Application("ChatLine9")
Application("ChatLine9") = Application("ChatLine8")
Application("ChatLine8") = Application("ChatLine7")
Application("ChatLine7") = Application("ChatLine6")
Application("ChatLine6") = Application("ChatLine5")
Application("ChatLine5") = Application("ChatLine4")
Application("ChatLine4") = Application("ChatLine3")
Application("ChatLine3") = Application("ChatLine2")
Application("ChatLine2") = Application("ChatLine1")
Application("ChatLine1") = "<B>" & Request.Cookies("ChatName") & ":</B> " &
Request.Form("message")
APPLICATION.UNLOCK
END IF
%>
<HTML>
<HEAD><TITLE>Chat Room Messages</TITLE></HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#FFFFFF" LINK="#DCB003" vlink="#567F9E"
alink="#000080">
<FORM METHOD="POST" ACTION="SendMessage.asp" name=f1>
<font size="2" color="#000000"><b><font face="Verdana, Arial, Helvetica, sans-
serif">Enter your message and click send</font></b> <font face="Verdana, Arial,
Helvetica, sans-serif">.</font></font><BR>
<TABLE BORDER=0 CELLSPACING=0>
<TR>
<TD>
<input name="message" type="TEXT" size=30>
</TD>
<TD>
<INPUT TYPE="IMAGE" SRC="send.jpg" WIDTH=40 HEIGHT=24 BORDER=0>
</TD><TD> </TD>
<TD VALIGN=TOP>
<A HREF="logoff.asp" TARGET="_top"><IMG SRC="exit.jpg" WIDTH=35 HEIGHT=26
BORDER=0></A>
</TD>
</TABLE></FORM>
</BODY>
</HTML>
CONCLUSION
CONCLUSION
First we are thankful to Almighty Allah, who enables us to complete this project
during the preparation of this project we have gained a lot experience in this field.
We have done this project under the guidance of my teacher.
During this project, we learn that how to create the interactive website in ASP
and how to interact with the user. In this project we have tried to cover almost
every aspect of the online bookshop that is present in the professional website.
This project helped us understanding the problems faced by the system and how
to solve and make a complete system that fulfill user requirement. In this
documentation we have tried that you can easily understand our website and
different thing related to the website.
At the end I want to thank our project advisor Mr. syed Salman, who guide us in
every step of making this project.
FUTURE WORK
After completing this project, we want to practically implement this website over
the internet. We want to add more features to the site so that more of the users
can be attracted and entertained while visiting our site. In this website we have
use the search engine of Yahoo, but in future we want to create our own search
engine with some improvement.