100% found this document useful (7 votes)
40 views

Download (Ebook) Web Application Design and Implementation: Apache 2, PHP5, MySQL, JavaScript, and Linux UNIX (Quantitative Software Engineering Series) by Steven A. Gabarró ISBN 9780471773917, 0471773913 ebook All Chapters PDF

The document promotes the ebook 'Web Application Design and Implementation' by Steven A. Gabarró, which covers topics such as Apache 2, PHP5, MySQL, JavaScript, and Linux/UNIX. It also provides links to download this and other related ebooks from ebooknice.com. Additionally, it includes a brief overview of Wiley's history and commitment to providing educational resources.

Uploaded by

bakenpating5
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (7 votes)
40 views

Download (Ebook) Web Application Design and Implementation: Apache 2, PHP5, MySQL, JavaScript, and Linux UNIX (Quantitative Software Engineering Series) by Steven A. Gabarró ISBN 9780471773917, 0471773913 ebook All Chapters PDF

The document promotes the ebook 'Web Application Design and Implementation' by Steven A. Gabarró, which covers topics such as Apache 2, PHP5, MySQL, JavaScript, and Linux/UNIX. It also provides links to download this and other related ebooks from ebooknice.com. Additionally, it includes a brief overview of Wiley's history and commitment to providing educational resources.

Uploaded by

bakenpating5
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 81

Visit https://ebooknice.

com to download the full version and


explore more ebooks

(Ebook) Web Application Design and Implementation:


Apache 2, PHP5, MySQL, JavaScript, and Linux UNIX
(Quantitative Software Engineering Series) by Steven
A. Gabarró ISBN 9780471773917, 0471773913
_____ Click the link below to download _____
https://ebooknice.com/product/web-application-design-
and-implementation-apache-2-php5-mysql-javascript-and-
linux-unix-quantitative-software-engineering-
series-2495740

Explore and download more ebooks at ebooknice.com


Here are some recommended products that might interest you.
You can download now and explore!

(Ebook) Biota Grow 2C gather 2C cook by Loucas, Jason; Viles, James


ISBN 9781459699816, 9781743365571, 9781925268492, 1459699815,
1743365578, 1925268497

https://ebooknice.com/product/biota-grow-2c-gather-2c-cook-6661374

ebooknice.com

(Ebook) Matematik 5000+ Kurs 2c Lärobok by Lena Alfredsson, Hans


Heikne, Sanna Bodemyr ISBN 9789127456600, 9127456609

https://ebooknice.com/product/matematik-5000-kurs-2c-larobok-23848312

ebooknice.com

(Ebook) SAT II Success MATH 1C and 2C 2002 (Peterson's SAT II Success)


by Peterson's ISBN 9780768906677, 0768906679

https://ebooknice.com/product/sat-ii-success-
math-1c-and-2c-2002-peterson-s-sat-ii-success-1722018

ebooknice.com

(Ebook) Master SAT II Math 1c and 2c 4th ed (Arco Master the SAT
Subject Test: Math Levels 1 & 2) by Arco ISBN 9780768923049,
0768923042

https://ebooknice.com/product/master-sat-ii-math-1c-and-2c-4th-ed-
arco-master-the-sat-subject-test-math-levels-1-2-2326094

ebooknice.com
(Ebook) Cambridge IGCSE and O Level History Workbook 2C - Depth Study:
the United States, 1919-41 2nd Edition by Benjamin Harrison ISBN
9781398375147, 9781398375048, 1398375144, 1398375047

https://ebooknice.com/product/cambridge-igcse-and-o-level-history-
workbook-2c-depth-study-the-united-states-1919-41-2nd-edition-53538044

ebooknice.com

(Ebook) Professional LAMP : Linux, Apache, MySQL and PHP Web


Development by Jason Gerner ISBN 9780471790884, 9780764597237,
0471790885, 076459723X

https://ebooknice.com/product/professional-lamp-linux-apache-mysql-
and-php-web-development-2001692

ebooknice.com

(Ebook) The Apache Modules Book: Application Development with Apache


(Prentice Hall Open Source Software Development Series) by Nick Kew
ISBN 9780132409674, 0132409674

https://ebooknice.com/product/the-apache-modules-book-application-
development-with-apache-prentice-hall-open-source-software-
development-series-978224
ebooknice.com

(Ebook) JavaScript for Modern Web Development: Building a Web


Application Using HTML, CSS, and Javascript by ALOK RANJAN, ABHILASHA
SINHA, RANJIT BATTEWAD

https://ebooknice.com/product/javascript-for-modern-web-development-
building-a-web-application-using-html-css-and-javascript-49177184

ebooknice.com

(Ebook) Setting Up LAMP: Getting Linux, Apache, MySQL, and PHP Working
Together by Eric Filson ISBN 9780782143379, 0782143377

https://ebooknice.com/product/setting-up-lamp-getting-linux-apache-
mysql-and-php-working-together-2022622

ebooknice.com
Web Application Design
and Implementation
•• e T ..

~I t 807 ~
=1~WlLEY:
:12007 ;
-;
• '
. l e . . . T ..... I ...
.
r

THE WILEY BICENTENNIAL-KNOWLEDGE FOR GENERATIONS

<S achgeneration has its unique needsand aspirations. When Charles Wiley first
opened his small printing shop in lower Manhattan in 1807, it was a generation
of boundless potential searching for an identity. And we were there, helping to
define a new American literary tradition. Over half a century later, in the midst
of the Second Industrial Revolution, it was a generationfocusedon building the
future. Once again, we werethere,supplyingthe criticalscientific,technical,and
engineering knowledge that helped frame the' world. Throughout the 20th
Century, and into the :new millennium, nations began to reach out beyond their
own borders and a new international community was born. Wiley was there,
expanding its operationsaround the world to enable a global exchangeof ideas,
opinions, and know-how.

For 200 years, Wiley has been an integral part of each generation's journey,
enablingthe flowof information and understanding necessaryto meet their needs
and fulfill their aspirations. Today, bold new technologies are changing the way
we live and learn. Wiley will be there, providing you the must-have knowledge
you need to imaginenew worlds, new possibilities, and new opportunities.

Generations come and go, but you can always count on Wiley to provide you the
knowledge you need,when and whereyou need it!

Lu~';'~~.~ ~~u~
WILLIAM .... PESCE PETER BaaTH WILEY
PRESIDENT AND CHIEF' EXECUTIVE DFFlCER CHAIRMAN OF" THE BOARD
Web Application Design
and Implementation
Apache 2, PHP5, MySQL,
JavaScript, and Linux/UNIX

Steven A. Gabarro
Stevens Institute of Technology
Hoboken, New Jersey

IEEE
~computer
SOciety
60TH anniversary

"'
BICENTENNIAL

it807~
.
=~WILEY=z
.-
z
:2007~
,.~
BICENTENNIAL

WILEY-INTERSCIENCE
A John Wiley & Sons, Inc., Publication
Copyright © 2007 by John Wiley & Sons, Inc. All rights reserved.

Published by John Wiley & Sons, Inc., Hoboken, New Jersey.


Published simultaneously in Canada.

No part of this publication may be reproduced, stored in a retrieval system, or transmitted in


any form or by any means, electronic, mechanical, photocopying, recording, scanning, or
otherwise, except as permitted under Section 107 or 108 of the 1976 United States Copyright
Act, without either the prior written permission of the Publisher, or authorization through
payment of the appropriate per-copy fee to the Copyright Clearance Center, Inc., 222
Rosewood Drive, Danvers, M,A 01923, (978) 750-8400, fax (978) 750-4470, or on the web at
www.copyright.com. Requests to the Publisher for permission should be addressed to the
Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030,
(201) 748-6011, fax (201) 748-6008, or online at http://www.wiley.com/go/permission.

Limit of Liability/Disclaimer of Warranty: While the publisher and author have used their
best efforts in preparing this book, they make no representations or warranties with respect
to the accuracy or completeness of the contents of this book and specifically disclaim any
implied warranties of merchantability or fitness for a particular purpose. No warranty may be
created or extended by sales representatives or written sales materials. The advice and
strategies contained herein may not be suitable for your situation. You should consult with a
professional where appropriate. Neither the publisher nor author shall be liable for any loss
of profit or any other commercial damages, including but not limited to special, incidental,
consequential, or other damages.

For general information on our other products and services or for technical support, please
contact our Customer Care Department within the United States at (800) 762-2974, outside
the United States at (317) 572·-3993 or fax (317) 572-4002.

Wiley also publishes its books in a variety of electronic formats. Some content that appears
in print may not be available in electronic formats. For more information about Wiley
products, visit our web site at www.wiley.com.

Library of Congress Cataloging-in-Publication Data:


Gabarr6, Steven A., 1979-
Web application design and implementation: Apache 2, PHP5, MySQL,
JavaScript, and Linux/Unix / by Steven A. Gabarro,
p. em.
Includes index.
ISBN-13: 978-0-471-77391-7 (cloth)
ISBN-I0: 0-471-77391-3 (cloth)
1. Web site development. 2. Web sites-Design. 3. Application
software-Development. I. Title.
TK5105.8883.G33 2007
006.7-dc22
2006014999
Contents

Preface xiii
About the Author / xiii
Before We Get Started I xiii
Who Should Read This Book? I xiv
About the Examples I xiv
How to Read This Book I xiv

Acknowledgments xv

Introduction: Web Application Recipe 1


Overview I I
Procedure I I
Step I-Understanding the Problem and Finding the
Solution / 1
Step 2-Designing the Database / 2
Step 3-Major Functionalities / 2
Step 4-Backside / 2
Step 5-Irnprovements on Functionality I 2
Step 6-Irnprovements on Looks / 3
Step 7-Thorough Testing, Hacking Attempts / 3
Step 8-Presentation / 3
Step 9-Publication / 3
Step IO-Celebration (and Maintenance) I 4
v
vi CONTENTS

1. Fundamentals 5
The Origins of the Internet I 5
The World Wide Web I 6
The Web Browsers I 7
The Web Servers I 7
TCP/IP BASICS I 8
The Internet Layer I 9
The Transport Layer I 11
The Application Layer I 11
The Toolbox I 12
Browsers I 12
FTP I 13
Email Clients I 14
Programming Tools I 14
Other Useful Tools I 15

2. The Different Approaches of Web Programming 17


Before We Get Started I 17
The Basics-HTMloJ I 17
The Creator-SGML I 18
Other SGML-Based Languages-XML and XSL I 19
The Good Old Java / 20
Something Different-JavaScript / 21
The Savior-PHP I 22
The Rival-ASP.N]~T I 22
The Myth-CGI I 23
Another Big Option-Perl / 23
The Future?-C# / 24
Client-Side versus Server-Side-Which Side to Pick? I 24
My Choices-PHP, MySQL, JavaScript I 25

3. Introduction to HTML 27
What Do You Need to Get Started? I 27
How Does HTML Work? I 28
Syntax Basics / 28
File Structure I 28
Tag Parameters I 30
Basic Text Formatting I 30
External References I 32
Links I 32
Images I 33
CONTENTS vii

Organizing Data / 34
Lists / 35
Tables / 36
Frames / 39
Special Characters I 43

4. Work Environment 45
Introduction I 45
Downloading the Software I 45
Installing the Apache Server I 46
Installation Steps I 46
Checking the Installation I 47
Possible Errors I 47
Configuring Apache I 48
Installing PHP5 I 48
Testing PHP I 50
Installing MySQL I 50
Adding a MySQL User I 51
How Do I Know if MySQL is Running? I 51
Installing PhpMyAdmin I 51
Installing a Bulletin Board: phpBB I 52
Installation Steps I 52
Basic Security Considerations I 54
Conclusion I 55

5. PHP-A Server-Side Scripting Language 57


How Does It Work? I 57
Some "New" Words on PHP / 57
Syntax Generalities I 58
Instructions I 58
Operators I 61
Mathematical Functions I 61
Data Types I 63
Constants I 64
Variables I 65

6. PUP Arrays and Flow of Control 69


Arrays I 69
Basic Arrays / 69
Associative Arrays I 70
viii CONTENTS

Multidimensional Arrays / 71
Array Functions / 74
PHP Program Structure and Flow of Control / 77
Conditions / 77
Loops / 80
Functions / 82

7. Using Files, Folders, and Strings in PUP 85


Using Files / 85
Folder Manipulation / 89
Basic String Manipulation / 90
Changing a String / 90
Finding and Comparing / 93
Formatting Strings / 94
Manipulating HT~f1L Files / 95
PHP Information Functions / 96
Closing Remarks / 97
Writing a Basic File Explorer / 97
Requirements / 97
Hints / 98
Case Study: An Indexer/Searcher-Step 1 / 98
Overview / 98
The Indexer-Step 1 / 99

8. PUPS and Object-Oriented Programming 101


Overview / 101
Classes and Objects / 101
Classes in PHP / 102
Constructors and Destructors / 103
Visibility / 104
The Scope Resolution Operator / 105
The Static Keyword / 105
Class Constants / 106
Class Abstraction / 106
Object Interfaces / 106
Copying and Cloning Objects / 107
Comparing Objects / 108
Type Hinting / 109
Exceptions / 109
Final Words / 110
CONTENTS ix

9. Creating Some Interactivity 111


Overview / 111
Forms / 111
Writing a Form in HTML / 111
GET versus POST / 115
Retrieving the Form Infomation on a PHP Script / 115
Dynamically Creating Forms / 116
Transferring Data Between PHP Scripts / 117
Cookies / 117
Sessions / 120
One Last Useful Function and Design Techniques I 122
Assignments I 123
File Explorer-Step 2 / 123
Case Study: Indexer/Searcher-Step 2 / 124
10. Making Cleaner Code and Output 127
Cleaning Up Your Code / 127
What You Need / 127
How to Use It?-HTML Side I 128
How to Use It?-PHP Side / 128
Cleaning Up Your Output / 131
The CSS File I 132
Useful Tools / 134
Assignment / 135
11. Using Databases 137
Overview I 137
Database Basics I 137
The Entity Relationship Model / 137
More Practical Examples I 138
Typical Sources of Error / 139
Simplifying the Diagrams I 140
Using MySQL I 140
MySQL Syntax / 141
Data Types / 142
MySQL Numeric Data 1)rpes / 142
Date and Time Data Types / 143
String Data Types / 144
MySQL Operators / 144
MySQL Instructions / 145
Using Functions in MySQL / 150
X CONTENTS

12. Using PhpMyAdmin 151


Overview / 151
Creating a Database / 151
Creating Tables / 152
Accessing an Existing Table / 154
Exporting/Importing a Database Structure and Content / 154
Assignment-Final Project / 157

13. Creating Database-Driven Websites with PHP/MySQL 159


Overview / 159
Connecting to Your MySQL Server with PHP / 159
Submitting SQL Queries / 160
Processing the Results of a Query / 161
Example of Login Procedure / 162
Other Useful Functions / 163
Grouping Our Methods in a Class / 164
Indexer/Searcher-Steps 3 and 4 / 168

14. JavaScript-A Client-Side Scripting Language 171


Introduction / 171
JavaScript Syntax / 173
Types of Data and Variables I 173
Operations and Calculations / 173
Arrays / 175
Decisions / 176
Loops / 176
Using Functions / 177
Using Objects / 178
The String Objects / 178
The Math Class / 179
The Array Objects / 181
The Date Objects / 181

15. Programming the Browser 185


Overview / 185
The Window Object / 185
The Location Object / 186
The History Object / 186
The Navigator Object / 186
The Screen Object / 187
The Document Object / 187
CONTENTS xi

Using Events / 191


Timers / 194
Time to Practice! / 195

16. Windows and Frames 197


Frames and JavaScript / 197
Windows and JavaScript / 201
Assignments / 206
One Last Funny Example / 206

17. String Manipulations Revisited 209


Overview / 209
New Basic String Methods / 209
Regular Expressions in JavaScript / 210
Regular Expressions in PHP / 213
The Set of PCRE / 214

18. JavaScript and DHTML 217


Overview / 217
Positioning Elements / 217
Writing Dynamic Menus in DHTML / 222
Your Turn!! / 225

19. Putting It All Together! 227


Overview / 227
Procedure / 227
Step I-Understanding the Problem and Finding the
Solution / 227
Step 2-Designing the Database / 228
Step 3-Main Functionalities / 230
Step 4-Backside / 231
Step 5-Improvements on Functionality / 231
Step 6-Improvements on Looks / 232
Step 7-Thorough Testing, Hacking Attempts / 232
Step 8-Presentation / 233
Step 9-Publication / 233
Step IO-Celebration © (and Maintenance) / 234
What Language to Use? / 234
xli CONTENTS

Appendix A: Special Characters 237

Appendix B: Installing on UNIX 241


Overview / 241
Installing Apache and PHP / 241
Installing MySQL / 243

Appendix C: Advanced phpBB 247

Appendix D: class.FastTemplate.php 251

Appendix E: File Upload Script 267

Bibliography 269

Index 271
Preface

ABOUT THE AUTHOR

Steven Gabarr6 was born in 1979 and raised in Alicante, Spain. He started
programming early, learning BASIC (Beginner's All-purpose Symbolic
Instruction Code) at age 9. Later on, in high school, he learned Turbo Pascal
and C. At that point it was pretty obvious that he was going to end up as a
computer scientist. He ended up studying for a master's degree in computer
science in the Ecole Pour l'Informatique et les Techniques Avancees, where
he specialized in advanced multimedia and Web technologies, graduating
with honors, finishing third in his class. He went to the United States in
January 2002, enrolling in the Masters of Science in Information Systems at
the Stevens Institute of Technology, in Hoboken, New Jersey. There he quickly
advanced from teaching assistant to full-time instructor. On his appointment
as full-time faculty, he created the first Web programming course at Stevens,
based on his personal experiences. This book is the result of that course, and
is a close reflection of what Steven teaches his students.

