Cover image for Web application design and implementation : APACHE 2, PHP5, MySQL, JavaScript, and Linux/Unix
Title:
Web application design and implementation : APACHE 2, PHP5, MySQL, JavaScript, and Linux/Unix
Personal Author:
Series:
Quantitative software engineering series
Publication Information:
Hoboken, NJ : Wiley-Interscience, 2007
ISBN:
9780471773917
Added Corporate Author:

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000010125932 TK5105.8883 G32 2007 Open Access Book Book
Searching...

On Order

Summary

Summary

Web Application Design and Implementation uses a hands-on approach of the major technologies and programming languages to teach readers web development. Providing an understanding of all major aspects of web programming in order to achieve the construction of a database-driven website, the book features state-of-the-art programming languages such as HTML, JavaScript, MySQL, PHP, Apache, Linux/Unix.


Author Notes

STEVEN A. GABARRÓ , MSc, is a member of the faculty at Stevens Institute of Technology. He created the first Web programming course at Stevens in 2003, a course which is now considered one of the most instructive computer science elective courses by students and fellow faculty. The success of the course became the drive to create this book.


Table of Contents

Prefacep. xiii
About the Authorp. xiii
Before We Get Startedp. xiii
Who Should Read This Book?p. xiv
About the Examplesp. xiv
How to Read This Bookp. xiv
Acknowledgmentsp. xv
Introduction: Web Application Recipep. 1
Overviewp. 1
Procedurep. 1
Step 1 Understanding the Problem and Finding the Solutionp. 1
Step 2 Designing the Databasep. 2
Step 3 Major Functionalitiesp. 2
Step 4 Backsidep. 2
Step 5 Improvements on Functionalityp. 2
Step 6 Improvements on Looksp. 3
Step 7 Thorough Testing, Hacking Attemptsp. 3
Step 8 Presentationp. 3
Step 9 Publicationp. 3
Step 10 Celebration (and Maintenance)p. 4
1 Fundamentalsp. 5
The Origins of the Internetp. 5
The World Wide Webp. 6
The Web Browsersp. 7
The Web Serversp. 7
TCP/IP Basicsp. 8
The Internet Layerp. 9
The Transport Layerp. 11
The Application Layerp. 11
The Toolboxp. 12
Browsersp. 12
FTPp. 13
Email Clientsp. 14
Programming Toolsp. 14
Other Useful Toolsp. 15
2 The Different Approaches of Web Programmingp. 17
Before We Get Startedp. 17
The Basics-HTMLp. 17
The Creator-SGMLp. 18
Other SGML-Based Languages-XML and XSLp. 19
The Good Old Javap. 20
Something Different-JavaScriptp. 21
The Savior-PHPp. 22
The Rival-ASP.NETp. 22
The Myth-CGIp. 23
Another Big Option-Perlp. 23
The Future?-C#p. 24
Client-Side versus Server-Side-Which Side to Pick?p. 24
My Choices-PHP, MySQL, JavaScriptp. 25
3 Introduction to HTMLp. 27
What Do You Need to Get Started?p. 27
How Does HTML Work?p. 28
Syntax Basicsp. 28
File Structurep. 28
Tag Parametersp. 30
Basic Text Formattingp. 30
External Referencesp. 32
Linksp. 32
Imagesp. 33
Organizing Datap. 34
Listsp. 35
Tablesp. 36
Framesp. 39
Special Charactersp. 43
4 Work Environmentp. 45
Introductionp. 45
Downloading the Softwarep. 45
Installing the Apache Serverp. 46
Installation Stepsp. 46
Checking the Installationp. 47
Possible Errorsp. 47
Configuring Apachep. 48
Installing PHP5p. 48
Testing PHPp. 50
Installing MySQLp. 50
Adding a MySQL Userp. 51
How Do I Know if MySQL is Running?p. 51
Installing PhpMyAdminp. 51
Installing a Bulletin Board: phpBBp. 52
Installation Stepsp. 52
Basic Security Considerationsp. 54
Conclusionp. 55
5 PHP-A Server-Side Scripting Languagep. 57
How Does It Work?p. 57
Some "New" Words on PHPp. 57
Syntax Generalitiesp. 58
Instructionsp. 58
Operatorsp. 61
Mathematical Functionsp. 61
Data Typesp. 63
Constantsp. 64
Variablesp. 65
6 PHP Arrays and Flow of Controlp. 69
Arraysp. 69
Basic Arraysp. 69
Associative Arraysp. 70
Multidimensional Arraysp. 71
Array Functionsp. 74
PHP Program Structure and Flow of Controlp. 77
Conditionsp. 77
Loopsp. 80
Functionsp. 82
7 Using Files, Folders, and Strings in PHPp. 85
Using Filesp. 85
Folder Manipulationp. 89
Basic String Manipulationp. 90
Changing a Stringp. 90
Finding and Comparingp. 93
Formatting Stringsp. 94
Manipulating HTML Filesp. 95
PHP Information Functionsp. 96
Closing Remarksp. 97
Writing a Basic File Explorerp. 97
Requirementsp. 97
Hintsp. 98
Case Study: An Indexer/Searcher-Step 1p. 98
Overviewp. 98
The Indexer-Step 1p. 99
8 PHP5 and Object-Oriented Programmingp. 101
Overviewp. 101
Classes and Objectsp. 101
Classes in PHPp. 102
Constructors and Destructorsp. 103
Visibilityp. 104
The Scope Resolution Operatorp. 105
The Static Keywordp. 105
Class Constantsp. 106
Class Abstractionp. 106
Object Interfacesp. 106
Copying and Cloning Objectsp. 107
Comparing Objectsp. 108
Type Hintingp. 109
Exceptionsp. 109
Final Wordsp. 110
9 Creating Some Interactivityp. 111
Overviewp. 111
Formsp. 111
Writing a Form in HTMLp. 111
Get versus Postp. 115
Retrieving the Form Information on a PHP Scriptp. 115
Dynamically Creating Formsp. 116
Transferring Data Between PHP Scriptsp. 117
Cookiesp. 117
Sessionsp. 120
One Last Useful Function and Design Techniquesp. 122
Assignmentsp. 123
File Explorer-Step 2p. 123
Case Study: Indexer/Searcher-Step 2p. 124
10 Making Cleaner Code and Outputp. 127
Cleaning Up Your Codep. 127
What You Needp. 127
How to Use It?-HTML Sidep. 128
How to Use It?-PHP Sidep. 128
Cleaning Up Your Outputp. 131
The CSS Filep. 132
Useful Toolsp. 134
Assignmentp. 135
11 Using Databasesp. 137
Overviewp. 137
Database Basicsp. 137
The Entity Relationship Modelp. 137
More Practical Examplesp. 138
Typical Sources of Errorp. 139
Simplifying the Diagramsp. 140
Using MySQLp. 140
MySQL Syntaxp. 141
Data Typesp. 142
MySQL Numeric Data Typesp. 142
Date and Time Data Typesp. 143
String Data Typesp. 144
MySQL Operatorsp. 144
MySQL Instructionsp. 145
Using Functions in MySQLp. 150
12 Using PhpMyAdminp. 151
Overviewp. 151
Creating a Databasep. 151
Creating Tablesp. 152
Accessing an Existing Tablep. 154
Exporting/Importing a Database Structure and Contentp. 154
Assignment-Final Projectp. 157
13 Creating Database-Driven Websites with PHP/MySQLp. 159
Overviewp. 159
Connecting to Your MySQL Server with PHPp. 159
Submitting SQL Queriesp. 160
Processing the Results of a Queryp. 161
Example of Login Procedurep. 162
Other Useful Functionsp. 163
Grouping Our Methods in a Classp. 164
Indexer/Searcher-Steps 3 and 4p. 168
14 JavaScript-A Client-Side Scripting Languagep. 171
Introductionp. 171
JavaScript Syntaxp. 173
Types of Data and Variablesp. 173
Operations and Calculationsp. 173
Arraysp. 175
Decisionsp. 176
Loopsp. 176
Using Functionsp. 177
Using Objectsp. 178
The String Objectsp. 178
The Math Classp. 179
The Array Objectsp. 181
The Date Objectsp. 181
15 Programming the Browserp. 185
Overviewp. 185
The Window Objectp. 185
The Location Objectp. 186
The History Objectp. 186
The Navigator Objectp. 186
The Screen Objectp. 187
The Document Objectp. 187
Using Eventsp. 191
Timersp. 194
Time to Practice!p. 195
16 Windows and Framesp. 197
Frames and JavaScriptp. 197
Windows and JavaScriptp. 201
Assignmentsp. 206
One Last Funny Examplep. 206
17 String Manipulations Revisitedp. 209
Overviewp. 209
New Basic String Methodsp. 209
Regular Expressions in JavaScriptp. 210
Regular Expressions in PHPp. 213
The Set of PCREp. 214
18 JavaScript and DHTMLp. 217
Overviewp. 217
Positioning Elementsp. 217
Writing Dynamic Menus in DHTMLp. 222
Your Turn!!p. 225
19 Putting It All Together!p. 227
Overviewp. 227
Procedurep. 227
Step 1 Understanding the Problem and Finding the Solutionp. 227
Step 2 Designing the Databasep. 228
Step 3 Main Functionalitiesp. 230
Step 4 Backsidep. 231
Step 5 Improvements on Functionalityp. 231
Step 6 Improvements on Looksp. 232
Step 7 Thorough Testing, Hacking Attemptsp. 232
Step 8 Presentationp. 233
Step 9 Publicationp. 233
Step 10 Celebration [Characters not reproducible] (and Maintenance)p. 234
What Language to Use?p. 234
Appendix A Special Charactersp. 217
Appendix B Installing on UNIXp. 241
Overviewp. 241
Installing Apache and PHPp. 241
Installing MySQLp. 243
Appendix C Advanced phpBBp. 247
Appendix D class.FastTemplate.phpp. 251
Appendix E File Upload Scriptp. 267
Bibliographyp. 269
Indexp. 271