Updated material on www.deitel.com and www.prenhall.com/deitel includes an extensive treatment of Netscape® 6 and alternative versions of the code from the Dynamic HTML chapters that will work with non-Microsoft environments. Ex.___
Teaches students how to mark up content for the web. Ex.___
Provides students with an overview of Wireless Markup Language (WML) and WMLScript for programming wireless devices such as cell phones, pagers, and personal digital assistants. Ex.___
Discusses the ways in which the websites can be designed for ease of use by people with disabilities. Ex.___
These chapters, along with the chapters on ASP, Perl and Java Servlets, address the similarities and differences of using these various server-side languages to create dynamic web-based application. Ex.___
Includes topics such as XML, multimedia, e-commerce, databases, Perl and Servlets. Ex.___
Enables students to confirm that programs run as expected. Students can also manipulate the code from the CD-ROM in the back of the book or from the book's Companion Website (www.prenhall.com/deitel), or from the authors' website (www.deitel.com). Ex.___
Provides hundreds of valuable programming tips and facilitates learning. Ex.___
Students can apply what they've learned in each chapter. Ex.___
Syntax coloring helps students to better interpret the code. Ex.___
Includes Microsoft Agent® Agent 2.0, Microsoft® Internet Explorer 5.5, Adobe® Acrobat® Reader 5.0, My SQL 3.23, ActiveState Languages (to include ActivePerl 5.6.1 and ActivePython 21), the following software developed by the Apache Software Foundation: PHP 4.05 and Apache Web Server 1.3.20, source code for all the book's examples and hyperlinks to valuable Internet demos and resources. Ex.___
Students develop their own personal Web pages and create multi-tier, client/s
The authoritative DEITEL LIVE-CODE introduction to Internet & World Wide Web programming
The Internet and World Wide Web have revolutionized software development with multimediaintensive, platform-independent code for conventional Internet-, Intranet- and Extranet-based applications. This college-level textbook carefully explains how to program multitiered, client/server, database-intensive, Web-based applications.
Dr. Harvey M. Deitel and Paul J. Deitel are the founders of Deitel & Associates, Inc., the internationally recognized corporate training and content-creation organization specializing in Java, C++, C, Visual C#, Visual Basic®, Visual C++®, .NET, XML, Python, Perl, Internet, Web and object technologies. The Deitels are also the authors of the world's #1 Java and C++ textbooksJava How to Program, 4/e and C++ How to Program, 3/eand many other best sellers. In Internet & World Wide Web How to Program, 2/e, the Deitels and their colleague, Tem R. Nieto, discuss key topics, including:
Internet & World Wide Web How to Program, 2/e includes extensive pedagogic features:
Internet & World Wide Web How to Program, 2/e is the centerpiece of a family of resources for teaching and learning Internet and Web programming, including Web sites (www.deitel.com and www.prenhall.com/deitel with the book's code examples (also on the enclosed CD) and other information for faculty, students and professionals; an optional interactive CD (Internet & World Wide Web Programming Multimedia Cyber Classroom, 2/e) containing hyperlinks, audio walkthroughs of the code examples, solutions to about half the book's exercises; and e-mail access to the authors at email@example.com
For information on worldwide corporate on-site seminars and Web-based training offered by Deitel & Associates, Inc., visit: www.deitel.com
For information on current and forthcoming Deitel/Prentice Hall publications including How to Program Series books, Multimedia Cyber Classrooms, Complete Training Courses (which include Deitel books and Cyber Classrooms) and Web-Based Training Courses please see the last few pages of this book.
1. Introduction to Computers and the Internet.
Introduction to the Internet Explorer 5.5 Web Browser. Connecting to the Internet. Internet Explorer 5.5 Features. Searching the Internet. Online Help and Tutorials. Keeping Track of Favorite Sites. File Transfer Protocol (FTP). Outlook Express and Electronic Mail. NetMeeting. MSN Messenger Service. Customizing Browser Settings.
Introduction. Image Basics. Vector and Raster Graphics. Toolbox. Layers. Screen Capturing. File Formats: GIF and JPEG. Internet and World Wide Web Resources.
Introduction. Editing XHTML. First XHTML Example. W3C XHTML Validation Service. Headers. Linking. Images. Special Characters and More Line Breaks. Unordered Lists. Nested and Ordered Lists. Internet and World Wide Web Resources.
Introduction. Basic XHTML Tables. Intermediate XHTML Tables and Formatting. Basic XHTML Forms. More Complex XHTML Forms. Internal Linking. Creating and Using Image Maps. meta Elements. frameset Element. Nested framesets. Internet and World Wide Web Resources.
Introduction. Inline Styles. Embedded Style Sheets. Conflicting Styles. Linking External Style Sheets. WK CSS Validation Service. Positioning Elements. Backgrounds. Element Dimensions. Text Flow and the Box Model. User Style Sheets. Internet and World Wide Web Resources.
Introduction. Essentials of Counter-Controlled Repetition. for Repetition Structure. Examples Using the for Structure. switch Multiple-Selection Structure. do/while Repetition Structure. break and continue Statements. Labeled break and continue Statements. Logical Operators. Summary of Structured Programming.
Live in fragments no longer: Only connect.
Edward Morgan Forster
Welcome to the exciting world of Internet and World Wide Web programming. This book is by an old guy and two young guys. The old guy (HMD; Massachusetts Institute of Technology 1967) has been programming and/or teaching programming for 40 years. The two young guys (PJD; MIT 1991 and TRN; MIT 1992) have been programming and/or teaching programming for over 20 years. The old guy programs and teaches from experience; the young guys do so from an inexhaustible reserve of energy. The old guy wants clarity; the young guys want performance. The old guy seeks elegance and beauty; the young guys want results. We got together to produce a book we hope you will find informative, challenging and entertaining.
The explosion and popularity of the Internet and the World Wide Web creates tremendous challenges for us as authors, for our publisherPrentice Hall, for instructors, for students and for professionals.
The World Wide Web increases the prominence of the Internet in information systems, strategic planning and implementation. Organizations want to integrate the Internet "seamlessly" into their information systems and the World Wide Web offers endless opportunity to do so.
This edition contains many new features and enhancements including:
Why We Wrote Internet & World Wide Web How to Program: Second Edition
Focus of the Book
Using Color to Enhance Pedagogy and Clarity
We have emphasized color throughout the book. The World Wide Web is a colorful, multimediaintensive medium. It appeals to our visual and audio senses. Someday it may even appeal to our senses of touch, taste and smell! We suggested to our publisher, Prentice Hall, that they publish this book in color. The use of color is crucial to understanding and appreciating many of the programs we present. Almost from its inception, the Web has been a color-intensive medium. We hope it helps you develop more appealing Web-based applications.
Web-Based Applications Development
Many books about the Web concentrate on developing attractive Web pages. We discuss Web-page design intensely. But more importantly, the key focus of this book is on Webbased applications development. Our audiences want to build real-world, industrial-strength, Web-based applications. These audiences care about good looking Web pages, but they also care about client/server systems, databases, distributed computing, etc. Many books about the Web are reference manuals with exhaustive listings of features. That is not our style. We concentrate on creating real applications. We provide the LIVE-CODETM examples on the CD accompanying this book (and at www.deitel.com) so that you can run the applications and see and hear the multimedia outputs. You can interact with our game and art programs. The Web is an artist's paradise. Your creativity is your only limitation. However, the Web contains so many tools and mechanisms to leverage your abilities that even if you are not artistically inclined, you can create stunning output. Our goal is to help you master these tools so that you can maximize your creativity and development abilities.
People want to communicate. Sure, they have been communicating since the dawn of civilization, but computer communications have been limited mostly to digits, alphabetic characters and special characters. The next major wave of communication technology is multimedia. People want to transmit pictures and they want those pictures to be in color. They want to transmit voices, sounds and audio clips. They want to transmit full-motion color video. At some point, they will insist on three-dimensional, moving-image transmission. Our current flat, two-dimensional televisions eventually will be replaced with threedimensional versions that turn our living rooms into "theaters-in-the-round." Actors will perform their roles as if we were watching live theater. Our living rooms will be turned into miniature sports stadiums. Our business offices will enable video conferencing among colleagues halt a world apart, as if they were sitting around one conference table. The possibilities are intriguing, and the Internet is sure to play a key role in making many of these possibilities become reality. Dynamic HTML and Flash ActionScript are means of adding "dynamic content" to World Wide Web pages. Instead of Web pages with only text and static graphics, Web pages "come alive" with audios, videos, animations, interactivity and three-dimensional imaging. Dynamic HTML's and Flash ActionScript's features are precisely what businesses and organizations need to meet today's multimedia-communications requirements. There have been predictions that the Internet will eventually replace the telephone system. Why stop there? It could also replace radio and television as we know therh today. It is not hard to imagine the Internet and the World Wide Web replacing newspapers with electronic news media. Many newspapers and magazines already offer Webbased versions, some fee based and some free. Increased bandwidth makes it possible to stream audio and video over the Web. Both companies and individuals run their own Webbased radio and television stations. Just a few decades ago, there were only a few television stations. Today, standard cable boxes accommodate about 100 stations. In a few more years, we will have access to thousands of stations broadcasting over the Web worldwide. This textbook may someday appear in a museum alongside radios, TVs and newspapers in an "early media of ancient civilization" exhibit.
Internet & World Wide Web How to Program: Second Edition contains a rich collection of examples, exercises and projects drawn from many fields to provide the student with a chance to solve interesting real-world problems. The book concentrates on the principles of good software engineering and stresses program clarity. We avoid arcane terminology and syntax specifications in favor of teaching by example. The book is written by educators who spend much of their time teaching edge-of-the-practice topics in industry classrooms. The text emphasizes good pedagogy.
LIVE-CODE Teaching Approach
The book is loaded with hundreds of LIVE-CODE examples. This is how we teach and write about programming, and is the focus of each of our multimedia Cyber Classrooms as well. Each new concept is presented in the context of a complete, working example immediately followed by one or more windows showing the example's input/output dialog. We call this style of teaching and writing our LIVE-CODE approach. We use the language to teach the language. Reading these examples is much like entering and running them on a computer.
World Wide Web Access
All the code for Internet & World Wide Web How to Program: Second Edition (and our other publications) is on the Internet free for download at the Deitel & Associates, Inc. Web site www.deitel.com.
Please download all the code, then run each program as you read the text. Make changes to the code examples and immediately see the effects of those changes. A great way to learn programming is by programming. Note: You must respect the fact that this is copyrighted material. Feel free to use it as you study, but you may not republish any portion of it in any form without explicit permission from Prentice Hall and the authors.
Each chapter begins with a statement of Objectives. This tells students what to expect and gives students an opportunity, after reading the chapter, to determine if they have met these objectives. This is a confidence builder and a source of positive reinforcement.
The learning objectives are followed by quotations. Some are humorous, some are philosophical and some offer interesting insights. Our students enjoy relating the quotations to the chapter material. Many of the quotations are worth a "second look" after reading the chapter.
The chapter Outline helps the student approach the material in top-down fashion. This, too, helps students anticipate what is to come and set a comfortable and effective learning pace.
15,836 Lines of Code in 311 Example LIVE-CODE Programs (with Program Outputs)
Each program is followed by the outputs produced when the document is rendered and its scripts are executed. This enables the student to confirm that the programs run as expected. Reading the book carefully is much like entering and running these programs on a computer. The programs range from just a few lines of code to substantial examples with several hundred lines of code. Students should run each program while studying that program in the text. The examples are available on the CD and at our Deitel (www.deitel.com) and Prentice Hall Web sites (www.prenhall.com\deitel).
466 Programming Tips
We have included programming tips to help students focus on important aspects of program development. We highlight hundreds of these rips in the form of Good Programming Practices, Common Programming Errors, Testing and Debugging Tips, Performance Tips, Portability Tips, Software Engineering Observations and Look-and-Feel Observations. These tips and practices represent the best we have gleaned from a combined seven decades of programming and teaching experience. One of our studentsa mathematics majortold us that she feels this approach is like the highlighting of axioms, theorems and corollaries in mathematics books; it provides a foundation on which to build good software.
Summary (1274 Summary bullets)
Each chapter includes additional pedagogical devices. We present a thorough, bullet-list-style Summary of the chapter. On average, each chapter contains 37 summary bullets that help students review and reinforce important concepts.
Terminology (2921 Terms)
In the Terminology section, we include an alphabetized list of the important terms defined in the chapteragain, further reinforcement. On average, there are 86 terms per chapter.
652 Self-Review Exercises and Answers (Count Includes Separate Parts)
Extensive self-review exercises and answers are included for self-study. They provide the student with a chance to build confidence with the material and to prepare for the regular exercises. Students should attempt all the self-review exercises and check their answers.
633 Exercises (Solutions in Instructor's Manual; Count Includes Separate Parts)
Each chapter concludes with a substantial set of exercises, including simple recall of important terminology and concepts; writing individual statements; writing small portions of functions; writing complete functions and scripts; and writing major term projects. The large number of exercises across a wide variety of topics enables instructors to tailor their courses to the unique needs of their audiences and to vary course assignments each semester. Instructors can use these exercises to form homework assignments, short quizzes and major examinations. The solutions for the vast majority of the exercises are included in the Instructor's Manual and on the disks available only to instructors through their Prentice-Hall representatives. NOTE: Please do not write to us requesting the instructor's manual. Distribution of this publication is strictly limited to college professors teaching from the book. Instructors may obtain the solutions manual only from their regular Prentice Hall representatives. We regret that we cannot provide the solutions to professionals. Solutions to approximately half the exercises are included on the Internet & World Wide Web Multimedia Cyber Classroom: Second Edition CD (available in bookstores and computer stores; please see the last few pages of this book or visit our Web site at www.deitel.com for ordering instructions).
Approximately 6657 Index Entries (with approximately 8208 Page References)
At the back of the book, we have included an extensive Index to help students find any term or concept by keyword. The Index is useful to people reading the book for the first time and is especially useful to practicing programmers who use the book as a reference. Most of the terms in the Terminology sections appear in the Index (along with many more index items from each chapter). Students can use the Index in conjunction with the Terminology sections to be sure they have covered the key material of each chapter.
"Double Indexing" of All LIVE-CODE Examples and Exercises
Internet & World Wide Web How to Program: Second Edition has 311 LIVE-CODE examples and 633 exercises (including parts). Many of the exercises are challenging problems or projects requiring substantial effort. We have double indexed each of the LIVE-CODE examples and most of the more challenging projects. For every source-code program in the book, we took the file name and indexed it both alphabetically and as a subindex item under "Examples." This makes it easier to find examples using particular features. The more substantial exercises are indexed both alphabetically and as subindex items under "Exercises."
An extensive bibliography of books, articles and online documentation is included to encourage further reading.
The CD-ROM at the end of this book contains Microsoft Internet Explorer 5.5, Microsoft Agent 2.0, Adobes®Acrobat® Reader 5.0, MySQL 3.23, Jasc® Paint Shop Pro 7.0 (90-day evaluation version; this product is included as a bonusit is not described in the book), ActivePerl 5.6.1, ActivePython 2.1, PHP 4.0.5 and Apache Web Server 1.3.20. The CD also contains the book's examples and an HTML Web page with links to the Deitel & Associates, Inc. Web site, to the Prentice Hall Web site and to the Web site that contains the links to the Web resources mentioned in the chapters. If you have access to the Internet, this Web page can be loaded into your World Wide Web browser to give you quick access to all the resources. We especially would like to thank Jasc Software for providing a trial version of their graphics and photo editor; again, this product is not discussed in the book, but a tutorial can be found at their Web site, www.jasc.com
If you have any questions about the software on the CD, please read the introductory documentation on the CD. We will post additional information on our Web site www.deitel.com. If you have any technical questions about the installation of the CD or about any of the software supplied with Deitel/Prentice Hall products, please e-mail firstname.lastname@example.org. They will respond promptly.
On our Web site, we provide installation instructions for ODBC, MySQL, IBM VoiceServer SDK 1.5, Microsoft Internet Information Services (IIS), Microsoft Personal Web Server (PWS), Apache Web server, Microsoft's MSXML 3.0 Parser, Perl, Python, PHP, World Wide Web Consortium's Validation Service (both for XHTML and Cascading Style Sheets), IBM Voice Server SDK 1.1, Java 2 Platform Standard Edition, the Microsoft Agent character Wartnose. We also illustrate how to create a database in MySQL and Microsoft Access.
NOTE: Please do not write to us requesting the instructor's manual. Distribution of this publication is strictly limited to college professors teaching from the book. Instructors may obtain the solutions manual only from their regular Prentice Hall representatives. We regret that we cannot provide the solutions to professionals. Internet & World Wide Web How to Program: Second Edition has extensive ancillary materials for instructors teaching from the book. The Instructor's Manual CD contains solutions to the vast majority of the end-of-chapter exercises and a test bank of multiple choice questions (approximately 2 per book section). In addition, we provide PowerPoint® slides containing all the code and figures in the text. You are free to customize these slides to meet your own classroom needs. Prentice Hall provides a Companion Web Site www.prenhall.com/deitel that includes resources for instructors and students. For instructors, the Web site has a Syllabus Manager for course planning, links to the PowerPoint slides and reference materials from the appendices of the book (such as the operator precedence chart, character sets and Web resources). For students, the Web site provides chapter objectives, true/false exercises with instant feedback, chapter highlights and reference materials.
We have prepared an interactive, CD-ROM-based, software version of Internet & World Wide Web How to Program: Second Edition, called the Internet & World Wide Web Programming Multimedia Cyber Classroom: Second Edition. It is loaded with features for learning and reference. The Cyber Classroom is wrapped with the textbook at a discount in The Complete Internet & World Wide Web Programming Training Course: Second Edition. If you already have the book and would like to purchase the Internet & World Wide Web Programming Multimedia Cyber Classroom: Second Edition separately, please call 1-800-811-0912 and ask for ISBN# 0-13-089559-8. Please be sure to give the name of the product as well to avoid errors.
The CD includes an introduction with the authors overviewing the Cyber Classroom's features. The 311 LIVE-CODE example programs in the textbook truly "come alive" in the Cyber Classroom. If you are viewing a program and want to execute it, simply click the lightning bolt icon and the program will run. You will seeand hear for the audio-based multimedia programsthe program's outputs. If you want to modify a program and see and hear the effects of your changes, simply click the floppy-disk icon that causes the source code to be "lifted off' the CD and "dropped into" one of your own directories so that you can edit the text and try out your new version. Click the speaker icon for an audio that talks about the program and "walks you through" the code.
The Cyber Classroom also provides navigational aids, including extensive hyperlinking. With its browser-based front-end, the Cyber Classroom remembers recent sections you have visited and allows you to move forward or backward in that list. The thousands of index entries are hyperlinked to their text occurrences. You can key in a term using the "find" feature and, the Cyber Classroom will locate occurrences of that term throughout the text. The Table of Contents entries are "hot," so clicking a chapter name takes you to that chapter.
Students appreciate the hundreds of solved problems from the textbook (about half of the book exercises) that are included with the Cyber Classroom. Studying and running these extra programs is a great way for students to enhance their learning experience.
Students and professional users of our Cyber Classrooms tell us they like the interactivity and that the Cyber Classroom is an effective reference, due to the extensive hyperlinking and other navigational features. We recently received an e-mail from a person who said that he lives "in the boonies" and cannot take a live course at a university, so the Cyber Classroom was the solution to his educational needs.
Professors tell us that their students enjoy using the Cyber Classroom, spend more time on the course and master more of the material than in textbook-only courses. Also, the Cyber Classroom helps shrink lines outside professors' offices during office hours. We have published the Cyber Classrooms for most of our books.