BEFORE WE GET STARTED

In my years of programming, I have learned tons of different programming


languages, ranging from Basic to Java, and including C, PHP, JavaScript,
Visual Basic, C++, Assembly 68k, and many others. Because of this variety I
have always been obsessed with utilizing the tools I had available to combine
the best aspects of each programming language.
xiii
xiv PREFACE

With this mentality I decided to create a Web programming course


that would teach the ins and outs of the most commonly used free Web tech-
nologies. I have always supported free software, and as the big UNIX fan that
I am, I had to teach open-source technologies. This book is the result of the
work I did on the course, with added content to take it a step further.

WHO SHOULD READ THIS BOOK?

The way this book is organized, it should be ideal for anyone trying to learn
how to create complete Websites with no previous knowledge of any of the
languages presented. It does require some minimum knowledge of program-
ming in general, as well as object-oriented programming basics to understand
Chapter 8.
It is also a good read for Web designers that know about making pages
look nice, but have no knowledge of how to create dynamic pages built
through a database or anyone who would like to pick up on the art of pro-
gramming pages. Realize: that I have never been a good graphic designer, so
this book will not tell you how to do things like making decisions regarding
the proper colors, fonts, or sizes to use, or other cosmetic details. I will deal
with how to set those features up, but will not tell you how to pick your layout
or color schemes, because I am definitely not good at it. Instead, I will con-
centrate on how to actually program useful pages with loads of functionality.

ABOUT THE EXAMPLES

All the examples have been tested, and if any are not compatible with a spe-
cific browser, this will be stated in the text. You can find all the example files,
as well as an example solution for the mini exercises and the indexer/searcher
case study at ftp://ftp.wiley.com/public/sci_tech_med/web_application. I will
also work on extra examples that I will make available to illustrate other areas
of the book that did not get a full example. I would have included many more
examples, but then you would need two or three volumes this size. Instead, I
will just put everything in a Website for you to download and test. I hope you
enjoy it all!

HOW TO READ THIS BOOK

The book is organized to be read front to back, but you may skip chapters as you
see fit, or use the book as a reference. The Introduction is a summary of Chapter
19 and should be used by people already experienced in Web development. It is
basically meant as a guide to using this book as a "Web programming cook-
book." You may read this Introduction for brief guidelines or go straight to
Chapter 19 if you need an in-depth explanation with a practical example.
Acknowledgments

I'd like to express great thanks to my family first for always being there for
me. I wouldn't be where I am without them, and I'll never manage to thank
them enough for that. To my very close (and special, a.k.a. N.B.) friends, I
thank you for your support and patience over the years; it is not easy putting
up with me for so long, but you have always given me some of the best times
I could hope for. Quick "howdy" to my online friends at COTW and BF2C
for helping me steam off when I had too much work and needed a break.
Thanks to Larry Bernstein for allowing me the opportunity to write this
book, and of course thanks to the people at John Wiley & Sons for getting
my first book published even though I'm still "a kid." Special thanks to
Whitney, Paul and Melissa for all of their help and patience; and to Ben for
the cover image. ©

xv
Introduction

Web Application Recipe

OVERVIEW

You might be wondering why you are reading an "Introduction" chapter and
why this chapter is called "Web Application Recipe." Well, this chapter is
your quick guide to professional Web application design and implementation.
It is in essence a summary of the last chapter of the book (Chapter 19),
created mainly for people with enough experience in Web programming to
skip some of the chapters presented. This chapter will give you the rundown
of the major steps in the lifecycle of a Web project, and will refer to the chap-
ters where you might find more in-depth information on the topics covered.
I call it the "recipe" because it gives you the general layout of what needs to
be done, before getting into the specific details that each individual chapter
will cover. For a more in-depth guideline with a practical example, be sure to
read Chapter 19.

PROCEDURE

Step 1-Understanding the Problem and Finding the Solution


The first step in Web development (and any type of project, to be honest) is
to understand what the problem is, as well as what input will be used and

Web Application Design and Implementation: Apache 2, PHP5, MySQL, JavtiScript, and
Linux/UNIX, by Steven A. Gabarr6
Copyright © 2007 by John Wiley & Sons, Inc.

1
2 WEB APPLICATION RECIPE

what output should be produced. This phase is usually done in meetings


between the project manager and the project sponsor (the person paying for
the project). This is a crucial phase as it defines the scope of the project, such
as the features that need to be implemented, and the feel that the page should
have. The main area of discussion in this step is what the project will do,
without concentrating on the "how."

Step 2-Designing the Database


When creating web applications, chances are your program will need to store
data; hence the use of databases. Many developers create the database as they
implement the program, but this can cause serious troubles as they realize
well into the project that: the initial design of the database is flawed and all
the work needs to be redone. This is why you should always start by designing
the database, keeping in mind what the project needs are. Chapters 11 and
12 will show you how to design and create a database. In a database-driven
project the database is the heart of the project.

Step 3-Major Functionalities


Once the database is created, it is time to program the major functionalities
of your application. Many programmers tend to spend a lot of time making
sure that the pages they create look good, without worrying about whether
they actually do something. Webpage appearance is obviously important, but
you will get more out of an ugly functional Web application than with a pretty-
looking useless page. Most of the work needed in this phase will require
accessing the database. To find out more about how to do so, check Chapter
13. This step is basically like programming the brain of your application,
ensuring that its core runs perfectly well.

Step 4-Backside
Once the core of the project is up and running, you need to implement the
back end of the project. This is the section of the project that will be used by
administrators to manage the Website after it has been published, and it is a
good idea to have it up and running before the regular users start meddling
with the Web application. If you need some information on writing scripts in
PHP, check out Chapters 5-9.

Step 5-lmprovements on Functionality


This is the phase where you start having fun with the project and improve
its functionalities. It is the opportunity to begin improving the client-side
functionalities by adding some JavaScript scripts to your pages, such as form
PROCEDURE 3

verifications. Check Chapters 14-18 for more information on how to program


in JavaScript. Just make sure that the improvements you decide to work on
are within the scope of the project, to avoid what is known as "scope creep"
(see Chapter 19).

Step 6-lmprovements on Looks


Once your project is working, you may start working on the esthetics. Start
by using style sheets (Chapter 10), and do not hesitate to ask your favorite
Web designer for help. In case you wonder about the difference between
a web developer and a Web designer, in essence, a Web designer takes
care of the looks (appearance) of Websites and Web developers write the
scripts that make the pages work. This is the step that adds the skin to the
project.

Step 7-Thorough Testing, Hacking Attempts


This is probably one of the most important phases in the project. The goal of
this phase is to ensure that the project is flawless and that you have made it
hackerproof. The best asset in this phase is imagination and a bit of paranoia.
Never assume that your users will be friendly, using your application for what
it was meant to be. The true secret to a hacker-safe program is to think like
a hacker. Try to think of any security hole that you might not have fixed yet
and fix it! This step is the equivalent of getting some immunizations for your
project. The more time you spend here, the less time you will spend dealing
with attacks.

Step 8-Presentation
Assuming that you are not writing the application for yourself and there is
money involved, you will need to present your final project to your project
sponsor. The key here is to be relaxed and be confident that your project
is rock-solid. If you follow the guidelines in this book, this should not be
a problem. If you are presenting to a nontechnical person, start by showing
the general features of the project, getting into details only when asked to
do so. If you are presenting to a fellow developer, go straight to the
functionalities.

Step 9-Publication
When the project has been approved, it is time to release it. Place it in your
desired host and make sure that everything is set up properly so that users
worldwide can access it. This phase should be fairly fast.
4 WEB APPLICATION RECIPE

Step 10-Celebration (and Maintenance)


Once the project is published, this is your chance for a small break. Enjoy
your favorite brew, have a good night's sleep, and get back to work! Once a
project is published, you need to maintain it, updating the database as needed
or fixing bugs that users might have found.
1
Fundamentals

THE ORIGINS OF THE INTERNET

Not that long ago, in a galaxy pretty close by, men and women used to live
without practical means of communication. Paper was the main medium used
for information sharing and horses the main carrier for that medium. But
science kept working, and in 1831 Joseph Henry invented the first electric
telegraph. Four years later, Samuel Morse invented the Morse code, and
worked on the very first long-distance electric telegraph line, which he fin-
ished in 1843. A bigger leap in communication progress was made by Alex-
ander Graham Bell, who patented the electric telephone in 1876.Long-distance
communication was finally a reality, but still archaic compared to what was
to be achieved. With the arrival of computers in the midtwentieth century,
people realized the potential of storing and processing data in those amazing
new machines. Furthermore, the United States and the Soviet Union were
deep in the Cold War, and the fear of a possible strike was constantly present
in the military's mind. One of the main concerns was the possibility that all
communication between remote locations could be interrupted by an attack.
Telephone and telegraph lines were out in the open, and could be easily
damaged, so the National Security Agency (NSA) thought of a way to
preserve communications. Emulating the principles of telephone commu-
nication, in the 1960s, the NSA thought of connecting computers through

Web Application Design and Implementation: Apache 2, PHP5, MySQL, JavaScript, and
Linux/UNIX, by Steven A. Gabarr6
Copyright © 2007 by John Wiley & Sons, Inc.

5
6 FUNDAMENTALS

wide-area networks (WANs), so that if the phone lines went down, they would
still be able to send orders to detachments across the country, through the
use of computers. In order to make this idea a reality, the Advanced Research
Project Agency (ARPA) created the first computer network in 1969, and
named it the ARPANET. It was composed of only four computers, located
in the University of California at Los Angeles (UCLA), the University of
California at Santa Barbara (UCSB), the University of Utah, and the Stan-
ford Research Institute (SRI). Three years later, in 1972, the use of routers
allowed the ARPANET to have 20 nodes and 50 host computers, which could
all communicate through tools such as the tel net and FTP (File Transfer
Protocol). In 1974 Vincent Cerf, from the SRI, and Robert Kahn, from the
Defense Advanced Research Project Agency (DARPA), presented the Trans-
mission Control Protocol/Internet Protocol (TCP/IP) basics, forever chang-
ing the waycomputers would communicate. In 1983the Defense Communication
Agency (DCA) took control of the ARPANET and separated the military
section to form the MILNET, which would be used for military purposes only.
In the mid-1980s the two main existing networks, the ARPANET and the
NSFNET (created by the National Science Foundation), merged to create a
massive computer network. That merge motivated a trend that brought more
and more computers to the network, and this network of networks was then
named "the Internet." By 1990 the Internet had 3000 subnets and over 200,000
host computers. The estimated number of host computers in the year 2004
was approximately 234 million, and growing.

THE WORLD WIDE WEB

After creation of the Internet, great potential could be seen way beyond the
actual work that was being done. Computers were destined to do more than
utilize telnets and FTP; it was great to be able to link one computer to
another in order to send files, but the problem of communication was not yet
totally solved. Scientists doing research had to connect to a remote computer
and send their research results one at the time through FTP. This was faster
than sending manuscripts through "snail mail," but it was still not the best
option, so in 1989 Tim Berners-Lee presented the World Wide Web project
to the Conseil Europeen de Recherche Nucleaire (CERN; European Orga-
nization for Nuclear Research, based in Switzerland). The idea was to come
up with a set of standards for information sharing that scientists. around the
world would be able to use. The goal was to be able to have all research
documents in a format and location accessible to all interested regardless of
the platform being used . In 1994 the World Wide Web Consortium (W3C)
was created to lead the World Wide Web (WWW) to its full potential by
developing common protocols that would promote its evolution and ensure
its operability. You can find out more about the W3C visiting their Website,
www.w3c.org.
THE WEB SERVERS 7

THE WEB BROWSERS

Right at this point we have seen what lead to the creation of the computer
network known as "the Internet," and the reasoning behind the apparition of
the World Wide Web. But we still have a main problem that we haven't
answered yet-how do we use all this to communicate? First the Internet
brought us the media through which the information would flow, then the
WWW provided a standard format for information formatting, but there
was still the problem of how to read that information. To solve that problem,
some tool had to be created that would use the current standards and decode
Web documents and format them in such a way that would be intelligible
to the user. The Web browsers came to the rescue and solved that pro-
blem. The first graphical user interface (GUI) with the WWW to appear
was Mosaic, created by the National Center of Supercomputer Applications
(NCSA) at the University of Illinois in 1993. In 1994 Norway entered in
the pages of Internet history by creating the still-used Opera. Soon after-
ward Netscape appeared, followed by Microsoft's Internet Explorer, which
appeared along Windows 95. From that point on, the browsing market
has done nothing but evolve and-Fortunately for us, the users-improve.
Nowadays the two main browsers used are Internet Explorer and Mozilla
Firefox.

THE WEB SERVERS

Now that we know what the Internet is, the purpose of the World Wide Web,
and why we use Web browsers, another question may arise: "Where are all
these data stored?" It is definitely enlightening to know how we access all the
information that the World Wide Web has to offer, but where is all that infor-
mation? Well, the answer is pretty simple; it is in all the computers that form
the Internet. Some people become alarmed, believing that any computer con-
nected to the Internet will automatically make all of its files accessible to the
entire world. Not to worry, that is not how it works. In order to share informa-
tion in a specific computer, some software has to be installed on the computer,
making it a "Web server." The server creates a list of folders that will be
shared when someone attempts to connect to the computer using standard
Web protocols. There are two main competitors in the Web server market.
The first one, my personal favorite and the one used throughout this book, is
Apache, developed by the Apache Software Foundation (www.apache.or~).
Apache has the great advantage of being totally free of charge and works on
every platform. It is an open-source program, which means that you can actu-
ally see the code behind the server and even participate in the improvement
of Apache. It is reliable and vastly used around the world, and pretty much
the only reliable option on UNIX/Linux. The other main server is Microsoft's
Internet Information Services (lIS, www.microsoft.com/iis). lIS is not open-
8 FUNDAMENTALS

source and works only on Windows operating systems, although a simplified


free version is available with Windows XP Professional. The latest versions
of lIS run on Windows Server 2003, which obviously is not free. Some of the
differences between lIS and Apache reside in their user interface. Apache,
as most UNIX-based software, is configured entirely through a simple text
file that is loaded when the server starts up, whereas lIS has a GUI that is
meant to be much more user-friendly. Choosing which server to use is based
mainly on knowing which technologies will be used as well as the budget
available. Users on a low budget will probably prefer the use of open-source
technology and free development platforms; hence the use of Apache. If, on
the other hand, you wish to use Microsoft's .NET and you have the money to
afford it, lIS is the best option.

TCP/IP BASICS

As mentioned earlier, the Internet was strongly enhanced by the creation of


TCP/IP by Cerf and Kahn, but how exactly did TCP/IP help in this new era
of communications? When studying network communications, we learn about
the Open Systems Interconnection (OSI) layer model. This model breaks
down all computer networking into seven distinct layers. Computers can com-
municate at the same level through a set of protocols adapted to that particu-
lar layer. The seven layers are as follows (in ascending order):
1. Physical layer-responsible for sending raw bits over the communica-
tion channel. It is specific to the medium [twisted-pair or fiberoptic
cable, wifi (wireless fidelity), etc.].
2. Data link layer-takes a raw transmission and transforms it into a line
free of undetected transmission errors. It also breaks the input data into
data frames and transmits them sequentially. Finally it attaches special
bit patterns at the beginning and end of the frame like the starting frame
delimiter (SFD), cyclic redundancy check (CRe), or the preamble. This
is the layer responsible for flow control and error control.
3. Network layer-concerned with addressing and routing of messages to
their respective final destinations.
4. Transport layer-·provides services that support reliable end-to-end
communications, such as generating the final address of the destination,
establishing the connection, error recovery, and termination of the
session.
5. Session layer-responsible for the dialog between two cooperating
applications or processes. Remote login and spooling operations use the
session layer to ensure successful login and to control the flow of data
to the remote printer. The token management in a token ring configura-
tion is handled by the session layer.
TCPIIP BASICS 9

6. Presentation layer-concerned with the syntax and semantics of the


information transmitted from end to end. For example, X Windows is
considered a level 6 service.
7. Application layer-provides the utilities and tools for application pro-
grams and users, like telnet, FTP, DNS, and HTTP.

TCP/IP is basically a simplification of the OSI layer model that concen-


trates on only four layers: network access layer (Ethernet, FDDI, or ISDN),
Internet layer (IP), transport layer (TCP, UDP), and application layer (FTP,
telnet, SMTP, HTTP).

The Internet Layer


The Internet layer is the equivalent of the network layer in the OSI model. It
contains the Internet Protocol (IP), which provides addressing, datagram
services, data package segmentation, and transmission parameter selection.
In order to function properly, TCP/IP relies on IP addresses, which are
assigned to each computer. An IP address is composed of 4 bytes, and is
usually shown as four numbers separated by dots. Each of these numbers can
range between 0 and 255, since it represents only one of the bytes of the IP
address (and, as you should know, you can represent 256 numbers with only
8 bits). Each IP address is composed of two parts, the network address and
the computer address. To understand how the address is broken down, you
need to know your subnet mask. The way it works is through a basic binary
AND operation between your address and your subnet mask. The result of that
operation represents the network address. For example, let's assume that your
IP is 192.168.1.20, and your subnet mask is 255.255.255.0. Let us see how we
get the network address:
If you are not sure about how to use the binary AND with nonbinary
numbers, start by transforming each number to binary. 192.168.1.20 becomes
11000000.10101000.00000001.00010100, and 255.255.255.0 is 11111111.11111
111.11111111.00000000. Performing the AND operation between those two
numbers gives us 11000000.10101000.00000001.00000000, which is no other
than 192.168.1.0. You can achieve this result faster by realizing that 255 in
binary is written 11111111, and since an AND operation between a 1 and any
other bit will leave the bit unchanged, we can basically keep the numbers of
the IP address that correspond to the 255s of the subnet mask. Then we know
that a binary AND between 0 and anything will always be 0, so where our
subnet mask is 0, we can directly write o. So, if we have an IP of 155.180.24.45
and a subnet mask of 255.255.0.0, our network address will be 155.180.0.0.
This network address lets us know which computers we will be able to
communicate with directly. Only computers that are in the same network can
"see" each other, so a computer in a 192.168.1.0network and another one in
a network 155.180.0.0 will not be able to communicate with one another even
if they are directly linked to each other. The rest of the IP address (20 in the
10 FUNDAMENTALS

first example, 24.45 in the second) corresponds to the particular computer


address. Choosing a network appropriately is important since it will decide
the amount of computers that you can connect. For instance, a network with
a subnet mask of 255.255.255.0 will be able to accommodate only 254 distinct
IP addresses. This type of network is said to be of class C. A network with
subnet of 255.255.0.0 is said to be of class B, and finally 255.0.0.0 will be
subnet of a network of class A. One of the most important things when choos-
ing your computer's IP address is making sure that it is a valid address. You
are not allowed to have an IP that is the same than your network address; for
example, if your network is 192.168.1.0, you cannot have 192.168.1.0 as a
computer's IP address. The other restriction is that your computer address
cannot be all ones in binary; for instance, in the same network as in the previ-
ous example, the address 192.168.1.255 is not authorized (as 255 is 11111111
in binary). This type of address is used by TCP/IP to send broadcast messages
to all computers within the network.
Now that we know how the IP address work, you might be wondering how
you can be in a class C network (with a maximum of 254 computers) and still
be able to access millions of computers worldwide, even though they are not
in the same local network as you are. Well, the answer to that is basically the
use of routers. Routers are small machines that act as a bridge between two
separate networks. To function, they have two network cards in two separate
networks. For example, you could have a router with one of its IP addresses
as 192.168.1.254 in a class C network, and the other IP as 155.180.255.254 in
a class B network. If a computer connected to the class C network attempts
to access an IP that is not part of the 192.168.1.0 network, it sends the IP
requested to the router, which will then try to find that address using its
second branch. The whole principle of the Internet is based on millions of
networks connected through routers. Now, because of the amount of routers
in the world, there is a virtually infinite amount of ways to submit data
between two computers. To avoid taking the wrong path, several protocols
can be used.
Remembering the IP addresses of all the possible computers we would like
to access is pretty difficult, so symbolic addresses were created. Those
addresses work as a set of aliases of real IP addresses, such as .com, .gov,
.net, .es, and .co.uk. To make it even easier, it is possible to assign a name to
a specific address, such as google.com, for example. In order to retrieve the
corresponding IP, the computer accesses something called a Domain Name
Service (DNS), which contains a table with all equivalences between names
and IPs. Every time you see a dot in a name, this means that you are accessing
a subdomain; for example, if you visit the page http://steven.bewchy.com/, you
are looking within all companies (.com) for the one called "bewchy," and once
you find it, you look for the subdomain called "steven" within "bewchy." The
''http://'' section allows the computer to know that you wish to access that
domain using the HTTP protocol. DNS is another protocol residing in the
Internet layer.
TCPIIP BASICS 11

The Transport Layer


The transport layer is home to two main protocols: the User Datagram
Protocol (UDP) and the Transmission Control Protocol (TCP). UDP is a
connectionless protocol, meaning that the order in which messages are sent
by the emitting computer is not necessarily the order in which they will be
received in the destination computer. This protocol is not of interest in this
book, so we will not go any further in the explanation of UDP. TCP, on the
other hand, is very important for Web access; it is a connection-centered
protocol. TCP handles the connection, disconnection, data flow control and
transfer, sequencing, and many other tasks required to establish a proper
communication between two computers. It receives the data flow that needs
to be sent by the user and breaks it down into packets of usually 64 kB (kilo-
bytes; i.e., 65,536 bytes), which are then sent through the IP protocol. In order
to send those packets, TCP needs to open something called a "socket," which
is a couple of the type <IP address, port> which can be used by programs to
access files. Sockets can be opened or closed, and allow both reading and
writing. For example, a character in a TV show who asks the computer techni-
cian to "open a socket on a computer" is actually requesting access to the
computer through its IP address on a specific port. You can imagine "ports"
as electronic gates that reside within your computer and that are needed to
send or receive information. For example, when you access a Webpage, the
information contained in the page is sent to you via your port 80 (generally).
If you access an FTP server, you are using your port 21; if you are connecting
through SSH (Secure SHell; used to connect to remote computers), you're
probably using port 22.

The Application Layer


This layer is responsible for the protocols that most users know or at least have
heard about. The first and uttermost important for this book is the HyperText
Transfer Protocol (HTTP). HTTP was created for the exchange of HTML
documents; it is based on TCP/IP and is the protocol responsible for the com-
munication between Web server and Web client (you and your browser!). This
protocol is meant to be multiplatform, so everything is sent in ASCII (Ameri-
can Standard Code for Information Interchange) format, as plain characters.
We shall talk more about HTML documents in the next chapter.
Many other protocols in the application layer are important in the everyday
life of an Internet user, such as the following ones:
• File Transfer Protocol (FTP)-responsible for transferring files.
• Simple Mail Transfer Protocol (SMTP)-responsible for sending emails.
• Post Office Protocol (POP)-usually seen as POP3 by email clients.this
protocol allows you to retrieve email messages from your mail server.
• Internet Message Access Protocol (IMAP)-another protocol used for
email transfers.
12 FUNDAMENTALS

• Telnet-widely used in the early days of the Internet but fortunately is


now loosing importance. It allows you to remotely connect to a computer,
but the major disadvantage is that it does not encrypt any of the data sent
through this protocol (and that includes your passwords).
• Common Gateway Interface (CGI)-discussed further in the next
chapter; in a nutshell, it allows you to use the output of external applica-
tions in any Webpage. It is not a programming language!!

THE TOOLBOX

To conclude this chapter, I will list some programs that I believe all Web
developers should know about. All opinions are entirely personal, and you
are more than free to disagree with me.

Browsers
As mentioned earlier, browsers are essential in the use of the Internet and
choosing the right one for you is an important decision to make. Throughout
this book we will discuss some of the differences between these browsers,
especially during the JavaScript coverage. The most commonly used by
Microsoft Windows users is obviously Internet Explorer (http://www.micro-
soft.com/ie/), since it comes with the operating system. MSIE is a very user-
friendly browser, and perfect for Mr. or Mrs. Anybody that just wants to
browse the web. As a developer you must know that it is a dangerous tool,
since no matter how disgusting your HTML code might be, MSIE will manage
to make the output look decent, especially when using tables or frames. So
do not assume your page is perfectly written just because MSIE displays it
nicely. One of the advantages of MSIE is that JavaScript works perfectly well
with it, so you will probably love it when we are working on that language. It
also contains many plug-in that are required in many websites, so you might
actually be required to use it to fully appreciate some websites. The major
flaw it has as far as I'm concerned, and a reason why I stopped using it, is the
number of security holes it contains. Granted, in most cases no one will ever
attack your computer using those security holes, but as a computer scientist,
I like being protected.
Another browser that had great influence in the world of browsing is
Netscape (http://browser.netscape.com/ns8/), which had a great growth in the
late 90s. Unfortunately for Netscape, it has been going downhill for few years
now, and personally it will never cross my mind to use it again until they
improve it greatly. I actually stopped using NS when they released their
version 6, mostly due to JavaScript incompatibilities that will be mentioned
in further chapters. But basically Netscape had a set of Netscape-specific
HTML tags that were both useful and necessary for the use of JavaScript on
that browser, but they decided to wipe those out on version 6, which pretty
THE TOOLBOX 13

much was like forcing programmers to reprogram every single JavaScript


code programmed for version 5. When I discovered that, I decided to stop
using Netscape.
Another browser that was quite "cute" for lack of better words was Neo-
Planet (www.neoplanet.com). It was not really a full fledged browser but more
like an add-on for MSIE. Unfortunately it is no longer available for download
in their official website. The fun thing about NeoPlanet was the use of skins and
sounds, which would allow you to have for example a "shaggadelic" skin based
on the movie Austin Powers with nice flashy colors, peace signs instead of the
regular buttons, and the voice of Mike Myers saying "Oh Behave", "Yeah
Baby!" and other catchy phrases from the movie every time you clicked on a
link. There were skins for all tastes, and was definitely the funniest browser I
ever used in my life. It did get boring and repetitive after a while though.
UNIX lovers have been using a browser called Mozilla for quite some time.
It is like a dream come true for UNIX lovers due to its small size, basic
appearance and good functionality. Mozilla evolved and created the Mozilla
Firefox browser (www.getfirefox.com). which I have to say, is my current
browser. It is probably the most secure browser available for free right now,
and has great features like the use of tabs, which allow you to have as many
open websites as you wish on a single browser window. It also has an extensive
set of skins, though I've never really used them. There are many other features
but I'll let you look into it.
Maybe some of you use things like America Online and its built-in browser,
but I'd rather not say what I think about AOL to make sure that I don't offend
anyone. To phrase it very politely, "I, Steven Gabarro, do not like AOL."

FTP
If you are trying to install an FTP server on a Windows machine, I would
have to recommend Serv-U FTP (www.serv-u.com).Itis a great server soft-
ware that will probably allow you to do anything you want to with it. If you
are looking for an FTP server for UNIX, there are so many good, and free,
ones that I won't even bother mentioning them (there was probably one
included in your UNIX/Linux distribution).
If you are trying to get a nice FTP client, one of the most commonly used
(or at least it was when I discovered FTP) is Cute-FTP (www.cuteftp.com).
There are many others free and not free, but my favorite would have to be
LeechFTP, which allows the use of multiple threads, which speeds up the
transfer of multiple files. Unfortunately, the development of LeechFTP has
not been continued for over a year, so there are no really recent (as of 2006)
versions. I still like myoId version, though, since it never gave me any prob-
lems. It would seem (at the time of this writing) that the people working on
LeechFTP are now working on a new client called BitBeamer (www.bit-
beamer.com). I have never tried that software, so I cannot vouch for it, but it
is supposed to have all the features that LeechFTP had.
14 FUNDAMENTALS

Email Clients
One of the most widely used email clients is Outlook Express, which comes
standard with every copy of Windows (since Windows 95). It is simple and
works well, and is preinstalled with Windows, so no need to add extra soft-
ware if that is your platform. There is also the more complicated version
called Outlook, which does all Outlook Express does but adds in a calendar,
nicer agenda, but also heavier software to run. Personally I prefer the Express
version.
Another survivor of the old ages, and the first email client I ever used in
my life, is Eudora (www.eudora.com).Ihaven·tuseditsince19970rso.so I
am not really in a position to tell you how good the latest versions are.
Many users simply like using the clients that come with their browsers,
such as Netscape mail, or directly with Web-based email clients like Hotmail
(www.hotmail.com). or Yahoo (http://mail.yahoo.com), which allow you to
view emails directly on a browser. Personally I'd recommend you use Gmail
(www.gmail.com)createdbythepeoplefromGoogle.Itis by far the best
Web-based email tool I have used in over 10 years of Internet use, and it is
still in its Beta version, so Google can still improve it. The only problem is
that you can create an account only if you are invited to do so by a current
user.
If what you use is lJNIX or Linux, the two main email clients I know
and have used are "Pine" (Program for Internet News & Mail) and "Elm"
(Electronic Mail), but I would have to vouch for Elm. It is a very small simple
application that runs straight from your shell and lets you choose your text
editor. They are both usuallyincludedwith the major UNIX/Linux distributions.

Programming Tools
Whenever you start programming Webpages, you will have to choose which
software to use, and you might think you need a lot of money for licenses and
so on. Well, think again, because you have excellent tools that will be more
than enough to program Websites (and I strongly recommend that you use
these when working with this book). On Windows platform you have two
great tools called Notepad and Wordpad. I personally prefer the first one
because it is much simpler and does not have all the unnecessary things that
Wordpad has. On UNIX you have "vi" and "emacs," which is pretty much
like choosing between Red Sox and Yankees (or between Real Madrid and
Fe Barcelona), since in most cases people that like one hate the other. In my
case it is true: I love emacs and hate vi. But it is only a question of taste.
If you think those tools are too basic for you and you would like to see
some colors in your code when you type it, you might want to choose some-
thing like HomeSite by Macromedia (www.macromedia.com/software/home-
site). It is a simple text editor adapted to Web development, so it recognizes
the syntax and highlights special words and tags. It also allows you to preview
THE TOOLBOX 15

the page and comes with a great tool for the creation of style sheets. Similar
to HomeSite but a bit simpler is UltraEdit (www.ultraedit.com). which allows
you to import or create your own set of syntax rules and colors associated
with those rules.
Another well-known editing tool is Macromedia's DreamWeaver (www.
macromedia.com/software/dreamweaver). The basic way to use Dream-
Weaver is to simply drag and drop the elements you wish to have in the page.
You can also type directly in a "preview" of the page, having DreamWeaver
take care of all the actual coding. Because of this feature, I do not recommend
it for this course, since it promotes laziness, and adds too much useless code.
If you really want to use it, please use the split view and type in the code
directly. (The split view will allow you to see both the preview and code at
the same time).
Finally, we have Microsoft's FrontPage (www.microsoft.com/frontpage).
which is definitely not my favorite tool for Web programming. It creates a
large amount of unnecessary folders and files when you are just trying to
create a simple Website, and adds useless code in the pages that you create.
It might be a great option for people wanting to create a Webpage without
having to understand any of the code, like web designers, for example. If you
are a Web developer, code should be your number one priority, making Front-
Page my last choice. Last, and least, is Microsoft's Word "Export to HTML"
feature, which should be used only by non-Web-savvy people to quickly create
pages from Word documents. It is very problematic, and I discourage its
use.

Other Useful Tools


Finally, there are some tools that are useful for the "cosmetic" part of Web
programming, such as Adobe's PhotoShop and ImageReady (www.adobe.
com/photoshop), probably some of the best image editing software in the
market. They both come as a single bundle, with PhotoShop used mainly for
pictures and ImageReady focused mainly on images for the Web.
Macromedia also offers an array of tools to create animations and facilitate
the design of a Website such as Flash, Fireworks, FreeHand, or Director.
2
The Different
Approaches of Web
Programming
BEFORE WE GET STARTED

Before I head on and start explaining the different languages available in the
Web programming market, let me stress that all the opinions stated are exclu-
sively my personal views. I tend to be very opinionated, but I will try to justify
both my criticism and praises of the different languages presented.

THE BASICS-HTML

The very first programming language that must be mentioned when discuss-
ing Web programming is obviously HTML. The WWW could not be what it
is today if it weren't for this language. The HTML (Hypetrext Markup Lan-
guage) is, as the name indicates, a "markup" language, which generally means
that it is based on the use of tags to provide functionality. The "code" in an
HTML file is simply text containing those tags that provide functionality and
different looks to the page. It is an interpreted client-side language, meaning
that for an HTML page to be viewed, a browser must first download it from
a server into a client machine and then execute the code line by line.
HTML relies strongly on the use of Universal Resource Identifiers (URI).
Each URI represents a way to refer to a page, an image, or even an email

Web Application Design and Implementation: Apache 2, PHP5, MySQL, JavaScript, and
Linux/UNIX, by Steven A. Gabarr6 .
Copyright © 2007 by John Wiley & Sons, Inc.

17
18 THE DIFFERENT APPROACHES OF WEB PROGRAMMING

address. The location of a page is a URI commonly called URL (Universal


Resource Location). For example, an email address URI would look like
mailto:[email protected], a normal URL could be http://www.mydo-
main.com/myfolder/mypage.html#section2. Usually a URL can be of two
types: absolute or relative. An absolute URL is basically a URL that includes
the information on the full path of a file or folder, like domain, subdomain,
file, section, ... A relative URL is one in which you can see not the entire path
of the file, but how to reach it from the current working directory. For example,
if you had the tree structure shown below in your "mydomain.com," and you
were viewing the page "foobar.html," the image mypic.jpg could be accessed
by using either http://www.mydomain.com/images/mypic.jpg (absolute URL)
or ../images/mypic.jpg (lJRL relative to the folder files):

mydomain.com (I)
images

t mypic.jpg
myotherpic.jpg

t
files
foobar.html
otherfile.html
yetanotherfile.html

As you noticed, relative paths usually start with "..1", which means "go to
parent directory" or "'/", which means "current directory." Relative paths
are an easy way to make a Website more portable since they are independent
of the domain that the pages are in. It is especially useful if, like me, you
test all your pages in a local computer before uploading the files to your
host.
The use of URIs is pretty much a necessity in HTML because they allow
you to embed images to a page, send information from a form to a processing
script, create an image map, link to an external style sheet, create frame docu-
ments, cite an external reference, or also refer to metadata conventions to
describe the page.

THE CREATOR-SGML

SGML, or Standard Generalized Markup Language, is a system for defining


markup languages, like HTML. It is a descendant of IBM's Generalized
Markup Language (GML) developed in the 1960s. It relies strongly on the
use of DTDs (Document Type Definitions) to define the syntax of markup
constructs. SGML is not really used on the Web in its full version, but smaller
subsets of SGML are becoming increasingly prevalent in many information
exchange standards.
OTHER SGML-BASED LANGUAGES-XML AND XSL 19

OTHER SGML-BASED LANGUAGES-XML AND XSL

The eXtensible Markup Language (XML) is a simplification of SGML that


relies on the use of tags to organize information in any format that its writer
deems the best. It is a very common language that is at the base of platforms
like .NET. It is used mostly to exchange information through the Web in an
organized manner, making it easy to retrieve information from its files. XML
files are actually interpreted by most browsers nowadays, showing its contents
in a tree format, such as you would see on a file explorer.
Here is an example of an XML file containing information of some games
that I like:

<?xml version="l.O" encoding="ISO-8859-1"?>


<GAMESLIST>
<GAME>
<NAME>Star Wars Galaxies</NAME>
<DEVELOPER>Sony Online Entertainment / Lucas
Arts </DEVELOPER>
<CATEGORY>MMORPG</CATEGORY>
<RELEASED>Summer 2003</RELEASED>
<CLAN>Clan of The Wroshyr</CLAN>
<CHARACTER>Elder Bewchabbacc The Black</CHARACTER>
</GAME>
<GAME>
<NAME>Battleneld 2</NAME>
<DEVELOPER>Electronic Arts / Dice Software</DEVELOPER>
<CATEGORY>FPS</CATEGORY>
<RELEASED>Summer 2005</RELEASED>
<CLAN>lOlst Airborne Division - 160th Special
Operations Aviation Regiment "Night Stalkers"</CLAN>
<CHARACTER>Captain Bewchy</CHARACTER>
</GAME>
<GAME>
<NAME>Pac man - aka Puck-Man</NAME>
<DEVELOPER>Namco </DEVELOPER>
<CATEGORY>Oldie </CATEGORY>
<RELEASED>1980</RELEASED>
<CLAN>Nbuns Team</CLAN>
<CHARACTER>Nica</CHARACTER>
</GAME>
</GAMESLIST>

Because the output produced by browsers when opening a basic XML file
tends to provide too much information, and it does not have a flexible appear-
ance, XSL was created. The eXtensible Style sheet Language is used as a
20 THE DIFFERENT APPROACHES OF WEB PROGRAMMING

perfect complement of XML files, by specifying the appearance that each


section of an XML file should have. It relies on the XSLT (XSL Transforma-
tions), which through a single link of the XSL file on the XML file, will
produce any type of output that the programmer decides to use. It allows a
really quick presentation of the contents of the XML file, with a much nicer
appearance. Note that the XSL file is dependent on the XML file as far as
tags are concerned, but if you have well-formatted XML and XSL files, any
added element to the XML file will still be properly formatted by the XSL.
Here is an example of an XSL file that will allow us to format the previous
XML file:

<?xml version="1.0" encoding="ISO-8859-1" ?>


<html xsl:version="l.O" xmlns:xsl=''http://www.w3.org/1999/
XSL/Transform" xmlns =''http://www. w3. org/1999 /xh tml">
<BODY style="font-family:Arial,helvetica,
sans-serif; font-size: 12pt; background-color: #EEEEEE">
<xsl: for-each select= "GAMESLIST/GAME">
<div style="background-color:grey;color:
white;padding:4px">
<span style="font-weight:bold"><xsl:value-of
select= "NAME"/> </ sl Jan>
by <xsl:value-of select="DEVELOPER"/>
</div>
<div style="Hzargin-left:20px;margin-bottom:lem;font-
size:10pt">
<xsl:value-of select=ICATEGORY"/> game released in
<xsl:value-of select=IRELEASED"/>. I play it with the
<xsl:value-of select="CLAN"/> as
<xsl:value-of select="CHARACTER"/>.
</div>
</xsl : for-each>
</BODY>
</html>

In order to link our .XML file to the XSL file, you would simply add the
following line right after the «Yxml. . . . ?> line of the XML file:

<Zxml-stylesheet type ="text/xsI" href="videogames.xsl" ?>

THE GOOD OLD Java

A language that must be mentioned when studying virtually any program-


ming area is Java. Because of its multiplatform characteristics, this object-
oriented language has been chosen by many developers in the past. The rise
SOMETHING DIFFERENT-JavaScript 21

of technologies such as J2EE (Java 2 Enterprise Edition) or J2ME made the


use of Java a necessity. One problem in using Java in the Web is mostly that
Java applications run as applets embedded in Webpages, not as a working
part of the page itself. Basically, your Java-based Webpages are not really
pages, whose appearance changes depending on the Java code. Instead, the
page itself is like a frame for a full Java application. This means that the code
must be compiled first into "byte codes," which will have to be downloaded
by the client and will start running only after the client has received the entire
program.
Java is currently undergoing some changes and improvements that will
supposedly make it a very strong choice for Web programming, but in my
opinion, it is far from the best option out there. The fact that applets need to
be fully downloaded and then interpreted by a Java virtual machine in the
client's computer makes it slow, and speed is usually a major factor in the
Web. It is also quite complex to use, since it is a full object-oriented program-
ming language, and not really the fastest way to write a scripting page.
I personally do not recommend the use of Java for Web applications unless
you will be working with J2EE or J2ME. If you are attempting any other
project on the Web, I recommend a scripting language instead.

SOMETHING DIFFERENT-JavaScript

Here comes one of the greater sources of confusion among young developers.
Despite the name "JavaScript," this programming language is very different
from Java. First, it is a compact, object-based scripting language, generally
used to develop client-side scripting pages, and sometimes server Internet
applications. In many cases, JavaScript is code that is embedded directly in
the HTML code of a page, to be executed by the client. This means that the
code is downloaded at the same time as is the rest of the page, making it
entirely visible. It is then interpreted line by line at the same time as are the
HTML tags. Again, it is different from Java; some of the major differences
are listed in Table 2.1.

TABLE 2.1 Differences between Java and JavaScript


Java JavaScript
Compiled byte codes are downloaded from Interpreted by the client as it gets
server to the client prior to execution downloaded
Object-oriented; applets consisting of Object-based; uses built-in extensible
classes with inheritance Objects, but there are no classes or
inheritance
Applets distinct from HTML Code integrated with HTML
Variables data types MUST be declared Variables data types are not declared
Static binding; object references must Dynamic binding; object references
exist at compile time checked at runtime
22 THE DIFFERENT APPROACHES OF WEB PROGRAMMING

THE SAVIOR-PHP

Well, you are probably wondering about the title I gave this section, but let
me explain my logic behind it. I am one of those old-school developers who
believe that C language is one of the best programming languages ever,
because of its flexibility and how easy it is to learn. C is a language that, with
a small toolset, can allow you to achieve pretty much anything you wish to
achieve. Well, for me, PHP is pretty much "C for the Web." The syntax is very
similar, with less syntax restrictions, as we will see little by little, but follows
the two concepts of C that I like the most: flexibility and ease of use. It is
really easy to learn; an experienced programmer can pick it up in a couple of
days. Another great asset of PHP is the fact that it runs server-side, meaning
that the code is executed before the client has access to it, but we shall discuss
this later on. Let us talk about the basics.
PHP is a recursive acronym of Hypertext PreProcessor and, as the name
indicates, works like many preprocessors found in other languages. This
means that the code is read line by line and interpreted as it goes, or at least
that was how PHP started. It is an open-source scripting language, so you will
be able to find many sites enhancing its development. It also means that the
PHP project is created and maintained by developers who wish to invest their
free time in making the product better, yet free.
PHP was designed to work for the Web, and its code is embedded directly
in HTML pages, although, as we shall see later, it is possible to separate
HTML and PHP through the use of templates. Interestingly, PHP is not
limited to work on the Web, and can actually be used to create command-line
scripts that you could run from a shell, or even GUI (Graphical User Inter-
face) applications through the use of the PHP-GTK library.
PHP is also designed to work closely with a wide variety of databases,
including Oracle, MySQL, PostgreSQL, ODBC, and Sybase among others,
making it an excellent choice for database-driven Websites, regardless of the
database you wish to use. It also includes an extensive set of libraries that
allows developers to interact with a wide range of other technologies. PHP
developers can write applications that will generate images, PDF documents,
work LDAP authentication servers, communicate with flash animations, and
many other things that unfortunately we will not be able to discuss, since it
would probably take several volumes.

THE RIVAL-ASP.NET'

Active Server Pages (ASP) and now ASP.NET are probably among the major
sources of confusion among developers. ASP used to be an actual program-
ming language developed by Microsoft that worked similarly to PHP; it was
a server-side scripting language, hence the title "the rival." With the arrival
of the .NET platform, ASP.NET received an entirely new meaning, referring
ANOTHER BIG OPTION-Perl 23

to a development platform, rather than an actual programming language; that


is why you will probably see in the markets that teach how to "program in
ASP.net with another programming language." There are many to choose
from, including, for example, Visual Basic.Net. The whole idea is that you can
develop ASP.NET applications in your desired language. It is all based on the
use of the Common Language Runtime (CLR) designed for .NET. It is widely
used with Web services; it is highly efficient and very popular in big corpora-
tions. One main difference from PHP is the fact that it is not open source,
and its development depends exclusively on Microsoft's developer team. This
also means that using it might become quite expensive if you are to work on
the "official" professional version of the developer. I personally like to call
this the "PHP for high class."

THE MYTH-CGI

Now, here is a good source of laughter among recruiters who know about Web
programming. Many people think that CGI (Common Gateway Interface) is
an actual programming language and tend to "beef up" their resumes, adding
it to their list of known programming languages, without really understanding
what CGI is. CGI is a common gateway interface, and is definitely not a pro-
gramming language. It is a standard for interfacing external applications with
information servers, or, if you prefer, a "magical door" that will allow you to
run your normal executable files in a Webpage. CGI applications are executed
in real time, allowing a dynamic output, such as, for example, generating a
Webpage adapted to a set of received inputs. The way it works is simple; you
first write an application in your favorite language and compile it to an execut-
able rename it to "file.cgi" (note that this is technically optional, and many
developers leave script names as "file.exe"; I personally discourage this).
Some of the most common allowed programming languages are etc++,
FORTRAN, Perl, TCL, UNIX Shell script, Visual Basic, and Apple script.
Of course, to make your application more useful for the Web, it is usually
written to receive a set of parameters and produce HTML code that will be
displayed as the page's output on the browser.

ANOTHER BIG OPTION-Perl

Even though I used Perl only when I was a computer science student, and
considering that it is never in my list of languages to use, I have nothing nega-
tive to say about it. Perl is a very powerful programming language, and also
very flexible, if anything, it is more complicated to learn and use than PHP.
It is also open-source, and one of the best options if your application is meant
to work extensively with text manipulation. Some of the most powerful regular
expression tools were created for Perl, and then exported to other languages,
24 THE DIFFERENT APPROACHES OF WEB PROGRAMMING

as we will see when we study PCRE functions in PHP. Websites such as


Amazon.com are partly built in Perl, so you can see that it is not just a little
programming language for small applications. It also has the ability to inter-
face with external CIC++· libraries through the use of XS and SWIG.

THE FUTURE?-C#

C# was a language created to work with .NET as a simple yet powerful object-
oriented programming language, mixing a programming interface similar to
the old Visual Basic, yet having the object-oriented features you could find
in C++. It is Microsoft's answer to Sun's Java. Java became increasingly
popular through J2EE, so Microsoft decided to create a language following
the same principles on their version of the three-tier architecture program-
ming platform, .NET. It strongly relies on XML as information exchange
format, and it is gaining popularity for programming Web services. As do
other .NET languages, it requires code to be compiled, yet it follows the
principle of Java's byte codes, by compiling into a platform-free language,
that will be interpreted by clients.
The reason behind the question mark is that even though C# is a fairly
recent language it is meant to be the flagship in the .NET revolution-or at
least that is what Microsoft representatives were announcing when they pre-
sented .NET. The reality is that its acceptance is still growing, but many .NET
developers prefer relying on older programming languages that they are more
familiar with ..NET is still gaining importance, and who knows, maybe it will
be the most predominant platform for Web services, not only on Microsoft
applications and Websites, but as a more global solution. If that happens,
surely C# will become increasingly popular and will be the first choice of
programming language for new developers.

CLIENT-SIDE VERSUS SERVER-SlOE-WHICH SIDE TO PICK?

As we have seen, most scripting languages are defined as either client-side or


server-side. A client-side program is basically a program that needs to be fully
downloaded by the browser to use it. The code in many cases is embedded in
HTML code, which results in full disclosure of how your program works,
since all users can read it by choosing the "view page source" option in their
browsers. In many cases the code is interpreted by plugins in the client, which
brings us to another problem of client-side applications-they are browser-
dependent. As we will see when studying JavaScript, many features are not
cross-browser, meaning that they can be used only in a specific browser,
sometimes even in a specific version of it. The positive side of client-side
scripting, and the reason for its continued use, is that once the code is down-
loaded, the server has nothing else to do. The client is solely responsible for
MY CHOICES-PHP, MySQL, JavaScript 25

any calculations or actions that might take place, which allows programmers
to create Webpages that will change dynamically as the code is executed.
Server-side applications run in the server, as the term indicates. This means
that when a client attempts to access a script programmed that way, the query
is sent to the server along with any input that the script might need. The script
then runs on the server, utilizing server resources only, and then sends the
final output to the client, who can see only that result, and has no access to
the source code itself. This obviously is a great asset since it protects the code,
which is very important for security reasons. Another great advantage of
having scripts run directly on the server is that you need to worry only
whether the server knows how to run it properly. Unlike the scenario in client-
side applications, the script will run exactly the same way, producing the same
output regardless of the client's platform or browser. On the negative side,
each time you wish to do something dynamic, you must communicate back
and forth between client and server.
Now that we know the differences between both sides, it is generally the
time to choose your preference, by selecting the language to use. Most devel-
opers, and therefore most books out there, tend to choose only one side, but
not me. Even though it is possible to create Websites based on just one tech-
nology, taking advantage of server-side and client-side programming simulta-
neously gives much more flexibility and allows a greater set of functionalities.
Some features run better in client-side, some in server-side, so restricting
yourself to only one will potentially limit your final project. Throughout this
book we will learn when .it is better to use a client-side language such as
JavaScript, or a server-side language like PHP.

MY CHOICES-PHP, MySQL, JavaScript

Now that we have seen some of the most common options that programmers
face when engaging in Web programming, we must choose which technologies
to use. In our case, the choices are obviously known. One question you might
ask is why those choices and not others.
First, we have PHP. It is one of the most powerful and flexible programming
languages for the Web. It is free, is easy to learn (making it ideal for a one-
semester course), and simplifies any database access you might want to use.
JavaScript, although I do not like it as much as a language itself as it is
much more restrictive syntaxwise than PHP, is a really useful programming
language. As we will see, it is important to have a client-side language to
couple with PHP to make our pages more lifelike, dynamically changing
without having to constantly communicate with the server, and JavaScript will
help us fulfill that need.
MySQL, even though we have not discussed it yet, is a free database that
can be installed in any platform, providing a reliable solution for information
handling. It is also extremely easy to use MySQL databases with PHP, which
26 THE DIFFERENT APPROACHES OF WEB PROGRAMMING

will make our job so much easier. My "second best" option for databases
would be PostgreSQL, similar to MySQL with even some extra features, but
again, we shall follow the path of simplicity for this book.
Finally, and pretty much most importantly, these are the languages that I
have been using for years, and I never had any problems with them. Knowing
how to properly mix these three programming languages should allow you to
create any professional database-driven Website you would like to. Also,
although you might use different technologies in the future, mastering these
three will give you the mindset needed for Web development. It is like learn-
ing how to play soccer; you must learn how to kick the ball, regardless of the
shoes you will wear or the team you will support. Web programming is much
the same; if you know how to properly design a Website, the language choice
will be only secondary.
3
Introduction to HTML

WHAT DO YOU NEED TO GET STARTED?

Before we start discussing HTML, let me give you a checklist of things you
should have with you when programming. First, you need a basic text editor
like Notepad or emacs. You can also use more advanced tools, like the ones
mentioned in Chapter 1, but if you really wish to learn the ins and outs of
HTML, you are better off with a basic editor. The next needed thing is a
browser, which will be used to test the pages and make sure that they look
the way you want. Third, you need, obviously, some basic HTML knowledge.
Last but not least, you need good music. People usually think I'm kidding
when I mention music as a necessity, but from my experience, the right music
can activate the brain to work more efficiently. The right music will depend
on your own personal taste, but I would recommend either classical if you
work better in a calm environment or hard rock, punk, and other fast-paced
music if, like me, you prefer the music tempo to drive your fingers into a typing
frenzy. This chapter will try to make sure you have element number three:
basic HTML knowledge.

Web Application Design and Implementation: Apache 2, PHP5, MySQL, JavaScript, and
Linux/UNIX, by Steven A. Gabarr6
Copyright © 2007 by John Wiley & Sons, Inc.

27
28 INTRODUCTION TO HTML.

HOW DOES HTML WORK?

Syntax Basics
HTML is a markup language and, as such, works entirely through the use of
tags. Each tag is used to define different parts of the file, different styles, links,
images, embedded elements, forms, and so on. Each tag starts with the char-
acter "<" and finishes with ">". Keep this in mind because those characters
are restricted for tags, meaning that your page might behave in a strange way
if you attempt to use it in a normal string. If you wish to use that character,
refer to the special characters table shown in Appendix A. Now, some tags
require an opening and a closing tag in order to show the area of effect of the
tag. In those cases the closing tag will always start with "«I", followed by the
name of the tag it is closing (without the attributes list) and ">".
For example, to have some text appearing in white, you could use the
FONT tag, with the attribute color set to "white." To do so, your opening tag
would be <FONT color = "white"> and your closing tag would be </FONT>.
Your final portion of code would look like this:

<FONT color="white"> This text will show up in white</FONT>

Note that HTML is not case-sensitive, so you can mix uppercase and lower-
case letters. Nevertheless, I strongly advise everyone to capitalize all tags
since it makes code reading much easier.
Finally, remember to name your files with either .html or .htm as their
extension.

File Structure
It is very important to understand the basic structure of an HTML file,
knowing exactly where each part of your code must be written in. It is some-
thing fairly easy to remember, but unfortunately there are still people who
claim to be Web programmers but who misuse the file's main areas. Good
Web design and programming demands efficient and effective use of the
available tools. This book is designed to avoid these pitfalls.
The first thing is the full file, which must always start with the tag <HTML>
and finish with </HTMI~>. You should never have HTML tags before the
opening tag, nor after the closing one. One of the reasons for this occasional
error is the fact that most browsers can now ignore major errors like this one
and still manage to create a proper-looking output, but please always start
your files by setting up these two tags.
The next section to know is the header, limited by the tags <HEAD> and
</HEAD>. This section holds all information related to the file, including its
author, its keywords, its title, and sometimes even some JavaScript functions
that will be used in the page. Most basic pages use the header only to specify
HOW DOES HTML WORK? 29

the title that will appear on the browser window.To do so, use the <TITLE> ...
</TITLE> tags. Any text written between the opening and closing tags will
appear in the title bar of the browser.
The final area is the body, starting with <BODY> and finishing with
</BODY>. The body of a page is the actual content of the page, meaning that
the data that will appear inside the browser window. The body tag can accept
a set of properties that allow you to set up a background image (background)
or color (bgcolor); specify font colors for text (color), links (link), visited links
(vlink), active links (alink), and even action scripts to run on load or unload
of the page. There should always be a body section in a Webpage, unless you
are using the page as a frameset definition page (see discussion later).
Here is an example of what a "Hello world" HTML page should look
like:

<HTML>
<HEAD>
<TITLE>Hello World Page</TITLE>
</HEAD>
<BODY>
HELLO WORLD!!! <BR>
And have a nice day!
</BODY>
</HTML>

Note the indentation I have used. This is not required, but will improve the
readability of your code. You will also note the use of the tag <BR>, which
forces a break of line. It is important to realize that any group of white spaces
(whether it is a tab, a new line, or basic spaces) is always translated on the
screen as a single white space. This is important to know since the appearance
your code has will not necessarily be the same as in the output. Check the
following example:

<HTML>
<HEAD>
<TITLE>Hello World Page</TITLE>
</HEAD>
<BODY>
HELLO WORLD!!!
And have a nice day!
</BODY>
</HTML>

You probably noticed that this code is almost exactly the same as the previous
one except that there is no <BR> tag after "Hello World!! L" In this example,
the text "And have a nice day!" would show on the same line as "HELLO
30 INTRODUCTION TO HTML

WORLD!!!," even though it is written a line below it, because the "new line"
will be translated into a single white space.
As a teacher I enforce the use of the basic six tags needed for an HTML
proper structure, so I would recommend everyone to make it a habit to write
them all as soon as a page is created, and then fill in the blanks.

Tag Parameters
As we saw previously with the FONT and BODY tags, it is possible to add
attributes to an opening HTML tag to make it more effective. Each attribute
will affect the area after the opening tag and will finish with the closing tag.
Remember that there is no need to write the attributes in the closing tag.
Checking the W3C website (www.w3c.orG) can get you an exhaustive list of
all the attributes that tags can use, but I will give you the ones I consider most
important for the tags that I will teach you at the end of this chapter.

BASIC TEXT FORMATTING

There are many ways to format text in HTML, but we will discuss only the
real basics right now. There will be more details on styles in Chapter 10. The
tags I am about to show you are considered to be deprecated and should be
replaced with the use of style sheets, but as much as this is true, you probably
want to get started without having to learn advanced formatting features. In
that case, the following tags are ideal.
The first basic tool commonly used for formatting text is the <P> ... </P>
tag, which stands for "paragraph." As the name indicates, it defines an area
that works as a single block, and most browsers will automatically break a new
line at the end of a paragraph. I try not to use this tag when writing normal text
since the output on the screen might be different depending on the browser, so
I prefer to handle my paragraphs manually. On the other hand, paragraphs are
really useful when using style sheets, as we will see in Chapter 10.
A very useful tool in HTML is the different heading styles that can be
used. There are six basic: levels of headings that can be used to easily write
titles, chapters, or sections. Each heading is treated as a paragraph, so a new
line is added automatically when the tag is closed. To use a heading, simply
wrap your title with «Hn» ... <IHn>, where "n" is the level of title you wish
to use from 1 to 6 (with HI the biggest heading and H6 the smallest). If you
wish to add extra linebreaks you can use, as seen earlier, the <BR> tag.
To change the appearance of text, you can use <I» ... <II> to italicize a
text, <B> . . . </B> to make it bold, or <V> . . . <IV> to underline it. As
always, these tags affect the text only between opening and closing tags. It is
also possible to use the <FONT> tag to specify colors, fonts, sizes, and back-
ground colors, for example, but it is considered poor programming practice
to use these in your HTML code since it makes it much more difficult to read.
Instead, you should use styles, which, again, we will see in Chapter 10.
BASIC TEXT FORMATTING 31

Most tags, including <P>, accept an attribute called ALIGN that allows
setting of the horizontal alignment of a block by setting it to "left," "center,"
"right," or "justify." It is also possible to center an area of the page by using
the <CENTER> . . . </CENTER> tag. The advantage of the <CENTER> tag
is that it will act on anything between opening and closing tags, regardless of
the type of element (form input, image, paragraph, button, etc.).
To do a basic enhancement on your page's look, you can use horizontal
rules. These are horizontal lines used mostly to separate sections and para-
graphs. To use it, just write <HR> with any of the following attributes:
ALIGN (left, center, or right), NOSHADE to remove the shade under the
line, SIZE (in pixels) to specify the height of the line, and WIDTH (length
in either pixels or percentage of the page) to specify the linewidth. An example
ofa nice-looking rule could be <HRALIGN=centerSIZE=l WIDTH=75%>,
which would create a line of 750/0 of the page's width, centered in the page,
and with 1 pixel height. Note that this tag does not need to be closed.
Finally, to conclude this set of basic formatting tools, I would have to add
the <BLOCKQUOTE> . . . </BLOCKQUOTE> tag. This tag was created
to be used to quote other people in a text, but it has a nice property. Any
text inside a <BLOCKQUOTE> tag is automatically indented, which is great
for a really fast indentation solution. I personally have used it in the past to
force a blank margin at the beginning of my pages, making the output
cleaner.
Here is an example using all these tags:

<HTML>
<HEAD>
<TITLE>Formatting example</TITLE>
</HEAD>
<BODY>
<BLOCKQUOTE>
All my text will show up with an indentation!
<P ALIGN=right>This is a first paragraph with right
alignment</P>
<P ALIGN=left>And this is a separate left-aligned
paragraph with things written in <I>italic</I>, <B>bold</B>,
<U>underlined</U> and even <U><B><I>all mixed up</I></B></U></P>
<CENTER>
<HR size=l width=75%>
<Hl>Headingl</Hl>
<H2>Heading2</H2>
<H6>Heading6, and like the others I'm centered!</H6>
</CENTER>
</BLOCKQUOTE>
</BODY>
</HTML>
Random documents with unrelated
content Scribd suggests to you:
vers le milieu; supprimez la moitié de cet os; coupez le petit bout du
moignon; séparez les ailerons des ailes; coupez-en la pointe, ce
qu’on appelle le fouet; levez vos ailes dans la jointure; ménagez
l’estomac, séparez-le des reins; parez-le des deux bouts et des deux
côtés; coupez le rein en deux; parez le croupion, coupez-en la petite
pointe; supprimez le boyau adhérent au croupion; parez ce rein et
ôtez-en les poumons; mettez dans une casserole une chopine d’eau,
un oignon coupé en tranches, quatre branches de persil, un peu de
sel, et vos morceaux de poulets; faites-les blanchir, c’est-à-dire,
faites jeter un bouillon à cette eau; retirez-les, égouttez-les sur un
linge blanc; parez-les, essuyez-les; passez votre eau à travers un
tamis de soie; mettez dans une casserole un quarteron et demi de
beurre; joignez-y vos poulets, faites-les revenir légérement; singez-
les avec une pincée de farine de froment; sautez-les pour bien mêler
votre farine; mouillez-les peu à peu, en les délayant avec votre eau
de poulet; ajoutez-y un bouquet de persil et ciboules, garni d’une
demi-feuille de laurier, d’un clou de girofle et de champignons
tournés (voyez l’article G arnitures ); faites cuire votre fricassée,
dégraissez-la: sa cuisson faite, si la sauce se trouve être trop longue,
versez-en une partie ou le tout dans une autre casserole, et faites-la
réduire à consistance de sauce; remettez-la sur vos membres de
poulets; faites une liaison de trois jaunes d’œufs, avec un peu de
crême ou de lait; faites bouillir votre fricassée; retirez-la du feu, liez-
la; remettez-la sur le feu, sans la faire bouillir, pour achever de la
lier; sachez si elle est d’un bon goût; finissez-la avec un demi-pain
de beurre, un jus de citron ou un filet de verjus; dressez-la, en
commençant par mettre les pattes au fond du plat, les reins dessus,
ainsi que les estomacs; et rangez par-dessus, en les entremêlant, les
cuisses et les ailes; saucez et servez.
Vous pouvez faire la fricassée de poulets à chaud et à froid, de la
même manière qu’il est énoncé à l’article Salmi de Perdreaux chaud
ou froid, lorsque vous aurez lié votre fricassée de poulets, qu’elle
sera un peu froide, ajoutez de la gelée à la sauce; faites-la prendre
de la même manière qu’il est expliqué pour les perdreaux:
n’employez point de croûtons.
Fricassée de Poulets à la Chevalière.
Préparez deux beaux poulets gras, et faites-les cuire de la même
manière qu’il a été expliqué, excepté qu’il faut mettre de côté les
ailes, que vous piquez avec du menu lard; supprimez la peau; ôtez la
chair du bout de l’os, et grattez-le; si c’est la saison, vous piquerez
deux de ces ailes avec des truffes; faites fondre du beurre dans une
tourtière; arrangez-y vos quatre ailes, saupoudrez-les d’un peu de
sel fin, couvrez-les d’un papier beurré; mettez-les cuire dans un four
ou sous un four de campagne; votre fricassée étant finie, comme il
est dit à la précédente, dressez-la, saucez-la, décorez-la de ces
quatre ailes, mises en croix, que vous aurez glacées, avec lesquelles
vous mêlerez quatre belles écrevisses; vous mettrez une grosse
truffe au-dessus, comme pour couronner votre entrée et vous
servirez.

Kari.
Dépecez deux poulets, comme il est indiqué à l’article Fricassée
de Poulets; mettez dans une casserole un quarteron de beurre, une
même quantité de petit lard et les membres de vos poulets; passez
le tout; singez-le avec une cuiller à bouché, pleine de farine de
froment; sautez ce kari, mouillez-le peu à peu avec du bouillon;
assaisonnez-le d’un bouquet de persil et ciboules, d’une poignée de
champignons, de sel et d’une cuillerée à café de poudre de kari
(voyez l’article Poudre de Kari); laissez cuire votre kari; sa cuisson
faite, dressez-le dans un vase creux; servez-le avec du riz, que vous
préparerez ainsi:
Faites blanchir et crever votre riz avec un peu de sel et presque
sans mouillement; beurrez un vase et remplissez-le de ce riz qui doit
être bien entier, de façon à en former un pain; tenez-le chaudement
sur une cendre rouge; à l’instant de servir, retournez-le sur un plat;
si la poudre de kari n’avait pas donné assez de couleur à votre
ragoût, faites infuser dans un peu d’eau une pincée de safran du
Gâtinais; exprimez-le sur votre kari, mêlez-le bien; goûtez s’il est
d’un bon goût, s’il est assez pimenté. Vous pouvez faire, si vous le
voulez, procédant de la manière énoncée, un kari de lapereaux, de
veau, de pigeons, etc.

Poulets en Entrée de Broche.


Ayez deux poulets gras, bien blancs, d’égale grosseur et sans
taches: après en avoir plumé les ailerons, flambez-les légérement;
prenez garde d’en roidir la peau: épluchez-les, rompez-leur le
brichet, videz-les par la poche; ayez soin d’en extraire tous les
intestins; servez-vous, pour cela, du crochet d’une cuiller à
dégraisser, et prenez garde de crever l’amer; mettez dans une
casserole environ trois quarterons de beurre, un peu de sel, un jus
de citron et un peu de muscade râpée: mêlez le tout à froid avec
une cuiller de bois; remplissez-en vos poulets également; retroussez-
les en poulets d’entrée, c’est-à-dire, les pattes en dehors; passez-
leur une ficelle dans les ailes, et qui fixe la peau de la poche le long
du rein; pelez jusqu’au vif un citron, coupez-le en deux, frottez-en
l’estomac de vos poulets et le dessus, afin qu’ils soient très-blancs;
exprimez le jus de votre citron; foncez une casserole de bardes de
lard; posez-y vos poulets; joignez-y une carotte, un oignon piqué de
deux clous de girofle, un bouquet de persil et ciboules, une demi-
feuille de laurier, la moitié d’une gousse d’ail, une lame de jambon,
et quelques petits morceaux de veau: levez la peau d’un citron,
coupez-le en tranches, ôtez-en les pepins, et mettez ces tranches sur
l’estomac de vos poulets; couvrez-les de bardes de lard; mouillez-les
avec une cuiller à pot de bouillon ou d’une poêle, et, faute de cette
dernière, mettez avec le bouillon un demi-verre de vin blanc;
couvrez-les d’un rond de papier et d’un couvercle; faites-les partir;
posez-les sur une paillasse, avec feu modéré dessus et dessous: leur
cuisson achevée, égouttez-les, débridez-les, faites-en sortir le
beurre; dressez-les et servez dessous, soit une sauce aux truffes,
une espagnole très-corsée, une sauce tomate, une sauce à
l’estragon, un aspic, un ragoût de champignons ou un ragoût mêlé,
etc.

Poulets à l’Ivoire.
Préparez et poêlez deux poulets, comme il est dit ci-dessus,
excepté qu’il en faut supprimer les pattes; coupez les bouts des
moignons; grattez-en les os: leur cuisson faite, égouttez-les,
dressez-les et saucez-les avec une sauce à l’ivoire. (Voyez cet
article.)

Poulets, Sauce aux Huîtres.


Préparez deux poulets comme ceux en entrée de broche; faites-
les cuire de même, égouttez-les et dressez-les; prenez six douzaines
d’huîtres, ôtez-les de leurs coquilles, mettez-les dans une casserole,
sans autre mouillement que leur eau; faites-les roidir; mettez dans
une casserole quatre cuillerées à dégraisser de velouté réduit;
égouttez vos huîtres et jetez-les dans ce velouté; faites-leur jeter un
bouillon; ajoutez-y une pincée de persil haché et blanchi, un pain de
beurre et une pincée de gros poivre: au moment de servir, exprimez
dans cette sauce le jus d’un citron; sachez si elle est d’un bon goût,
versez-la dessus vos poulets, et servez.

Poulets, Sauce aux Truffes.


Ayez deux poulets, préparez-les comme ci-dessus, et poêlez-les
de même: leur cuisson achevée, égouttez-les, dressez-les, et mettez
dessus une sauce aux truffes. (Voyez cet article.)

Poulets à la Sauce Tomate.


Préparez deux poulets de la même manière que ci-dessus, et
poêlez-les: leur cuisson faite, après les avoir égouttés, dressez-les et
servez-les avec une sauce tomate. (Voyez cet article.)

Poulets à l’Estragon.
Préparez deux poulets, comme il est indiqué ci-dessus; poêlez-les
de même, et leur cuisson faite, égouttez-les, dressez-les, et saucez-
les avec une sauce à l’estragon. (Voyez cet article.)

Poulets bouillis à l’Anglaise.


Flambez et troussez deux poulets, comme ceux d’entrées de
broche: mettez de l’eau dans une casserole assez grande, pour qu’ils
y soient à l’aise; faites-la bouillir; ajoutez-y une pincée de sel;
mettez-y vos poulets; faites qu’ils bouillent toujours, sans aller trop
vite: leur cuisson achevée, égouttez-les, dressez-les, saucez, et
masquez-les avec une sauce à l’anglaise. (Voyez cet article.)

Poulets en Lézard.
Videz et flambez deux beaux poulets; supprimez-en les pattes
ainsi que les ailerons, et conservez-en la peau jusqu’à la tête;
ouvrez-les par le dos, jusqu’au croupion; désossez-les entièrement,
étendez-les sur un linge blanc, garnissez-les en dedans d’une farce
cuite de volaille, coulez-les, et donnez-leur la forme d’un lézard, en
procédant ainsi: de la peau du cou farcie formez-en la queue du
lézard, des cuisses faites-en les jambes de derrière, et des deux
bouts des ailes les jambes de devant; de l’estomac le dos, et pour en
faire la tête, prenez une truffe, à laquelle vous donnerez la forme de
celle du lézard: si vous n’avez pas de truffe, servez-vous d’un navet,
que vous introduirez dans le corps de cette espèce de lézard;
relâchez un peu de farce cuite, avec un peu de velouté; étendez-en
une légère couche sur le dos de vos lézards; décorez-les de diverses
couleurs avec des petites omelettes, coloriées de blanc, de vert, de
rouge et de jaune; enfin imitez en tout la richesse de la peau du
lézard (voyez l’article Petites Omelettes [Tome II]): cela fait, foncez
une casserole ovale de bardes de lard; posez-y vos lézards; ayez
soin qu’ils conservent leur forme; poêlez-les comme les poulets en
entrée de broche; couvrez-les d’un fort papier et d’un couvercle;
faites-les partir; mettez-les cuire avec peu de feu dessus, pour ne
pas altérer leur décoration: la cuisson faite, égouttez-les, dressez-
les, et servez dessous une ravigote ou une hollandaise verte. (Voyez
l’article S auces .)

Poulets aux Pois.


Prenez une demi-livre de lard de poitrine; coupez-le en gros dés;
supprimez-en la couenne, faites-le blanchir, égouttez-le; mettez dans
une casserole un quarteron de beurre; faites un petit roux (voyez
l’article Roux); passez-y votre lard, et faites-le roussir légérement:
lorsqu’il sera d’un beau blond, joignez-y deux jeunes poulets
dépecés, comme pour la fricassée; mouillez-les avec une cuiller à pot
de bouillon; délayez bien le tout, que vous assaisonnerez d’un
bouquet de persil et ciboules, et où vous aurez mis une demi-feuille
de laurier et un clou de girofle; faites bouillir votre fricassée; mettez-
y un litron de pois très-fins; faites aller à grand feu, sans la couvrir;
dégraissez-la: sa cuisson faite, dressez vos membres de poulets,
faites-en réduire la sauce, si elle est trop longue; goûtez si elle est
d’un bon goût, masquez-en ces membres, et servez.

Autre Façon de fricasser des Poulets aux Pois et au Blanc.


Ayez deux jeunes poulets, flambez-les, dépecez-les, comme pour
la fricassée; mettez un morceau de beurre dans une casserole;
jetez-y vos poulets avec un bouquet de persil et ciboules;
assaisonnez d’un peu de sel fin et de deux moyens oignons; sautez
le tout; faites revenir vos poulets, couvrez-les et laissez-les cuire
doucement, avec feu dessus et dessous; à moitié de leur cuisson,
mettez-y un litron de pois fins, que vous aurez manié dans de l’eau
et du beurre, gros comme une noix; égouttez-les dans une passoire;
laissez suer et cuire le tout, en le sautant de temps en temps: la
cuisson achevée, ôtez les oignons et le bouquet; liez votre fricassée
avec une cuillerée à dégraisser pleine de bon velouté réduit: si vous
n’avez pas de velouté, maniez un pain de beurre avec un peu de
farine de froment, et servez-vous-en pour opérer cette liaison:
dressez votre fricassée comme la précédente, et servez.

Poulets au Beurre d’Écrevisses.


Préparez et faites cuire ces poulets, comme il est indiqué aux
poulets en entrée de broche (voyez cet article); égouttez-les; mettez
dans une casserole quatre cuillerées à dégraisser de velouté réduit
et du beurre d’écrevisses gros comme un œuf (voyez l’article Beurre
d’Écrevisses); passez le tout, travaillez bien votre sauce, mettez-la
dans le fond de votre plat, et dressez vos poulets dessus.
Poulets à la Broche pour Rôt.
Ayez deux beaux poulets gras, ou trois petits à la reine;
préparez-les comme la poularde (voyez cet article); piquez-en un
des deux, s’ils sont gras, et un ou deux, s’ils sont à la reine; bardez-
les, embrochez-les, enveloppez-les de papier et faites-les cuire: aux
trois quarts de leur cuisson, déballez-les pour achever de les cuire et
faire sécher le lard: laissez-les prendre une belle couleur dorée; si
vous avez de la glace, mettez-en légérement avec un pinceau sur le
lard de vos poulets, dressez-les sur un lit de cresson, assaisonné
convenablement d’un peu de sel et de vinaigre, et servez.

Poulets à la Hollandaise.
Apprêtez et faites cuire deux poulets, comme pour entrée de
broche (voyez l’article Poulets en Entrée de Broche); égouttez-les;
mettez dans une casserole quatre cuillerées à dégraisser pleines de
velouté réduit, de la glace gros comme le pouce, ou de la réduction
de veau, du vert d’épinards gros comme une noix; sautez et vannez
votre sauce: au moment de servir, exprimez le jus d’un citron, en
supprimant les pepins: mettez-la dans le fond de votre plat; dressez
dessus vos poulets; faites en sorte qu’ils soient très-blancs, et
servez.

Poulets à la Tartare.
Nettoyez et préparez deux poulets; troussez-les en poule, c’est-à-
dire, les pattes en dedans; fendez-en les reins et aplatissez-les;
cassez les os des cuisses; mettez un morceau de beurre dans une
casserole, avec sel et gros poivre; faites-y revenir et cuire ensuite
vos poulets, avec feu dessous et dessus: un quart d’heure avant de
servir, passez-les, mettez-les sur le gril à un feu doux; ayez soin de
les retourner deux ou trois fois, pour qu’ils prennent une belle
couleur, et servez dessous une sauce à la Tartare. (Voyez cette
sauce.)

Poulets, Sauce au Pauvre Homme, et diverses autres.


Préparez vos poulets comme il est dit ci-dessus; supprimez-en les
cous et les pattes, fendez-en les dos et aplatissez-les; faites-les cuire
à moitié dans le beurre, avec sel et poivre; achevez, sans les passer,
leur cuisson sur le gril, et servez dessous une sauce au pauvre
homme, à l’estragon ou tomate, ou toute autre que vous voudrez.
(Voyez ces Sauces.)

Poulets à la Périgueux.
Choisissez deux beaux poulets gras, bien blancs: après les avoir
épluchés et vidés par la poche (voyez l’article Poulets en Entrée de
Broche) (vous aurez brossé et lavé deux livres de truffes, desquelles
vous supprimerez la peau des grosses; vous en ferez des petites
aussi égales que possible); mettez une livre de lard râpé dans une
casserole; ajoutez-y vos truffes et leurs parures, que vous aurez
hachées; assaisonnez-les de sel, gros poivre, une pincée d’épices
fines, un peu de muscade râpée et une feuille de laurier, que vous
ôterez à la fin; faites-les mijoter sur un feu doux l’espace d’une
demi-heure, en les remuant avec soin; retirez-les du feu; laissez-les
refroidir; mettez vos poulets sur un linge blanc; remplissez-les
également, par la poche, de votre appareil de truffes; retroussez-les
en poulets d’entrée; embrochez-les avec un hatelet; couvrez-les de
bardes de lard, de deux ou trois feuilles de papier; posez-les sur une
broche, faites-les cuire environ cinq quarts d’heure; leur cuisson
faite, déballez-les, égouttez-les, dressez-les, et servez dessus une
sauce à la Périgueux. (Voyez cette sauce.)

Poulet à la Mayonnaise.
Prenez un poulet cuit à la broche; procédez, à l’égard de cette
mayonnaise, comme pour les perdreaux. (Voyez l’article Perdreaux à
la Mayonnaise.)

Salade de Poulets.
Prenez deux poulets rôtis et froids, ou de desserte; coupez-les,
dépecez-les par membres, comme pour la mayonnaise; mettez-les
dans un vase de terre; assaisonnez-les de même qu’une salade;
ajoutez-y câpres entières, anchois et cornichons coupés en filets, de
la fourniture hachée; sautez le tout, dressez-le sur le plat, comme
une fricassée de poulets, sans y comprendre les anchois, les
cornichons et les câpres; garnissez le bord du plat de laitues
fraîches, coupées par quartiers, et d’œufs durs, coupés de même;
décorez votre salade des filets d’anchois et des câpres; saucez-la
avec son assaisonnement, et servez.

Poulets à la Crême.
Ayez deux poulets froids, cuits à la broche; levez-en les estomacs
jusqu’aux cuisses, os et chairs; supprimez-en les poumons; faites
une farce avec les chairs des estomacs, en procédant ainsi: levez ces
chairs ou blancs de poulets; après en avoir ôté les peaux, hachez-les
très-menu, et pilez-les ensuite; parez et pilez également une tetine
de veau, cuite dans la grande marmite: si vous n’aviez pas de tetine,
employez du lard râpé ou du beurre; prenez la mie d’un pain à
potage; faites-la tremper et dessécher dans de la crême double;
mettez par portions égales ces trois substances; pilez le tout
ensemble; ajoutez-y cinq jaunes d’œufs, un peu de muscade râpée,
et du sel ce qu’il en faut: essayez votre farce, goûtez si elle est d’un
bon goût, ôtez votre pilon; incorporez légérement, au fur et à
mesure, et en la remuant avec une cuiller de bois, trois blancs
d’œufs fouettés; mettez-y deux échalotes hachées très-fin, lavées et
passées dans un linge blanc, et, si vous le voulez, un peu de persil
haché; mêlez bien le tout; retirez-le du mortier; mettez deux bardes
de lard sur une tourtière; remplissez vos poulets de cette farce;
unissez-la avec votre couteau trempé dans une omelette; donnez à
cette farce la forme de l’estomac de vos poulets; dorez-la, et faites
dessus le dessin qui vous plaira; entourez ces poulets de papier
beurré, assez haut pour contenir la farce; fixez-le autour avec une
ficelle; posez vos poulets sur votre tourtière; trois quarts d’heure
avant de servir, mettez-les dans le four, faites-leur prendre une belle
couleur: leur cuisson faite, dressez-les et servez dessous une
italienne blanche, ou une sauce au suprême ou une à l’ivoire. (Voyez
l’article S auces .)
Poulets en Friteau.
Dépecez deux poulets, comme pour en faire une fricassée;
mettez-les dans un vase de terre, avec des tranches d’oignons, persil
en branche, sel, gros poivre et le jus de deux ou trois citrons;
laissez-les mariner une heure; égouttez-les; mettez-les dans un
linge, avec une poignée de farine; sassez-les et posez-les sur un
couvercle; vous aurez mis votre friture sur le feu; lorsqu’elle sera à
son degré, mettez-y d’abord les cuisses de vos poulets, peu après
les estomacs, ensuite les ailes, les reins, ainsi de suite pour le reste:
votre friture cuite et d’une belle couleur, égouttez-la, et, après l’avoir
dressée, servez-la, si vous le voulez, avec six œufs frais frits;
arrangez dessus, et servez avec une sauce poivrade. (Voyez l’article
Sauce Poivrade.)

Marinade de Poulets.
Dépecez deux poulets cuits à la broche; faites-les mariner une
demi-heure avant de les servir (voyez l’article Marinade cuite);
égouttez-les; trempez leurs membres dans une pâte à frire, légère,
c’est-à-dire, dans laquelle vous aurez mis des blancs d’œufs
fouettés; faites frire votre marinade, en procédant comme ci-dessus;
quand elle sera cuite et d’une belle couleur, égouttez-la sur un linge
blanc; dressez-la, et servez-la avec du persil frit que vous mettrez
dessous, ou seulement avec une pincée dessus.

Rissoles de Volaille.
Prenez des rognures de feuilletage (voyez Feuilletage, article
P atisserie [Tome II]); abaissez-les en long, de l’épaisseur d’une pièce
de quarante sous, et plus mince, s’il est possible; mouillez le bord de
votre abaisse avec un doroir trempé dans de l’eau; couchez de la
farce cuite de volaille, par parties et d’espace en espace, de la
grosseur d’un grain de verjus; repliez cette abaisse sur ces parcelles
de farce; donnez-leur la forme de petits chaussons: à cet effet,
coupez-les en demi-lune, avec un coupe-pâte goudronné, ou avec
votre couteau; ayez soin que la jointure de vos pâtes soit bien
soudée; farinez un couvercle; arrangez vos rissoles dessus; quand
vous serez sur le point de servir, faites-les frire, qu’elles prennent
une belle couleur; dressez-les et servez.

Poulet en Capilotade.
Dépecez un poulet cuit à la broche; mettez dans une casserole
trois cuillerées à dégraisser pleines d’italienne; à défaut de laquelle
vous employerez de la sauce hachée, et, à défaut de cette dernière,
une sauce au pauvre homme (voyez article S auces ): faites mijoter
votre poulet dans une de ces sauces; un quart d’heure avant de
servir, dressez-le; ajoutez à votre sauce quelques cornichons coupés
en liards ou en filets; saucez et servez.

Poulets à la Saint-Cloud.
Préparez deux poulets comme ceux pour entrée de broche;
prenez deux ou trois truffes bien noires, formez-en des petits clous;
décorez-en vos poulets, ce qui consiste seulement à mettre chacun
de ces clous dans les trous que vous faites, à l’estomac de vos
poulets, avec une petite lardoire; il faut que ces trous soient
également espacés; foncez une casserole de bardes de lard; mettez-
y un oignon piqué d’un clou de girofle, une carotte tournée, un
bouquet de persil et ciboules; saupoudrez l’estomac de vos poulets
de sel fin; exprimez aussi dessus un jus de citron; couvrez-les de
bardes de lard et d’un rond de papier; mouillez-les avec une poêle,
ou employez un verre de consommé ou de bouillon; joignez-y un
verre de vin blanc, une demi-feuille de laurier et une lame de
jambon; trois quarts d’heure avant de servir vos poulets, faites-les
partir; posez-les sur la paillasse, avec feu dessus et dessous: leur
cuisson achevée, égouttez-les, dressez-les, et servez dessous une
sauce aux truffes (voyez l’article Sauce aux Truffes à la Saint-Cloud
ou en petit Deuil). Si vous n’avez point de velouté, passez-le fond de
vos poulets; mettez-y un pain de beurre, manié dans une demi-
cuillerée de farine; faites bouillir votre sauce; dégraissez-la, et l’ayant
fait réduire, passez-la à l’étamine; ajoutez-y vos petits dés de truffes
(dont il sera question à la Sauce en petit Deuil) passés dans du
beurre, et finissez avec un demi-pain de beurre.
Poulets à la Ravigote.
Préparez deux poulets, comme pour entrée de broche; leur
cuisson faite, égouttez-les et servez dessous une sauce à la ravigote
(voyez l’article Sauce Ravigote).

Poulets à la Paysanne ou à la Démidoff.


Ayez deux poulets; dépecez-les comme pour une fricassée;
mettez dans une casserole du beurre gros comme un œuf, quatre
cuillerées à bouche d’huile d’olive; passez votre casserole sur un
fourneau ardent; faites revenir vos membres de poulets; qu’ils
prennent une belle couleur; assaisonnez-les de sel et gros poivre;
lorsqu’ils seront à moitié cuits, joignez-y deux carottes coupées en
liards, quatre oignons coupés en anneaux et une pincée de persil en
branche; passez le tout ensemble; quand les racines seront colorées,
mouillez votre paysanne avec six cuillerées à dégraisser pleines
d’espagnole; remuez-la, couvrez votre fourneau avec de la cendre,
et faites doucement mijoter dessus, environ un quart d’heure, votre
paysanne; ayez soin qu’elle ne s’attache pas; dressez-la et servez.

Poulets à la Reine, sauce à la Pluche.


Préparez et poêlez trois de ces poulets: leur cuisson faite,
égouttez, dressez, marquez-les avec une sauce à la pluche verte, et
servez. (Voyez l’article Sauce à la Pluche verte.)

Poulets à la Provençale.
Prenez deux poulets que vous couperez comme pour une
fricassée; ayez une douzaine d’oignons blancs; coupez-les en demi-
anneaux, avec un peu de persil; mettez vos oignons dans une
casserole ou sauteuse, dans laquelle vous ferez un lit de vos oignons
et un des membres de votre volaille, et recouvrez le tout avec un
autre lit d’oignons et de persil; ajoutez un verre d’huile, une ou deux
feuilles de laurier et du sel en suffisante quantité; mettez-les au feu,
et, lorsqu’ils seront partis, vous les laisserez aller doucement: leur
cuisson faite, glacez-les; dressez-les, en mettant vos oignons au
milieu et un peu d’espagnole pour les saucer; ensuite servez.

Chapon au Gros Sel.


Ayez un chapon; après l’avoir vidé, flambé et épluché, troussez-
lui les pattes en dedans; bridez-le, bardez-le et mettez-le cuire dans
la marmite, dans le consommé, ou dans une casserole, avec du
bouillon; vous vous assurerez de sa cuisson, si, en lui pinçant
l’aileron avec les doigts, il ne résiste pas; égouttez-le; dressez-le, et
mettez-lui sur l’estomac une pincée de gros sel, et saucez-le avec un
jus de bœuf réduit.

Chapon au Riz.
Préparez votre chapon comme le précédent; faites blanchir
environ trois quarterons de riz; égouttez-le, mettez-le dans une
marmite qui puisse aussi contenir votre chapon, que vous posez du
côté de l’estomac; mouillez le tout avec deux bonnes cuillerées à pot
de consommé ou de bouillon; faites partir votre marmite; couvrez-la;
mettez-la mijoter sur la paillasse; ayez soin de remuer de temps en
temps votre riz; sondez votre chapon, pour vous assurer s’il est cuit:
sa cuisson faite, dressez-le; dégraissez votre riz; finissez-le avec un
morceau de beurre, en y mettant sel, gros poivre, un peu de
réduction, si vous en avez, et masquez-en votre chapon: si votre riz
était trop épais, relâchez-le avec un peu de bon bouillon.

Chapon aux Truffes.


Préparez ce chapon comme le précédent; videz-le par la poche;
servez-vous à cet effet du crochet d’une cuiller à dégraisser: prenez
garde de crever l’amer du foie.
Vous aurez brossé et épluché environ deux livres de bonnes
truffes; hachez-en quelques-unes des plus défectueuses; coupez par
dés, et pilez environ une livre de lard gras; mettez-le dans une
casserole, avec vos truffes, du sel, du poivre, un peu de muscade
râpée et des fines épices; faites mijoter le tout à un feu très-doux,
environ une demi-heure; laissez-le refroidir; remplissez-en votre
chapon jusqu’à la poche, et cousez-la; bridez-le, les pattes en long;
conservez-le, si vous pouvez l’attendre, deux ou trois jours; bardez-
le, embrochez-le, après l’avoir enveloppé de papier; faites-le cuire à-
peu-près une heure et demie; déballez-le: si vous l’employez pour
relevé, supprimez la barde; servez-le à la peau de goret, et mettez
dessous une sauce aux truffes. (Voyez l’article Sauce aux Truffes.)

Poularde en Entrée de Broche.


Plumez les ailerons et la queue de cette pièce; flambez-la,
refaites-lui les pattes; prenez garde d’en rider la peau; épluchez-la,
supprimez-en le brichet; videz-la par la poche, et prenez garde d’en
crever l’amer; maniez dans une casserole avec une cuiller de bois un
morceau de beurre; assaisonnez-le du jus d’un citron et d’un peu de
sel; remplissez-en le corps de votre poularde; retroussez-lui les
pattes en dehors; bridez-en les ailes; embrochez-la sur un hatelet;
frottez-lui l’estomac d’un citron, saupoudrez-la d’un peu de sel;
couvrez-la de tranches de citron, desquelles vous aurez ôté les
pepins; enveloppez-la de bardes de lard, de plusieurs feuilles de
papier, liées sur vos hatelets par les deux bouts; posez-la sur la
broche, du côté du dos; faites-la cuire environ une heure, déballez-
la, égouttez-la, et servez-la avec la sauce que vous jugerez
convenable.

Poularde aux Truffes.


(Voyez ci-dessus, Chapon aux Truffes).

Poularde à la Maréchale.
Épluchez et flambez une belle poularde; videz-la par la poche;
ôtez-lui le brichet; remplissez-le de beurre, manié avec du sel et le
jus d’un citron; retroussez-lui les pattes en dehors; piquez-lui
l’estomac de menu lard; donnez-lui le plus de largeur possible, et
faites en sorte que votre poularde ait une belle forme; marquez-la
dans une casserole, comme les poulets en entrée de broche (voyez
cet article); excepté pourtant qu’il ne la faut couvrir qu’avec un rond
de papier beurré, afin qu’elle prenne une belle couleur; faites-la
partir et cuire avec feu dessous et dessus: sa cuisson faite, égouttez-
la, glacez-la, et servez dessous un ragoût à la financière. (Voyez cet
article[4].)

Poularde à la Saint-Cloud.
Préparez cette poularde comme celle à la maréchale, avec cette
différence qu’au lieu de la piquer de lard, il faut la piquer avec des
clous de truffes (voyez l’article Poulets à la Saint-Cloud).

Poulardes à la Bigarrure.
Prenez deux moyennes poulardes; après les avoir épluchées et
flambées, levez-en les ailes, ôtez-en les filets mignons, supprimez les
ailerons et les peaux nerveuses des ailes; piquez deux de ces ailes
d’une deuxième, et les deux autres de petits lardons de truffes, cuits
à moitié; marquez ces quatre ailes dans une casserole foncée de
bardes de lard, avec une carotte, un bouquet de persil et de
ciboules, et deux moyens oignons, dans l’un desquels vous aurez mis
un clou de girofle; mouillez vos ailes avec un peu de consommé:
ayez soin que ce mouillement n’atteigne point le lard piqué de vos
poulardes, et couvrez-les d’un rond de papier; un quart d’heure
avant de servir faites-les partir, avec feu dessous et dessus; désossez
entièrement les quatre cuisses, et remplissez-les d’un salpicon,
composé de truffes et de foies gras (voyez l’article Salpicon); cousez-
en les peaux, et donnez aux cuisses la forme d’une figue aplatie;
coupez les pattes en deux; supprimez-en le haut, et mettez le bas
dans la cuisse, en sorte qu’on ne voie que la moitié de cette patte;
piquez deux de ces cuisses de clous de truffes, en forme de rosettes,
les deux autres devant rester blanches; frottez-les de citron;
marquez ces quatre cuisses dans une casserole, entre des bardes de
lard; assaisonnez-les comme les ailes; faites-les cuire à un feu doux
environ trois quarts d’heure: au moment de servir, égouttez-les,
ôtez-en les fils; égouttez aussi vos ailes; ôtez le nerf des filets
mignons; faites-leur des entailles de distance en distance, et mettez-
y des petites crêtes de truffes, de la largeur de ces filets; donnez-
leur une forme cintrée; sautez-les dans du beurre fondu et un grain
de sel; après égouttez-les; glacez les ailes piquées; dressez-les
toutes les quatre en croix, et posez entre chacune d’elles vos cuisses
de poulardes, en mettant dessus, en forme de couronne, les petits
filets; saucez votre entrée avec une espagnole réduite et travaillée
avec le consommé que vous aurez fait des carcasses de vos
poulardes.

Poularde Sauce Tomate.


Préparez cette poularde comme il est indiqué à l’article Poularde
en Entrée de Broche, et servez dessous une sauce tomate. (Voyez
cette Sauce.)

Poularde à la Broche pour Rôt.


Videz, flambez, épluchez et refaites une belle poularde; bridez-la,
en lui laissant les pattes en long; bardez-la ou piquez-la, embrochez-
la, enveloppez-la de papier et faites-la cuire: sa cuisson faite aux
trois quarts, déballez-la, achevez sa cuisson et faites-lui prendre une
belle couleur; mettez sur votre plat un lit de cresson, assaisonné
convenablement de sel et vinaigre; posez dessus votre poularde, et
servez.

Poularde en Entrée de Broche, à la Hollandaise.


Procédez pour cette poularde comme pour celle en entrée de
broche, et servez dessous une sauce hollandaise. (Voyez cette
Sauce.)

Poularde en Entrée de Broche.


Poêlez ou mettez cette poularde à la broche, et, pour la servir,
mettez une sauce au beurre d’écrevisses, ou toute autre sauce.
(Voyez l’article Sauce au Beurre d’Écrevisses.)

Poularde en Entrée de Broche, à la Ravigote.


Procédez pour cette poularde comme il est indiqué à l’article
Poulets à la Ravigote.

Poularde à l’Ivoire.
Préparez cette poularde comme il est énoncé à l’article Poulets à
l’Ivoire.

Poularde aux Huîtres.


Vous préparez votre poularde ainsi qu’il est dit à l’article Poulets
aux Huîtres.

Poularde, sauce à l’Estragon.


Préparez votre poularde comme les précédentes, poêlée ou à la
broche: sa cuisson faite, égouttez-la, et servez-la avec une sauce à
l’estragon, claire ou liée. (Voyez l’article Sauce à l’Estragon.)

Poularde bouillie à l’Anglaise.


(Voyez l’article Poulets bouillis à l’Anglaise).

Poularde au Beurre d’Écrevisses.


(Voyez l’article Poulets au Beurre d’Écrevisses).

Poularde à la Tartare.
(Voyez l’article Poulets à la Tartare).

Poularde, sauce au Pauvre Homme.


(Voyez l’article Poulets, sauce au Pauvre Homme).

Poularde à la Périgueux.
(Voyez l’article Poulets à la Périgueux).

Mayonnaise de Poularde.
(Voyez l’article Mayonnaise de Poulets).
Poularde à la Crême.
(Voyez l’article Poulets à la Crême).

Marinade de Poulardes.
(Voyez l’article Marinade de Poulets).

Filets de Poulardes au Suprême.


Levez les filets de trois moyennes poulardes, posez ces filets sur
la table, et levez-en les petites peaux le plus mince possible;
trempez dans l’eau le manche de votre couteau, et battez-les
légérement; parez-les; faites fondre dans une sauteuse une
suffisante quantité de beurre; arrangez-y vos filets, en les trempant
des deux côtés; saupoudrez-les d’un peu de sel, couvrez-les d’un
rond de papier; levez avec soin les six cuisses pour vous en faire une
entrée, soit pour le jour ou le lendemain: vous leur conserverez la
totalité de la peau, pour former de ces cuisses des petits canetons
ou des ballons; faites un consommé des carcasses; faites-le réduire
presque en glace, sans lui donner de couleur; ajoutez-y six cuillerées
à dégraisser pleines de velouté réduit, et deux pains de beurre; salez
et vannez votre sauce; sautez vos filets en les retournant; faites
qu’ils soient bien blancs; assurez-vous qu’ils sont bien cuits, en
appuyant le doigt dessus: s’ils résistent, c’est qu’ils le sont; vous
aurez passé six croûtons de mie de pain à potage, auxquels vous
aurez donné la forme et l’épaisseur de vos filets; dressez ces filets
en couronne, et mettez un croûton entre chacun d’eux; travaillez
votre sauce, et saucez en marquant votre entrée: si vous voulez ces
filets aux truffes, coupez des truffes en liards; faites-les cuire dans
du beurre et un grain de sel; mettez-les dans une partie de votre
sauce au suprême, et versez-les dans le puits de vos filets.

Émincée de Filets de Poulardes aux Concombres.


Prenez l’estomac d’une ou deux poulardes rôties et froides; levez-
en les chairs; supprimez-en les peaux et les nerfs; émincez ces
chairs; faites un ragoût de concombres, soit au blanc, soit au roux
(voyez ces Ragoûts, à leur article): votre ragoût réduit et prêt à
servir, mêlez-y vos blancs de poulardes, sans les laisser bouillir: si
c’est au blanc, ajoutez-y une liaison de deux jaunes d’œufs, du
beurre gros comme une noix, un peu de muscade râpée, et servez.

Ailes de Poulardes à la Maréchale.


Prenez trois belles poulardes, levez-en les ailes, supprimez-en les
ailerons, ne conservez que les deux moignons; levez-en la petite
peau, en posant votre aile sur la table, et faisant glisser votre
couteau, comme si vous leviez une barde de lard; prenez garde
d’endommager les chairs; piquez vos six ailes d’une deuxième, et
marquez-les dans une casserole, comme il est indiqué à l’article
Poulardes en Bigarrures: vos ailes cuites, égouttez-les sur un
couvercle; glacez-les: qu’elles soient d’un beau blond; dressez dans
votre plat une bonne chicorée réduite (voyez l’article Chicorée au
Blanc); dressez vos six ailes dessus la pointe, au centre du plat, pour
former une rosette; mettez, si vous le voulez, une belle truffe au
milieu, et servez.

Poularde en Galantine.
Ayez une belle poularde; après l’avoir épluchée, flambée et vidée,
désossez-la par le dos, étendez-la sur un linge blanc; couvrez les
chairs d’une farce cuite de volaille, à-peu-près de l’épaisseur d’un
travers de doigt (voy. l’article Farce cuite [Tome II]); faites des gros
lardons de lard, assaisonnez-les de sel, poivre, fines épices,
aromates pilés et passés au tamis, persil et ciboules hachés; ayez du
jambon cuit, faites-en des lardons aussi gros et aussi longs que ceux
de lard; posez sur votre farce ces lardons de distance en distance;
ajoutez-y, si c’est la saison, des truffes coupées en filets, de la
grosseur de vos lardons, et entremêlez-les, pour que votre pièce soit
bien marbrée; recouvrez ces lardons d’un autre lit de farce, et
continuez de remettre ainsi farce et lardons, jusqu’à ce que votre
volaille soit remplie; rapprochez les peaux, cousez-les; tâchez de
donner à votre poularde sa forme première; entourez-la de bardes
de lard, enveloppez-la d’un morceau d’étamine neuve; cousez cette
étamine, attachez-en les deux bouts avec des ficelles: foncez une
braisière avec quelques carottes, oignons, deux clous de girofle,
deux feuilles de laurier, deux ou trois lames de jambon, un jarret de
veau, et les carcasses de votre poularde coupées par morceaux:
posez, du côté du dos, votre pièce sur ce fond; appuyez un peu la
main sur son estomac, afin de l’aplatir: couvrez votre galantine de
bardes de lard; mouillez-la avec du bouillon (il faut qu’elle baigne
dans son assaisonnement); couvrez-la de papier, faites-la partir,
après lui avoir mis son couvercle; posez-la sur la paillasse, avec feu
dessous et dessus; laissez-la cuire une heure et demie ou deux
heures: sa cuisson faite, retirez-la du feu, laissez-la dans son
assaisonnement une demi-heure, retirez-la, pressez-la légérement,
aplatissez-lui de nouveau l’estomac, autant que possible, afin d’avoir
la facilité de la garnir de gelée; passez le fond de votre galantine au
travers d’une serviette mouillée à cet effet: si ce fond n’était pas
assez ambré, mêlez-y un peu de jus de bœuf ou de blond de veau;
faites-en l’essai. Si ce fond ou plutôt cette gelée se trouvait trop
délicate, faites-la réduire; cassez deux œufs entiers, jaunes, blancs
et coquilles; mettez-les dans votre gelée; fouettez-la avec un fouet
de buis, mettez-la sur le feu, ayez soin de la remuer: lorsqu’elle
commencera à bouillir, retirez-la sur le bord du fourneau; mettez sur
votre casserole un couvercle, avec quelques charbons ardens
dessus; laissez ainsi votre gelée se clarifier environ une demi-heure
ou trois quarts d’heure; passez-la dans une serviette, comme il est
indiqué à l’article Grand Aspic: laissez votre gelée se refroidir;
déballez votre galantine, ratissez le gras qui est autour, dressez-la
sur une serviette; garnissez-la de gelée, soit coupée en lames, en
diamans, ou hachée, ou les trois ensemble, et servez.

Filets de Poulardes à la Béchamelle.


Faites cuire deux poulardes à la broche, laissez-les refroidir,
levez-en les blancs, et supprimez-en les peaux et les nerfs; émincez
ces blancs également; mettez dans une casserole cinq cuillerées à
dégraisser de béchamelle, et deux de consommé, ainsi qu’un peu de
muscade râpée (voyez l’article Sauce à la Béchamelle); faites bouillir,
et délayez bien votre sauce; prenez garde qu’elle ne s’attache: au
moment de servir, jetez vos filets dedans, retournez-les légérement,
de crainte de les rompre; dressez-les sur votre plat garni d’une
bordure; sinon entourez votre entrée, soit de fleurons de feuilletage,
soit de croûtons; ou servez-les dans un vol-au-vent. (Voyez Vol-au-
Vent, article P atisserie [Tome II].)

Soufflé de Poularde.
Procédez pour ce soufflé comme il est énoncé au soufflé de
Perdreaux. (Voyez cet article.)

Hachis de Poularde à la Reine.


Prenez des blancs de poulardes ou de poulets, hachez-les bien
menu; mettez dans une casserole de la béchamelle ainsi que du
consommé, en raison de la quantité de vos chairs; faites bouillir, et
délayez votre sauce: au moment de servir, mêlez-y votre hachis sans
le laisser bouillir; finissez-le avec un peu de beurre et un peu de
muscade râpée; prenez garde qu’il ne soit ni trop épais ni trop clair.
Ce hachis se sert aussi dans des grands ou petits vols-au-vent.

Croquettes de Poularde.
Prenez une poularde froide, de desserte ou non; levez-en les
chairs, supprimez-en les peaux et les nerfs; coupez ces chairs en
petits dés, quelques foies gras, ainsi que des champignons et des
truffes, si c’est la saison (il faut que ces objets soient coupés de
même grosseur); mettez dans une casserole du velouté en raison de
votre appareil et faites-le réduire à demi-glace; sa réduction faite,
tirez-le du feu, liez-le avec trois jaunes d’œufs, jetez-y vos dés,
ajoutez-y un peu d’excellent beurre; mêlez bien le tout, et mettez-le
sur un couvercle bien étamé; laissez ainsi refroidir votre appareil,
séparez-le par portions égales, de la grosseur que vous voulez faire
vos croquettes; donnez-leur la forme que vous jugerez convenable:
ayez de la mie de pain, posez-la sur la table, roulez-y vos
croquettes; ayez quelques œufs cassés en omelette; trempez-les
dedans; repassez-les et achevez de perfectionner la forme que vous
leur avez donnée d’abord. Au moment de servir, jetez-les dans de la
friture un peu chaude, afin qu’elles ne se crèvent pas: aussitôt
qu’elles auront une belle couleur, égouttez-les sur un linge blanc,
dressez-les, mettez dessus un bouquet de persil, et servez.

Côtelettes de Poulardes ou de Poulets.


Procédez, à l’égard de ces côtelettes, comme pour celles de
perdreaux, énoncées à l’article Gibier.

Blanquette de Poularde.
Ayez une poularde froide, ou des débris; levez-en les chairs;
supprimez-en les peaux et les nerfs; émincez ces chairs; mettez
dans une casserole du velouté; faites-le réduire et dégraissez-le; au
moment de servir, jetez votre émincée; ne le laissez pas bouillir;
faites une liaison délayée avec un peu de crême ou de lait; finissez
votre blanquette avec un petit morceau de beurre et le jus d’un
citron. (Il faut qu’elle ne soit ni trop liée, ni trop claire.)

Filets de Poularde à la Chingara.


Ayez trois poulardes, levez-en les filets comme il est indiqué à
l’article Filets de Poularde au suprême: faites fondre du beurre dans
une sauteuse; trempez-y vos filets en les y arrangeant; saupoudrez-
les d’un peu de sel fin; couvrez-les d’un rond de papier; prenez une
langue de bœuf à l’écarlate; levez-en six morceaux, de la grandeur
et de l’épaisseur de vos filets, ainsi que de leur forme; mettez-les
dans une casserole avec un peu de bouillon; tenez-les chaudement
sans les faire bouillir; sautez vos filets comme il est dit au Suprême,
énoncé ci-dessus. Leur cuisson faite, égouttez-les; dressez-les sur
votre plat, et mettez entre chacun d’eux un morceau de langue: si
vous voulez votre entrée plus forte, ajoutez-y des croûtons
entremêlés de même; saucez votre entrée avec une sauce au
suprême, et servez. (Voyez Sauce au Suprême.)

Cuisses de Poularde en Canetons ou en petits Oignons.


Quand vous aurez levé les filets de trois belles poulardes, comme
à l’article précédent, en ménageant les peaux des cuisses, désossez-
les jusqu’à la moitié de l’os qui tient à la patte; supprimez les trois
quarts de chaque patte; étendez vos cuisses sur un linge blanc;
remplissez-les d’un salpicon, composé de foies gras, de truffes et de
champignons: cousez les peaux de ces cuisses, et donnez-leur une
forme alongée comme le cou d’un cygne ou d’un canard; il faut que
le moignon de la cuisse forme le col de votre oiseau, et que la patte
forme le bec. Fixez ces pattes avec un fil, de manière à leur
conserver la grâce qu’a le col d’un cygne; faites deux incisions au
reste de la patte, l’une sensée derrière la tête de l’oiseau, et l’autre
sur le haut du bec, pour qu’il forme la protubérance qui est sur le
haut du bec du cygne: ayez six belles écrevisses, dont les pattes
soient égales; faites-les cuire dans du bouillon; ôtez-leur les douze
grosses pattes; formez-en les ailes de vos cygnes, en les enfonçant
dans la chair par le bout qui tenait au corps de l’écrevisse; foncez
une casserole de bardes de lard; rangez-y vos petits cygnes comme
s’ils étaient sur l’eau; mettez sur chaque une tranche de citron, afin
qu’ils soient bien blancs; mouillez-les avec une poêle (voyez article
Poêle); couvrez-les de bardes de lard et d’un rond de papier; trois
quarts d’heure avant de servir, faites-les partir et cuire doucement
sur la paillasse, avec peu de feu dessus: leur cuisson faite, égouttez-
les, ôtez-en les fils; dressez-les et servez dessous une sauce
hollandaise verte, ou une sauce au beurre d’écrevisses. (Voyez
l’article S auces .)

Cuisses de Poulardes en Ballon.


Désossez six ou huit cuisses de poulardes; supprimez à-peu-près
les trois quarts de chaque patte; mettez ces cuisses sur un linge
blanc; étalez-les, remplissez-les d’un salpicon; cousez-les comme
celles des poulardes en bigarrure; marquez-les dans une casserole
foncée de bardes de lard; mouillez-les avec une poêle; faites-les
cuire environ trois quarts d’heure: leur cuisson faite, égouttez,
dressez et saucez-les avec une bonne italienne rousse, et servez.
(Voyez l’article Sauce Italienne Rousse.)
Cuisses de Poulardes à la Bayonnaise.
Prenez trois culottes de poulardes; partagez-en la peau en deux
jusqu’au croupion; levez les cuisses avec cette peau; désossez-les
entièrement, néanmoins en leur laissant le bout de l’os adhérant aux
pattes: cela fait, marinez-les avec du jus de citron, sel, gros poivre et
une feuille de laurier cassée en morceaux; laissez mariner ces
cuisses deux ou trois heures: au moment de servir, égouttez-les,
farinez-les, faites-les frire dans du lard râpé; coupez quatre oignons
en anneaux; ôtez-en le cœur; faites aussi frire ces oignons; ayez
soin qu’ils aient, ainsi que les cuisses, une belle couleur: dressez ces
cuisses sur votre plat; mettez dessus vos anneaux frits, et servez
dessous une sauce poivrade. (Voyez l’article Sauce Poivrade.)

Cuisses de Poulardes à la Livernois.


Levez les cuisses de trois poulardes; supprimez la moitié de l’os
de la cuisse; parez-les; foncez une casserole de quelques carottes
coupées en lames, de deux oignons, d’un bouquet de persil et
ciboules, assaisonné de ces aromates et d’une lame de jambon;
posez ces cuisses dessus; mouillez-les avec une cuillerée à pot de
bouillon: couvrez-les de quelques bardes de lard et d’un rond de
papier; tournez des petites carottes, soit en bâtonnets, soit en
champignons; mettez-les blanchir; égouttez-les; faites-les cuire dans
du bouillon et tomber à glace; mettez-y un petit morceau de sucre
pour en ôter l’âcreté; versez dans une casserole quatre à cinq
cuillerées à dégraisser pleines d’espagnole; ajoutez-y vos carottes
tombées à glace; faites-les bouillir et dégraissez-les; égouttez les
cuisses de poulardes, et dressez-les: ajoutez un demi-pain de beurre
à votre ragoût; sautez-le; masquez-en votre entrée, et servez.

Cuisses de Poulardes aux Truffes.


Désossez six cuisses de poulardes, comme il est indiqué à l’article
Cuisses en Ballon; farcissez-les d’un salpicon, composé de truffes et
de foies gras: cousez ces cuisses; marquez-les dans une casserole,
comme il est dit aux cuisses précédentes: faites-les cuire de même;
égouttez-les; ôtez-en les fils, et servez dessous un ragoût de truffes.
(Voyez l’article Ragoût aux Truffes.)

Quenelles de Poulardes.
Procédez, pour ces quenelles, de même qu’il est indiqué à
l’article Quenelles de Volailles [Tome II].

Ailerons de Poulardes en Haricots Vierges.


Ayez vingt ailerons de poulardes; échaudez-les, épluchez-les;
désossez-les jusqu’à la moitié de la première jointure; flambez-les,
parez-les; essuyez-les avec un linge blanc; foncez une casserole de
bardes de lard; rangez-les dedans; mouillez-les d’une poêle ou avec
du bouillon sans couleur: si vous n’avez point de poêle, alors mettez
quelques tranches de citron, dont vous aurez ôté la peau et les
pepins, avec un bouquet de persil et ciboules, une carotte tournée,
deux oignons, dont un piqué d’un clou de girofle et une demi-feuille
de laurier; couvrez le tout de bardes de lard et d’un rond de papier;
faites partir et cuire sur la paillasse, avec feu dessous et dessus:
vous aurez tourné des navets en petits bâtonnets, en gousses d’ail
ou en champignons; faites blanchir ces navets, égouttez-les; mettez-
les dans une casserole avec du bouillon qui ne soit point coloré;
ajoutez-y un petit morceau de sucre; faites cuire à petit feu; mettez
dans une autre casserole quatre cuillerées à dégraisser pleines de
velouté; faites-le réduire; vous aurez fait bouillir une chopine de
crême, et vous la verserez petit à petit dans votre sauce, en la
tournant toujours, jusqu’à ce qu’elle ait acquis la consistance d’une
bouillie claire: sa réduction faite, égouttez vos navets; mettez-les
dans votre sauce; ajoutez-y un peu de muscade râpée, un demi-pain
de beurre, et sautez-les: égouttez vos ailerons; dressez-les sur un
plat auquel vous aurez fait un bord de citron; masquez ces ailerons
avec vos navets et servez.

Ailerons de Poulardes en Haricots.


Préparez ces ailerons comme il est indiqué à l’article précédent;
tournez vos navets de même; faites-les roussir dans du beurre, de
manière qu’ils aient une belle couleur; égouttez-les; mettez dans une
casserole une cuillerée à pot d’espagnole; faites-la bouillir, jetez-y
vos navets, laissez-les mijoter et cuire; dressez vos ailerons, et
masquez-les avec vos navets, faute d’espagnole; quand vos navets
seront passés et d’une belle couleur, égouttez-les; faites un petit
roux, en mettant une cuillerée à bouche de farine dans le beurre de
vos navets (voyez Roux, article S auces ); mouillez ce roux avec le
fond de vos ailerons; faites bouillir votre sauce; passez-la dans une
casserole au travers d’une étamine; ajoutez-y vos navets; laissez-les
cuire, dégraissez-les, jetez-y un petit morceau de sucre; goûtez si
votre sauce est d’un bon goût, et servez-vous-en comme il est
expliqué ci-dessus.

Ailerons de Poulardes à la Purée.


Marquez ces ailerons comme les précédens: leur cuisson faite,
égouttez-les, dressez-les et masquez-les d’une purée à votre choix.
(Voyez Purées d’Entrées, article S auces .)

Ailerons de Poulardes au Soleil.


Préparez et faites cuire quinze ailerons comme les précédens:
leur cuisson faite, égouttez-les; trempez-les dans une légère pâte,
faites-les frire; qu’ils soient d’une belle couleur; et servez-les avec
une pincée de persil frit.

Terrine d’Ailerons de Poulardes.


Prenez une quantité d’ailerons proportionnée à la grandeur de
votre terrine; préparez-les comme ci-dessus; faites cuire du petit
lard en raison de la quantité de vos ailerons, et procédez en tout,
pour cette terrine, ainsi qu’il est énoncé à l’article Mouton dit Terrine.
(Voyez cet article.)

Ailerons de Poulardes piqués et glacés.


Ayez douze ou quinze de ces ailerons: après les avoir épluchés et
flambés, désossez-les comme il est indiqué précédemment; faites-les
légérement blanchir; piquez-les d’une deuxième: cela fait, foncez
une casserole avec un peu de rouelle de veau, une lame ou deux de
jambon, un oignon piqué d’un clou de girofle, une carotte tournée,
un bouquet de persil et ciboules; rangez vos ailerons sur ce fond, de
manière que le lard ne se touche point; mouillez-les avec du bon
bouillon; couvrez-les d’un rond de papier beurré; faites-les partir et
cuire sur la paillasse, avec un feu vif dessous et dessus, afin qu’ils
prennent une belle couleur: leur cuisson faite, passez leur fond au
travers d’un tamis de soie; faites-le réduire presque à glace dans une
sauteuse, laquelle doit avoir assez d’étendue pour les contenir sans
être les uns sur les autres: rangez-les sens dessus dessous dans
cette sauteuse, c’est-à-dire que le côté piqué doit tremper dans la
glace; posez cette sauteuse sur une cendre chaude; laissez mijoter
ainsi vos ailerons: quand ils seront glacés, prenez-les avec une
fourchette, dressez-les sur votre plat, le côté glacé en dessus;
mettez dans le restant de votre glace une cuillerée à dégraisser
pleine d’espagnole et une de consommé; faites bouillir le tout;
détachez bien votre glace; saucez vos ailerons avec cette sauce, et
servez.

Ailerons de Poulardes à la Chicorée.


Préparez vos ailerons comme les précédens, faites-les cuire de
même, dressez-les sur une bonne chicorée blanche, et servez.
(Voyez Chicorée blanche, article R agouts .)

Ailerons de Poulardes à la Pluche verte.


Ayez une quinzaine d’ailerons: après les avoir préparés, comme il
est indiqué ci-dessus, formez une casserole de quelques tranches de
veau et de lames de jambon; joignez-y une douzaine de queues de
champignons, une demi-gousse d’ail, une demi-feuille de laurier et
une pincée de basilic; rangez vos ailerons sur ce fond; coupez deux
carottes en lames et deux oignons en tranches, couvrez-en vos
ailerons, mouillez-les avec du bouillon ou du consommé; faites-les
partir; mettez-les cuire sur la paillasse, avec feu dessous et dessus:
leur cuisson faite, passez votre fond dans une casserole à travers un
tamis de soie; ajoutez à ce fond un petit pain de beurre, manié dans
de la farine; faites lier votre fond, en la tournant; laissez-la réduire
jusqu’à consistance de sauce; ajoutez-y une pincée de feuilles de
persil, que vous aurez fait blanchir; dressez vos ailerons; mettez le
jus d’un citron dans votre sauce, avec un peu de gros poivre; goûtez
si elle est d’un bon sel, masquez-en vos ailerons, et servez.

Ailerons de Poulardes à la Villeroi.


Prenez douze ou quinze ailerons, flambez, épluchez, désossez-les
jusqu’à la première jointure; remplissez-les d’une farce cuite de
volailles (voyez, à l’article F arces , celle cuite de Volailles [Tome II]);
marquez-les dans une casserole, comme les ailerons piqués et
glacés (voyez cet article), et faites-les cuire de même: leur cuisson
achevée, égouttez-les, posez-les sur une tourtière, couvrez-les d’une
Sainte-Menéhould (voyez l’article de cette sauce); panez-les avec
moitié mie de pain et moitié fromage de Parmesan, mêlés ensemble:
faites prendre une belle couleur à vos ailerons, soit au four ou sous
un four de campagne, dressez-les, et servez.

Crêtes et Rognons au Velouté.


Préparez et faites cuire dans un blanc ces crêtes et rognons: leur
cuisson faite, égouttez-les; mettez dans une casserole du velouté
réduit en suffisante quantité; jetez-y vos crêtes et vos rognons;
faites-les mijoter un demi-quart d’heure; liez votre ragoût; finissez-le
avec la moitié d’un pain de beurre et un jus de citron, dressez et
servez.

Grand Aspic de Crêtes et Rognons.


Prenez un moule à aspic, ou, faute de ce moule, une casserole
proportionnée à la grandeur de votre plat; posez-la dans un autre
vase rempli de glace pilée; coulez dans ce moule de l’aspic, de
l’épaisseur d’un travers de doigt; décorez-le d’un dessin à votre
fantaisie: à cet effet, servez-vous de truffes, de blancs d’œufs durs,
de cornichons, de queues et d’œufs d’écrevisses, et de rognons de
coqs: votre décor achevé, coulez-le légérement sur votre aspic;
prenez garde de le déranger: cet aspic pris, remplissez votre moule
de crêtes et rognons de coqs, en laissant un espace de deux travers
de doigt tout autour; remplissez d’aspic cet intervalle, ainsi que le
moule, pour que le tout ensemble ne forme qu’un pain: au moment
de servir, trempez votre moule dans de l’eau tiède; renversez-le sur
un couvercle; coulez votre aspic sur le plat sans ôter le moule:
lorsqu’il sera bien placé, enlevez-en le moule avec dextérité; remuez
la gelée qui se trouverait fondue, au moyen d’un chalumeau de
paille; essuyez votre plat, et servez.
Vous pouvez vous servir du même procédé pour faire des aspics
de blancs de poulardes, de filets de lapereaux et de perdreaux; et si
votre moule se trouvait faire un puits, remplissez-le d’une
mayonnaise ou d’une ravigote à la gelée.

Petits Aspics de Crêtes et de Rognons.


Procédez, pour ces petits aspics, comme il est énoncé ci-dessus
pour le grand aspic, soit pour leur dessin, soit pour les remplir
convenablement: faites-en sept ou neuf.

Foies gras à la Périgueux.


Prenez sept foies de poulardes qui soient bien gras; ôtez-en
l’amer et la partie du foie qui le touche; piquez-les de clous de
truffes; marquez-les dans une casserole foncée de bardes de lard;
mouillez-les avec une bonne mirepoix (voyez, à l’article S auces , celle
de Mirepoix): faute de mirepoix, mettez un verre de vin blanc et un
de consommé, avec un peu de sel, une carotte tournée, deux
moyens oignons, dont un piqué d’un clou de girofle, un bouquet de
persil et ciboules, une demi-feuille de laurier et la moitié d’une
gousse d’ail: couvrez alors ces foies de bardes de lard et d’un rond
de papier; faites partir et cuire un quart d’heure et demi sur la
paillasse, avec feu dessus et dessous; égouttez-les, dressez-les sur
le plat, et saucez-les avec une sauce à la Périgueux (voyez cet
article): vous pouvez servir entre vos foies des crêtes de pain
passées dans le beurre, avec une belle truffe au milieu.

Foies gras au Gratin.


Prenez un plat d’argent, ou tout autre qui puisse aller au feu;
mettez dans le fond l’épaisseur d’un travers de doigt de gratin (voyez
Gratin, article F arces [Tome II]); ayez six ou sept beaux foies de
poulardes bien blancs, appropriez-les, comme il est dit à l’article
précédent; arrangez-les sur votre plat, en laissant un puits au milieu
(à ce sujet, voyez l’article Mauviettes au Gratin); remplissez tous les
intervalles de vos foies, en sorte que le tout ne forme qu’un pain:
ayant uni votre gratin entièrement avec votre couteau, couvrez-le
d’un papier beurré, mettez-le dans le four ou sous le four de
campagne: sa cuisson faite, retirez-le, ôtez-en le papier beurré,
débouchez-en le puits, saucez-le avec une espagnole réduite ou une
italienne rousse, et servez.

Foies gras en Matelote.


Préparez six foies gras, ainsi qu’il est expliqué ci-dessus; faites-
les blanchir et cuire comme ceux à la Périgueux (voyez cet article);
égouttez-les; dressez-les sur votre plat; saucez-les d’une sauce à la
matelote (voyez l’article Sauce à la Matelote); ajoutez-y des cœurs
de pain passés dans le beurre, des truffes, si vous voulez, et servez.

Foies gras en Caisse.


Faites une caisse ronde ou carrée, de la hauteur de deux pouces
et demi environ; huilez-la en dehors; étendez dans le fond du gratin,
de l’épaisseur d’un travers de doigt: ayant préparé six foies gras,
mettez-les dans une casserole avec un morceau de beurre, du persil,
ciboules, champignons hachés, sel, poivre et fines épices, le tout en
suffisante quantité; passez ainsi ces foies: mettez votre caisse sur le
gril; arrangez vos foies dans cette caisse, avec les fines herbes;
posez sur un feu doux; laissez-les cuire, et, leur cuisson faite,
dressez votre caisse sur le plat; saucez-la d’une bonne espagnole
réduite, dans laquelle vous aurez exprimé le jus d’un citron;
dégraissez-les en cas qu’il y surnage du beurre.

Hatelettes de Foies gras.


Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebooknice.com

You might also like