100% found this document useful (1 vote)
2 views

Learning PHP MySQL JavaScript With jQuery CSS HTML5 5th Edition Robin Nixon download

The document provides information about the book 'Learning PHP, MySQL & JavaScript with jQuery, CSS & HTML5' by Robin Nixon, including links to various editions and related resources. It outlines the contents of the book, covering topics such as dynamic web content, PHP, MySQL, and practical applications of these technologies. Additionally, it includes details about the book's publication history and the author's background.

Uploaded by

offertepas8t
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
2 views

Learning PHP MySQL JavaScript With jQuery CSS HTML5 5th Edition Robin Nixon download

The document provides information about the book 'Learning PHP, MySQL & JavaScript with jQuery, CSS & HTML5' by Robin Nixon, including links to various editions and related resources. It outlines the contents of the book, covering topics such as dynamic web content, PHP, MySQL, and practical applications of these technologies. Additionally, it includes details about the book's publication history and the author's background.

Uploaded by

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

Learning PHP MySQL JavaScript With jQuery CSS

HTML5 5th Edition Robin Nixon download

https://textbookfull.com/product/learning-php-mysql-javascript-
with-jquery-css-html5-5th-edition-robin-nixon/

Download more ebook from https://textbookfull.com


We believe these products will be a great fit for you. Click
the link to download now, or visit textbookfull.com
to discover even more!

Learning PHP, MySQL & JavaScript, 6th Edition Robin


Nixon

https://textbookfull.com/product/learning-php-mysql-
javascript-6th-edition-robin-nixon/

Learning PHP MySQL JavaScript Early Release 6th Edition


Robin Nixon

https://textbookfull.com/product/learning-php-mysql-javascript-
early-release-6th-edition-robin-nixon/

Learn PHP 8: Using MySQL, JavaScript, CSS3, and HTML5


Second Edition Steve Prettyman

https://textbookfull.com/product/learn-php-8-using-mysql-
javascript-css3-and-html5-second-edition-steve-prettyman/

HTML5 20 Lessons to Successful Web Development 1st


Edition Robin Nixon

https://textbookfull.com/product/html5-20-lessons-to-successful-
web-development-1st-edition-robin-nixon/
Responsive Web Design by Example Embrace responsive
design with HTML5 CSS3 JavaScript jQuery and Bootstrap
4 Hussain

https://textbookfull.com/product/responsive-web-design-by-
example-embrace-responsive-design-with-html5-css3-javascript-
jquery-and-bootstrap-4-hussain/

PHP and MySQL Web Development 5th Edition Developer s


Library Luke Welling

https://textbookfull.com/product/php-and-mysql-web-
development-5th-edition-developer-s-library-luke-welling/

Beginning PHP and MySQL: From Novice to Professional


5th Edition Frank M. Kromann

https://textbookfull.com/product/beginning-php-and-mysql-from-
novice-to-professional-5th-edition-frank-m-kromann/

Programming Windows Store Apps with HTML CSS and


JavaScript Kraig Brockschmidt

https://textbookfull.com/product/programming-windows-store-apps-
with-html-css-and-javascript-kraig-brockschmidt/

PHP and MySQL for Dynamic Web Sites Fifth Edition


Ullman

https://textbookfull.com/product/php-and-mysql-for-dynamic-web-
sites-fifth-edition-ullman/
5t I n c l p s &
h ud M
W

Ed es ob
eb

iti
Ap

on
ile
Learning
PHP, MySQL,
& JavaScript
WITH JQUERY, CSS & HTML5

Robin Nixon
FIFTH EDITION

Learning PHP, MySQL & JavaScript


With jQuery, CSS & HTML5

Robin Nixon

Beijing Boston Farnham Sebastopol Tokyo


Learning PHP, MySQL & JavaScript
by Robin Nixon
Copyright © 2018 Robin Nixon. All rights reserved.
Printed in the United States of America.
Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472.
O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are
also available for most titles (http://oreilly.com/safari). For more information, contact our corporate/insti‐
tutional sales department: 800-998-9938 or [email protected].

Editor: Andy Oram Indexer: Judy McConville


Production Editor: Melanie Yarbrough Interior Designer: David Futato
Copyeditor: Rachel Head Cover Designer: Karen Montgomery
Proofreader: Rachel Monaghan Illustrator: Rebecca Demarest

July 2009: First Edition


August 2012: Second Edition
June 2014: Third Edition
December 2018: Fourth Edition
May 2018: Fifth Edition

Revision History for the Fifth Edition


2018-05-08: First Release

See http://oreilly.com/catalog/errata.csp?isbn=9781491978917 for release details.

The O’Reilly logo is a registered trademark of O’Reilly Media, Inc. Learning PHP, MySQL & JavaScript, the
cover image, and related trade dress are trademarks of O’Reilly Media, Inc.
While the publisher and the author have used good faith efforts to ensure that the information and
instructions contained in this work are accurate, the publisher and the author disclaim all responsibility
for errors or omissions, including without limitation responsibility for damages resulting from the use of
or reliance on this work. Use of the information and instructions contained in this work is at your own
risk. If any code samples or other technology this work contains or describes is subject to open source
licenses or the intellectual property rights of others, it is your responsibility to ensure that your use
thereof complies with such licenses and/or rights.

978-1-491-97891-7
[M]
For Julie
Table of Contents

Preface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiii

1. Introduction to Dynamic Web Content. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1


HTTP and HTML: Berners-Lee’s Basics 2
The Request/Response Procedure 2
The Benefits of PHP, MySQL, JavaScript, CSS, and HTML5 5
MariaDB: The MySQL Clone 6
Using PHP 6
Using MySQL 7
Using JavaScript 8
Using CSS 10
And Then There’s HTML5 10
The Apache Web Server 11
Handling Mobile Devices 12
About Open Source 12
Bringing It All Together 13
Questions 14

2. Setting Up a Development Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17


What Is a WAMP, MAMP, or LAMP? 18
Installing AMPPS on Windows 18
Testing the Installation 22
Accessing the Document Root (Windows) 24
Alternative WAMPs 25
Installing AMPPS on macOS 26
Accessing the Document Root (macOS) 27
Installing a LAMP on Linux 28
Working Remotely 28

v
Logging In 29
Using FTP 29
Using a Program Editor 30
Using an IDE 31
Questions 33

3. Introduction to PHP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Incorporating PHP Within HTML 35
This Book’s Examples 37
The Structure of PHP 38
Using Comments 38
Basic Syntax 39
Variables 40
Operators 45
Variable Assignment 48
Multiple-Line Commands 50
Variable Typing 52
Constants 53
Predefined Constants 54
The Difference Between the echo and print Commands 55
Functions 55
Variable Scope 56
Questions 62

4. Expressions and Control Flow in PHP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63


Expressions 63
TRUE or FALSE? 64
Literals and Variables 65
Operators 66
Operator Precedence 67
Associativity 69
Relational Operators 70
Conditionals 74
The if Statement 75
The else Statement 76
The elseif Statement 78
The switch Statement 79
The ? Operator 82
Looping 83
while Loops 84
do...while Loops 86
for Loops 86

vi | Table of Contents
Breaking Out of a Loop 88
The continue Statement 89
Implicit and Explicit Casting 90
PHP Dynamic Linking 91
Dynamic Linking in Action 92
Questions 93

5. PHP Functions and Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95


PHP Functions 96
Defining a Function 97
Returning a Value 98
Returning an Array 99
Passing Arguments by Reference 100
Returning Global Variables 102
Recap of Variable Scope 102
Including and Requiring Files 103
The include Statement 103
Using include_once 103
Using require and require_once 104
PHP Version Compatibility 104
PHP Objects 105
Terminology 106
Declaring a Class 107
Creating an Object 108
Accessing Objects 108
Cloning Objects 110
Constructors 111
Destructors 111
Writing Methods 112
Declaring Properties 113
Declaring Constants 113
Property and Method Scope 114
Static Methods 115
Static Properties 116
Inheritance 117
Questions 120

6. PHP Arrays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123


Basic Access 123
Numerically Indexed Arrays 123
Associative Arrays 125
Assignment Using the array Keyword 126

Table of Contents | vii


The foreach...as Loop 127
Multidimensional Arrays 129
Using Array Functions 132
is_array 132
count 132
sort 133
shuffle 133
explode 133
extract 134
compact 135
reset 136
end 136
Questions 137

7. Practical PHP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139


Using printf 139
Precision Setting 140
String Padding 142
Using sprintf 143
Date and Time Functions 143
Date Constants 146
Using checkdate 146
File Handling 147
Checking Whether a File Exists 147
Creating a File 147
Reading from Files 149
Copying Files 150
Moving a File 150
Deleting a File 151
Updating Files 151
Locking Files for Multiple Accesses 153
Reading an Entire File 154
Uploading Files 155
System Calls 161
XHTML or HTML5? 162
Questions 163

8. Introduction to MySQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165


MySQL Basics 165
Summary of Database Terms 166
Accessing MySQL via the Command Line 166
Starting the Command-Line Interface 167

viii | Table of Contents


Using the Command-Line Interface 171
MySQL Commands 172
Data Types 177
Indexes 187
Creating an Index 187
Querying a MySQL Database 193
Joining Tables Together 203
Using Logical Operators 205
MySQL Functions 206
Accessing MySQL via phpMyAdmin 206
Questions 207

9. Mastering MySQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209


Database Design 209
Primary Keys: The Keys to Relational Databases 210
Normalization 211
First Normal Form 212
Second Normal Form 214
Third Normal Form 216
When Not to Use Normalization 218
Relationships 219
One-to-One 219
One-to-Many 220
Many-to-Many 221
Databases and Anonymity 222
Transactions 223
Transaction Storage Engines 223
Using BEGIN 224
Using COMMIT 225
Using ROLLBACK 225
Using EXPLAIN 226
Backing Up and Restoring 227
Using mysqldump 227
Creating a Backup File 229
Restoring from a Backup File 231
Dumping Data in CSV Format 231
Planning Your Backups 232
Questions 232

10. Accessing MySQL Using PHP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235


Querying a MySQL Database with PHP 235
The Process 235

Table of Contents | ix
Creating a Login File 236
Connecting to a MySQL Database 237
A Practical Example 243
The $_POST Array 246
Deleting a Record 247
Displaying the Form 247
Querying the Database 248
Running the Program 249
Practical MySQL 250
Creating a Table 251
Describing a Table 251
Dropping a Table 252
Adding Data 253
Retrieving Data 254
Updating Data 255
Deleting Data 255
Using AUTO_INCREMENT 256
Performing Additional Queries 257
Preventing Hacking Attempts 258
Steps You Can Take 259
Using Placeholders 260
Preventing HTML Injection 263
Using mysqli Procedurally 264
Questions 266

11. Form Handling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267


Building Forms 267
Retrieving Submitted Data 269
Default Values 270
Input Types 271
Sanitizing Input 278
An Example Program 280
HTML5 Enhancements 283
The autocomplete Attribute 283
The autofocus Attribute 283
The placeholder Attribute 283
The required Attribute 284
Override Attributes 284
The width and height Attributes 284
The min and max Attributes 284
The step Attribute 284
The form Attribute 285

x | Table of Contents
The list Attribute 285
The color Input Type 285
The number and range Input Types 285
Date and Time Pickers 286
Questions 286

12. Cookies, Sessions, and Authentication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287


Using Cookies in PHP 287
Setting a Cookie 289
Accessing a Cookie 290
Destroying a Cookie 290
HTTP Authentication 290
Storing Usernames and Passwords 294
An Example Program 296
Using Sessions 299
Starting a Session 299
Ending a Session 302
Setting a Timeout 303
Session Security 304
Questions 307

13. Exploring JavaScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309


JavaScript and HTML Text 310
Using Scripts Within a Document Head 311
Older and Nonstandard Browsers 311
Including JavaScript Files 312
Debugging JavaScript Errors 313
Using Comments 314
Semicolons 314
Variables 314
String Variables 315
Numeric Variables 315
Arrays 316
Operators 316
Arithmetic Operators 317
Assignment Operators 317
Comparison Operators 318
Logical Operators 318
Incrementing, Decrementing, and Shorthand Assignment 318
String Concatenation 318
Escape Characters 319
Variable Typing 319

Table of Contents | xi
Functions 321
Global Variables 321
Local Variables 321
The Document Object Model 322
Another Use for the $ Symbol 324
Using the DOM 325
About document.write 326
Using console.log 326
Using alert 326
Writing into Elements 326
Using document.write 327
Questions 327

14. Expressions and Control Flow in JavaScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329


Expressions 329
Literals and Variables 330
Operators 331
Operator Precedence 332
Associativity 332
Relational Operators 333
The with Statement 336
Using onerror 337
Using try...catch 338
Conditionals 339
The if Statement 339
The else Statement 339
The switch Statement 340
The ? Operator 342
Looping 342
while Loops 342
do...while Loops 343
for Loops 344
Breaking Out of a Loop 345
The continue Statement 345
Explicit Casting 346
Questions 347

15. JavaScript Functions, Objects, and Arrays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349


JavaScript Functions 349
Defining a Function 349
Returning a Value 351
Returning an Array 353

xii | Table of Contents


JavaScript Objects 354
Declaring a Class 354
Creating an Object 356
Accessing Objects 356
The prototype Keyword 356
JavaScript Arrays 359
Numeric Arrays 360
Associative Arrays 361
Multidimensional Arrays 362
Using Array Methods 363
Questions 368

16. JavaScript and PHP Validation and Error Handling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371


Validating User Input with JavaScript 371
The validate.html Document (Part 1) 372
The validate.html Document (Part 2) 374
Regular Expressions 377
Matching Through Metacharacters 378
Fuzzy Character Matching 378
Grouping Through Parentheses 379
Character Classes 380
Indicating a Range 380
Negation 380
Some More Complicated Examples 381
Summary of Metacharacters 383
General Modifiers 385
Using Regular Expressions in JavaScript 385
Using Regular Expressions in PHP 386
Redisplaying a Form After PHP Validation 387
Questions 393

17. Using Asynchronous Communication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395


What Is Asynchronous Communication? 396
Using XMLHttpRequest 396
Your First Asynchronous Program 399
Using GET Instead of POST 403
Sending XML Requests 406
Using Frameworks for Asynchronous Communication 411
Questions 411

18. Introduction to CSS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413


Importing a Stylesheet 414

Table of Contents | xiii


Importing CSS from Within HTML 414
Embedded Style Settings 415
Using IDs 415
Using Classes 415
Using Semicolons 416
CSS Rules 416
Multiple Assignments 416
Using Comments 417
Style Types 418
Default Styles 418
User Styles 418
External Stylesheets 419
Internal Styles 419
Inline Styles 420
CSS Selectors 420
The Type Selector 420
The Descendant Selector 420
The Child Selector 421
The ID Selector 422
The Class Selector 423
The Attribute Selector 424
The Universal Selector 424
Selecting by Group 425
The CSS Cascade 425
Stylesheet Creators 426
Stylesheet Methods 426
Stylesheet Selectors 427
The Difference Between div and span Elements 429
Measurements 431
Fonts and Typography 433
font-family 433
font-style 434
font-size 434
font-weight 435
Managing Text Styles 435
Decoration 435
Spacing 436
Alignment 436
Transformation 436
Indenting 436
CSS Colors 437
Short Color Strings 438

xiv | Table of Contents


Gradients 438
Positioning Elements 440
Absolute Positioning 440
Relative Positioning 440
Fixed Positioning 441
Pseudoclasses 443
Shorthand Rules 445
The Box Model and Layout 446
Setting Margins 446
Applying Borders 448
Adjusting Padding 449
Object Contents 451
Questions 451

19. Advanced CSS with CSS3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453


Attribute Selectors 454
Matching Parts of Strings 454
The box-sizing Property 455
CSS3 Backgrounds 456
The background-clip Property 456
The background-origin Property 458
The background-size Property 458
Using the auto Value 459
Multiple Backgrounds 459
CSS3 Borders 461
The border-color Property 461
The border-radius Property 461
Box Shadows 465
Element Overflow 466
Multicolumn Layout 466
Colors and Opacity 468
HSL Colors 468
HSLA Colors 469
RGB Colors 469
RGBA Colors 469
The opacity Property 470
Text Effects 470
The text-shadow Property 470
The text-overflow Property 470
The word-wrap Property 471
Web Fonts 472
Google Web Fonts 473

Table of Contents | xv
Transformations 474
3D Transformations 475
Transitions 476
Properties to Transition 476
Transition Duration 477
Transition Delay 477
Transition Timing 477
Shorthand Syntax 478
Questions 480

20. Accessing CSS from JavaScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481


Revisiting the getElementById Function 481
The O function 481
The S Function 482
The C Function 483
Including the Functions 484
Accessing CSS Properties from JavaScript 484
Some Common Properties 485
Other Properties 486
Inline JavaScript 488
The this Keyword 488
Attaching Events to Objects in a Script 489
Attaching to Other Events 490
Adding New Elements 491
Removing Elements 492
Alternatives to Adding and Removing Elements 493
Using Interrupts 494
Using setTimeout 494
Canceling a Timeout 495
Using setInterval 495
Using Interrupts for Animation 497
Questions 499

21. Introduction to jQuery. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501


Why jQuery? 501
Including jQuery 502
Choosing the Right Version 502
Downloading 504
Using a Content Delivery Network 504
Customizing jQuery 505
jQuery Syntax 505
A Simple Example 506

xvi | Table of Contents


Avoiding Library Conflicts 507
Selectors 507
The css Method 508
The Element Selector 508
The ID Selector 509
The Class Selector 509
Combining Selectors 509
Handling Events 510
Waiting Until the Document Is Ready 511
Event Functions and Properties 512
The blur and focus Events 513
The this Keyword 514
The click and dblclick Events 514
The keypress Event 515
Considerate Programming 517
The mousemove Event 517
Other Mouse Events 520
Alternative Mouse Methods 521
The submit Event 522
Special Effects 523
Hiding and Showing 524
The toggle Method 525
Fading In and Out 526
Sliding Elements Up and Down 527
Animations 528
Stopping Animations 531
Manipulating the DOM 532
The Difference Between the text and html Methods 533
The val and attr Methods 533
Adding and Removing Elements 535
Dynamically Applying Classes 537
Modifying Dimensions 537
The width and height Methods 538
The innerWidth and innerHeight Methods 540
The outerWidth and OuterHeight Methods 540
DOM Traversal 541
Parent Elements 541
Child Elements 545
Sibling Elements 545
Selecting the Next and Previous Elements 547
Traversing jQuery Selections 549
The is Method 550

Table of Contents | xvii


Using jQuery Without Selectors 552
The $.each Method 552
The $.map Method 553
Using Asynchronous Communication 554
Using the POST Method 554
Using the GET Method 555
Plug-ins 555
jQuery User Interface 556
Other Plug-ins 556
Questions 556

22. Introduction to jQuery Mobile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559


Including jQuery Mobile 560
Getting Started 561
Linking Pages 563
Linking Synchronously 563
Linking Within a Multipage Document 564
Page Transitions 565
Styling Buttons 568
List Handling 571
Filterable Lists 572
List Dividers 574
What Next? 577
Questions 577

23. Introduction to HTML5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579


The Canvas 579
Geolocation 581
Audio and Video 583
Forms 584
Local Storage 585
Web Workers 585
Microdata 585
Questions 586

24. The HTML5 Canvas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587


Creating and Accessing a Canvas 587
The toDataURL Function 589
Specifying an Image Type 591
The fillRect Method 591
The clearRect Method 591
The strokeRect Method 592

xviii | Table of Contents


Combining These Commands 592
The createLinearGradient Method 593
The addColorStop Method in Detail 595
The createRadialGradient Method 596
Using Patterns for Fills 598
Writing Text to the Canvas 600
The strokeText Method 600
The textBaseLine Property 601
The font Property 601
The textAlign Property 601
The fillText Method 602
The measureText Method 603
Drawing Lines 603
The lineWidth Property 604
The lineCap and lineJoin Properties 604
The miterLimit Property 606
Using Paths 606
The moveTo and lineTo Methods 607
The stroke Method 607
The rect Method 608
Filling Areas 608
The clip Method 610
The isPointInPath Method 613
Working with Curves 614
The arc Method 614
The arcTo Method 617
The quadraticCurveTo Method 618
The bezierCurveTo Method 619
Manipulating Images 620
The drawImage Method 620
Resizing an Image 621
Selecting an Image Area 621
Copying from a Canvas 623
Adding Shadows 623
Editing at the Pixel Level 625
The getImageData Method 625
The putImageData Method 628
The createImageData Method 628
Advanced Graphical Effects 629
The globalCompositeOperation Property 629
The globalAlpha Property 632
Transformations 632

Table of Contents | xix


The scale Method 633
The save and restore Methods 634
The rotate Method 634
The translate Method 635
The transform Method 636
The setTransform Method 638
Questions 639

25. HTML5 Audio and Video. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641


About Codecs 642
The <audio> Element 643
Supporting Non-HTML5 Browsers 646
The <video> Element 647
The Video Codecs 648
Supporting Older Browsers 651
Questions 653

26. Other HTML5 Features. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655


Geolocation and the GPS Service 655
Other Location Methods 656
Geolocation and HTML5 657
Local Storage 660
Using Local Storage 661
The localStorage Object 661
Web Workers 663
Drag and Drop 666
Cross-Document Messaging 668
Other HTML5 Tags 672
Questions 672

27. Bringing It All Together. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675


Designing a Social Networking App 676
On the Website 676
functions.php 676
The Functions 677
header.php 679
setup.php 682
index.php 683
signup.php 684
Checking for Username Availability 685
Logging In 685
checkuser.php 688

xx | Table of Contents
login.php 689
profile.php 691
Adding the “About Me” Text 692
Adding a Profile Image 692
Processing the Image 692
Displaying the Current Profile 693
members.php 696
Viewing a User’s Profile 696
Adding and Dropping Friends 697
Listing All Members 697
friends.php 700
messages.php 703
logout.php 706
styles.css 708
javascript.js 710

A. Solutions to the Chapter Questions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713

B. Online Resources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735

C. MySQL’s FULLTEXT Stopwords. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 739

D. MySQL Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743

E. jQuery Selectors, Objects, and Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 753

Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 777

Table of Contents | xxi


Preface

The combination of PHP and MySQL is the most convenient approach to dynamic,
database-driven web design, holding its own in the face of challenges from integrated
frameworks—such as Ruby on Rails—that are harder to learn. Due to its open source
roots (unlike the competing Microsoft .NET Framework), it is free to implement and
is therefore an extremely popular option for web development.
Any would-be developer on a Unix/Linux or even a Windows/Apache platform will
need to master these technologies. And, combined with the partner technologies of
JavaScript, jQuery, CSS, and HTML5, you will be able to create websites of the caliber
of industry standards like Facebook, Twitter, and Gmail.

Audience
This book is for people who wish to learn how to create effective and dynamic web‐
sites. This may include webmasters or graphic designers who are already creating
static websites but wish to take their skills to the next level, as well as high school and
college students, recent graduates, and self-taught individuals.
In fact, anyone ready to learn the fundamentals behind responsive web design will
obtain a thorough grounding in the core technologies of PHP, MySQL, JavaScript,
CSS, and HTML5, and you’ll learn the basics of the jQuery and jQuery Mobile libra‐
ries, too.

Assumptions This Book Makes


This book assumes that you have a basic understanding of HTML and can at least put
together a simple, static website, but does not assume that you have any prior knowl‐
edge of PHP, MySQL, JavaScript, CSS, or HTML5—although if you do, your progress
through the book will be even quicker.

xxiii
Organization of This Book
The chapters in this book are written in a specific order, first introducing all of the
core technologies it covers and then walking you through their installation on a web
development server so that you will be ready to work through the examples.
In the first section, you will gain a grounding in the PHP programming language,
covering the basics of syntax, arrays, functions, and object-oriented programming.
Then, with PHP under your belt, you will move on to an introduction to the MySQL
database system, where you will learn everything from how MySQL databases are
structured to how to generate complex queries.
After that, you will learn how you can combine PHP and MySQL to start creating
your own dynamic web pages by integrating forms and other HTML features. You
will then get down to the nitty-gritty practical aspects of PHP and MySQL develop‐
ment by learning a variety of useful functions and how to manage cookies and ses‐
sions, as well as how to maintain a high level of security.
In the next few chapters, you will gain a thorough grounding in JavaScript, from sim‐
ple functions and event handling to accessing the Document Object Model, in-
browser validation, and error handling. You’ll also get a comprehensive primer on
using the popular jQuery library for JavaScript.
With an understanding of all three of these core technologies, you will then learn how
to make behind-the-scenes Ajax calls and turn your websites into highly dynamic
environments.
Next, you’ll spend two chapters learning all about using CSS to style and lay out your
web pages, before discovering how the jQuery libraries can make your development
job a great deal easier. You’ll then move on to the final section on the interactive fea‐
tures built into HTML5, including geolocation, audio, video, and the canvas. After
this, you’ll put together everything you’ve learned in a complete set of programs that
together constitute a fully functional social networking website.
Along the way, you’ll find plenty of advice on good programming practices and tips
that can help you find and solve hard-to-detect programming errors. There are also
plenty of links to websites containing further details on the topics covered.

Supporting Books
Once you have learned to develop using PHP, MySQL, JavaScript, CSS, and HTML5,
you will be ready to take your skills to the next level using the following O’Reilly ref‐
erence books:

• Dynamic HTML: The Definitive Reference by Danny Goodman

xxiv | Preface
• PHP in a Nutshell by Paul Hudson
• MySQL in a Nutshell by Russell Dyer
• JavaScript: The Definitive Guide by David Flanagan
• CSS: The Definitive Guide by Eric A. Meyer and Estelle Weyl
• HTML5: The Missing Manual by Matthew MacDonald

Conventions Used in This Book


The following typographical conventions are used in this book:
Plain text
Indicates menu titles, options, and buttons.
Italic
Indicates new terms, URLs, email addresses, filenames, file extensions, path‐
names, directories, and Unix utilities. Also used for database, table, and column
names.
Constant width
Indicates commands and command-line options, variables and other code ele‐
ments, HTML tags, and the contents of files.
Constant width bold
Shows program output and is used to highlight sections of code that are dis‐
cussed in the text.
Constant width italic
Shows text that should be replaced with user-supplied values.

This element signifies a tip, suggestion, or general note.

This element indicates a warning or caution.

Preface | xxv
Using Code Examples
Supplemental material (code examples, exercises, etc.) is available for download at
http://lpmj.net.
This book is here to help you get your job done. In general, if example code is offered
with this book, you may use it in your programs and documentation. You do not
need to contact us for permission unless you’re reproducing a significant portion of
the code. For example, writing a program that uses several chunks of code from this
book does not require permission. Selling or distributing a CD-ROM of examples
from O’Reilly books does require permission. Answering a question by citing this
book and quoting example code does not require permission. Incorporating a signifi‐
cant amount of example code from this book into your product’s documentation does
require permission.
We appreciate, but do not require, attribution. An attribution usually includes the
title, author, publisher, and ISBN. For example: “Learning PHP, MySQL & JavaScript
by Robin Nixon (O’Reilly). Copyright 2018 Robin Nixon, 978-1-491-97891-7.”
If you feel your use of code examples falls outside fair use or the permission given
above, feel free to contact us at [email protected].

O’Reilly Safari
Safari (formerly Safari Books Online) is a membership-based
training and reference platform for enterprise, government,
educators, and individuals.

Members have access to thousands of books, training videos, Learning Paths, interac‐
tive tutorials, and curated playlists from over 250 publishers, including O’Reilly
Media, Harvard Business Review, Prentice Hall Professional, Addison-Wesley Profes‐
sional, Microsoft Press, Sams, Que, Peachpit Press, Adobe, Focal Press, Cisco Press,
John Wiley & Sons, Syngress, Morgan Kaufmann, IBM Redbooks, Packt, Adobe
Press, FT Press, Apress, Manning, New Riders, McGraw-Hill, Jones & Bartlett, and
Course Technology, among others.
For more information, please visit http://oreilly.com/safari.

How to Contact Us
Please address comments and questions concerning this book to the publisher:

O’Reilly Media, Inc.


1005 Gravenstein Highway North

xxvi | Preface
Sebastopol, CA 95472
(800) 998-9938 (in the United States or Canada)
(707) 829-0515 (international or local)
(707) 829-0104 (fax)

We have a web page for this book, where we list errata, examples, and any additional
information. You can access this page at http://bit.ly/lpmjch_5e.
To comment or ask technical questions about this book, send email to bookques‐
[email protected].
For more information about our books, courses, conferences, and news, see our web‐
site at http://www.oreilly.com.
Find us on Facebook: http://facebook.com/oreilly
Follow us on Twitter: http://twitter.com/oreillymedia
Watch us on YouTube: http://www.youtube.com/oreillymedia

Acknowledgments
I would like to once again thank my editor, Andy Oram, and everyone who worked
so hard on this book, including Jon Reid, Michal Špaček, and John Craig for their
comprehensive technical reviews, Melanie Yarbrough for overseeing production,
Rachel Head for copy editing, Rachel Monaghan for proofreading, Rebecca Demarest
for illustrations, Judy McConville for creating the index, Karen Montgomery for the
original sugar glider front cover design, Randy Comer for the latest book cover, and
everyone else too numerous to name who submitted errata and offered suggestions
for this new edition.

Preface | xxvii
Other documents randomly have
different content
they discussed people and differed about art, and agreed about
books and quarreled about politics and religion, and were wholly and
perilously content with one another and the situation.
On the afternoon of the fourth day the sun broke gloriously
through, and Darcy challenged Remsen to make the precipitous
ascent of the front of Red Hill.
Behold her, then, at the conclusion serenely overlooking the
lowland and the lake while her companion stretched out panting
behind her.
“This is a peak on the Siberian front,” she announced. “And I’m an
outpost.”
“What do you see, Sister Anne?”
“Wait and I’ll tell you. An aeroplane”—she pointed to a wheeling
crow above them—“has just signaled me—”
(“Caw,” said the crow; “Thank you,” said Darcy and threw the bird
a kiss.)
“—that a regiment is coming up from below. There’s the advance
guard.”
She pointed down the sheer rock. Remsen moved across and
looked over the edge. “That spider?” he inquired unimaginatively.
“He’s just pretending to be a spider. But he’s really a spy disguised
as a spider. Now the question is, Shall I drop this bomb on him?”
She held a pebble above the toiling crawler. “War is hell,” observed
Remsen lazily. “Why add to its horrors?”
“How far away it all seems!” said the girl dreamily. “Do you
suppose, over there, it’s beautiful and peaceful like this hillside one
day, and then the next—I guess I’ll let my spy spider live,” she broke
off, dropping her chin in her hand.
Remsen sat down at her side.
“What’s your soldier man like?” he asked abruptly.
“What? Who?” inquired the startled Darcy. “Oh, Monty!” Gloria’s
insufficient sketch came to her aid. “Why, he’s short and round and
roly-poly.”
“Then I don’t give a very exact imitation of him, do I?”
“Not very. And he’s red and fierce-looking, with a stubby, scrubby
mustache,” she added, augmenting Gloria’s description.
Her companion stared. “Not what I should call a particularly
enthusiastic portaiture.”
“Oh, but of course he’s awfully nice,” she made haste to amend.
“Not really a bit fierce, you know, but very brave and—and” (eagerly
casting about) “a lovely voice.”
“What kind?”
“Barytone.”
“And you sing together?” he asked gloomily.
“Oh, lots!”
“I suppose so.” He gathered some loose stones and began idly to
drop them over the rock’s crest.
“There! You’ve given the alarm to the spy,” she accused. “See him
wigwagging at you! Now he’ll go and report.”
“Darcy!”
“Well?”
“You don’t mind my calling you Darcy, do you?”
“N-n-no, I like it.”
“I wonder if you’ll mind what I’m going to say now.”
“I don’t believe I should mind anything you would say.”
“It’s about the little song. The one that you set right for me.”
“Our song.”
“Our song,” he repeated with a wistful emphasis on the pronoun.
“Darcy, you won’t sing that—to him—will you?”
“No,” she said. Her eyes were dimly troubled and would not meet
his. “I won’t sing that—to any one—again.”
“Thank you,” he said humbly.
“Oh, look!” she cried with an effort at gayety. “The enemy! They
approach. Let’s go and meet ’em.”
She jumped to her feet and pointed to a far stretch of the road
where four figures were slowly moving along.
“That means I’ve got to put on my infernal whiskers and wig!” he
groaned.
“Just think how long a vacation you’ve had from them,” she
reproached him.
“And my still more uncomfortable manners.”
“Tone them down a little,” she advised. “I think Holcomb and Paul
are just about ready to turn on the haughty Britisher, and rend him
limb from limb.”
“Don’t blame ’em,” he said lazily. “But they seem to be turning off
toward the village,” he added, peering down into the valley.
“And the girls are coming on,” said Darcy. “Probably they’ve got
the mail.”
“With foreign letters?” said Remsen jealously. “Did you leave a
forwarding address?” She shot a swift, indirect look at him. But he
was gazing out over the regally garbed forest spread below them.
“Come along!” she urged. “We must hurry. We’ll take the
Bungalow trail, and I’ll wait while you put on your Veyze outfit. Then
we’ll catch the girls on their return from the Farm.”
Having carried through the first part of this programme, they took
the road together and presently came upon the two brides. Maud
bore a folded newspaper as if it were a truncheon of official
authority. Her expression was stern and important. Helen was
obviously struggling with a tendency to hysterical excitement. Upon
catching sight of Darcy and her escort, Maud marched with an
almost military front, straight upon them, her fellow bride acting as
rear guard.
“Darcy,” said Maud, ignoring the now perfectly whiskered fiance, “I
should like to speak to you alone.”
A qualm of mingled intuition and caution warned Darcy.
“What about, Maud?” she asked.
“A private matter which your fiancé can hear later,” returned the
uncompromising Maud. “Please, Darcy,” added Helen.
“Not at all,” returned the girl with spirit.’ “Has it anything to do
with Monty?”
“It has a great deal to do with him,” was the grim response.
“Then he should hear it at the same time.”
“Haw! By all means. Haw!” confirmed the fiancé, bringing his
monocle to bear upon Maud and Helen in turn.
“Very well,” said Maud in a your-blood-be-on-your-own-head voice.
“Read that.”
She thrust the newspaper into Darcy’s hand, pointing to a penciled
paragraph on the front page. To Darcy’s eternal credit be it said, she
succeeded in preserving a calm and unperturbed face, while she
read the paragraph, and then passed it to her waiting fiancé.
It informed the world that, for distinguished service in the aerial
corps, the King of England had, on the previous day, personally
decorated Sir Montrose Veyze, Bart., of Veyze Holdings, Hampshire,
England.
CHAPTER XVI

F
OR the death, disappearance, or capture of Sir Montrose Veyze,
of Veyze Holdings, Hampshire, England, Darcy was duly
prepared, in a spirit of Christian fortitude and resignation. That
fame might mark him’ out, thus forcing the issue for her, was wholly
unforeseen. It took her completely aback. The Darcy of a year before
would have collapsed miserably under it. But this was a different
Darcy. She faced the accuser with a quiet smile, back of which her
thoughts ran desperately around in circles, like a bevy of little rabbits
cut off from cover.
“You’ve read what it says in the newspaper?” said Maud, in the
accents of a cross-examining counsel.
“Yes. Oh, certainly!”
“Then perhaps you can explain.”
Darcy shot a swift glance at the bogus Sir Montrose. He also was
smiling. Most illogically Darcy’s heart began to sing a little private
Hymn of Hate of its own. What did he mean by standing there with a
sickly grin on his silly face when the whole fabric of their mutual
pretense was being riddled?
(Herein she was ungrateful as well as illogical. The face was silly
because she had compelled him to make it so. As for the rest, the
smile was good enough of its kind. He was not smiling because he
felt like it, but to conceal the fact that he was doing some high-
pressure thinking of his own.)
From the smirking countenance of her ally, Darcy turned to the
lowering front of the enemy.
“Well, you see,” she said with an air of great candor, after
deliberately tearing out the paragraph, “it’s rather an involved
matter.”
“I don’t see anything involved about it,” returned the lofty and
determined Maud. “Who is this man?”
“Yes; who is he?” echoed Helen, coming mildly to her support.
From the corner of her eye the badgered girl could see the object
of the inquiry. Still smiling! It was too much. Then and there Darcy
committed that ignoble act known and reprehended in the higher
sporting circles, wherein Andy Dunne moves, as “passing the buck.”
“You tell them, Monty,” she said sweetly.
Of a great statesman, now dead, it has been written:
Cheated by treachery and beguiled by Fate,
Once in his life we well may call him great.

Thus with Mr. Jacob Remsen alias Sir Montrose Veyze. Out of
conscious nothing he had, in that precious moment’s respite, evoked
an instantaneous and full-fledged plan to meet the crisis.
Fixing upon Maud as the more formidable antagonist, he impaled
her on the beam of his monocle.
“Haw!” he ejaculated. “You’ve heard about the Veyze Succession, I
assume.”
“Never,” said Maud stoutly.
“What? Nevah heard of the King’s Judgment? Why, my deah lady,
we’re as well known as the Tower of London or the—the Crystal
Palace.”
“In America, you see,” explained the more pacific Helen, “these
things don’t get to us.”
“But I assuah you,” cried the other, turning his glassy regard upon
her, “your atrocious American press has been quite full of it from time
to time. Come, now! You’re spoofing me. You must have read of the
Veyze divided title. What?”
Hypnotized by the glare of the monocle, Helen’s imagination
inspired her to confess that she did vaguely recall something about it,
which was the more gratifying to the representative of the Veyzes in
that he had introduced the press feature on the inspiration of the
moment.
The less impressionable Maud was not to be diverted from the
main issue.
“Even if we knew all about your family, it would not explain Sir
Montrose Veyze being here in America at the same time that he is
being received by the King in London.”
“Wearing two swords. Doesn’t the press report mention that? It
should,” put in the Veyze representative conscientiously piling up
picturesque detail to embellish and fortify his case. “Don’t forget that,
please. It’s a Veyze prerogative.”
“Is it a Veyze prerogative to be in two places at once?” queried the
cross-examiner. “Or—there aren’t two of you, I suppose.”
“Of cawse!”
The accused delivered the answer in a tone of calm and wondering
contempt. Obviously he was incredulous that such ignorance as his
interrogator displayed could exist in a Christian country.
“Two Sir Montrose Veyzes? Of the same name and title?” Maud was
glaring, now.
“Of cawse! The famous Veyze twins. Though we’re not rahlly twins
any more, you understand.”
Under the calm and steady beam of the monocle, Maud weakened.
“What are you famous for?” she asked, more amenably.
“Because there are two of us to the divided title. Bally hard for an
American to understand, I’m afraid. It begins back in the early days
of the title, quite before Columbus landed the Puritans at Bunker Hill,
you know.”
“Columbus wasn’t a Puritan, dear,” corrected Darcy.
“No? Nevah heard anything against the man’s morals, that I can
recall.”
“Never mind Columbus,” said the interested Helen. “Do tell us
about the Veyzes.”
“Right-o! Two brothers were born—twins, d’ you see? There was
some natural confusion. Which was the heir—born first, you know?
Nobody could tell. The King was stayin’ at Veyze Holdings then for
the shootin’; very famous shootin’. The family referred it to him.
Would he play the part of Solomon and decide? His Majesty
graciously acceded to the request. He decreed that the title should
thenceforth be a dual one. It’s remained so ever since. We don’t
produce twins any more, but the two eldest sons of the line inherit
title and property jointly, and each carries two swords at court.
There’s Sir Montrose and Sir Montrose II. I’m II.”

“There are two of us to the divided title”

“How romantic!” breathed Helen.


“Rah-ther. We pride ourselves on that sort of thing, we Veyzes.”
As the glory of his performance developed before her enraptured
mind, the Hymn of Hate died out within Darcy, to be succeeded by a
Pæan of Praise.
“And now,” said she severely, “I should think you girls might have
the decency to apologize to Sir Montrose.”
“Rah-ther!” confirmed her ally.
“I’m awfully sorry,” said Helen contritely. “I’ll apologize when I’m
proved wrong,” returned Mrs. Lee dubiously. “We’ll know soon
enough.”
“Yes? And how?”
“Mr. Wood is trying to get the British Embassy on long-
distance’phone.”
“My respects to Lord Wyncombe,” said the undisturbed suspect.
“But why go to so much trouble? Surely there’s a simpler way.”
“How?” asked Darcy, wondering what fresh audacity was
developing in that fertile brain.
“Don’t you have—er—public libraries in your American towns?”
“Certainly.”
“Then perhaps there is one at Center Harbor.”
“There is,” answered Helen, so promptly that Darcy shot a glance
of suspicion at her.
“What more easy than to drive over there at once,” observed the
suspect blandly, “and consult their Burke.”
“Burke’s Peerage, you mean?” said Darcy. “Perhaps they haven’t
one.”
“They haven’t,” blurted Maud, and stopped, reddening.
“Apparently you’ve tried,” remarked Darcy witheringly. “We
appreciate your interest.” But Sir Montrose II was painfully shocked.
“Not got a Burke!” he exclaimed. “Unbelievable! What a country! I’ll
send for one, at once.”
Impressed, despite herself, Maud Lee hesitated, looking from Darcy
to her fiancé.
“It may be all right,” she admitted. “I don’t say that it isn’t. But
until it is cleared up beyond a doubt, don’t you think, Darcy, you
ought to come and stay with us?”
“I think not,” put in Darcy’s escort quietly. “I’m taking Miss Cole
back to the Farm. If you’ve nothing further to add—”
“Nothing—now,” answered the baffled Mrs. Lee.
“Then we’ll bid you good-day.”
Safely around the curve they stopped and faced each other.
“You wonderful person!” giggled Darcy hysterically. “How did you
ever think of it!” Assuming a grandiose pose he declaimed:
You may break, you may shatter, the Veyze if you will,
But the scent of the Montrose will cling to it still.

“To get down to prose, how long will it cling?” she asked
thoughtfully.
“Allowing for inevitable official red tape, I should say anywhere
from twenty-four hours to a month.”
“Paul Wood has a cousin in the State Department.”
“In that case, nearer the twenty-four hours than the month.”
Darcy seated herself on a boulder and took her chin into her
cupped hands. “Let me think,” she murmured.
Remsen watched her as she considered and would have given
much to be able to read her mind. Presently she looked up.
“Do you mind leaving me here?” she inquired.
“Yes,” he said.
“Why?”
“I always mind leaving you. It gives me a lost feeling.”
She nodded. “Yes; I know what you mean. I feel it, too.”
“Do you?” he cried eagerly.
“You’ve been so wonderfully good to me all through this queer
mess,” she supplemented, a little hurriedly.
He disregarded this. “Besides,” he said, “I’m afraid this is going to
be our last walk.” She looked her startled question.
“What I’d like, of course,” he pursued, “is to stay here and face it
through with you. But that’s going to be worse for you than if I went,
isn’t it?”
“I’m afraid it is.”
“Then it’s up to me to leave.”
“But what if they find you and take you back to New York?”
“I’ve got to take the risk. They’re pretty likely to find out about me
here if they undertake a Veyze investigation.”
“That’s true,” she cried. “I’ve made this place impossible for you as
a refuge.”
“Not you. I did it myself. I’d do it again—a thousand times—for
these last four days.”
“When would you go?”
“To-night. Eleven o’clock. Meredith.”
“Wait till to-morrow.”
His heart leaped. “We’re to have this evening together?”
“No,” she said gently. “I want this evening to myself. I have to
think.”
“I’m a marvelous stimulus to thought,” he pleaded.
She shook an obstinate head.
“Might I walk back to the Farm with you?”
“No; please. I’d rather you didn’t.” She rose and laid her hand in
his. “You’ve been a very parfait, gentil knight,” she said.
“Darcy!”
But she was already swinging up the hill with that free, lithe,
rhythmic pace of hers. At the summit she turned and waved. For one
brief second he saw her sweet, flushed profile clear against the
sweet, flushed sky. It disappeared leaving earth and heaven dim and
void.
Remsen turned blindly homeward. He knew, at last, what had
happened to him.
CHAPTER XVII

A
LL that afternoon and well into the evening, Darcy Cole, at the
Farmhouse, sat and wrote and wrote and wrote.
All that afternoon and well into the evening, Jack Remsen,
at the Bungalow, sat and smoked and mused and let his pipe go out
and relighted it and mused again.
All that afternoon and well into the evening, the four amateur
sleuths at the Lodge waited for a reply from Washington which didn’t
come.
At a point a mile or so above these human processes a large, cold
cloud sprung a million leaks and sifted down a considerable quantity
of large, soft snowflakes, and continued so to do until the air was
darkened and the earth whitened with them.
Through this curtain, after a time, frightened but determined,
tramped Darcy Cole. Through this curtain tramped also Jack
Remsen, deep in such trouble of heart as he had never known
before, and most undetermined. Both were headed for the same
spot, the mailbox at the entrance from the main road to the byway
which leads up to the Bungalow.
Having started considerably earlier than Jack, Darcy got there
first. She opened the box, dropped in her note, and proceeded to
another mail-box some distance along the road and opposite the
Island, where she deposited a second epistle. That left her two and
a half hours in which to make the ten miles of dark, heavy road to
Meredith. If it were too little, she had learned of a trail through
meadowland and forest which would cut off nearly two miles. Darcy
didn’t like woods at night—most of us don’t, if we’re honest with
ourselves—but she proposed to catch that train.
Now, an all-wise government has ordained that upon rural delivery
boxes there shall be a metal flag which works automatically with the
raising and the lowering of the lid. Upon reaching the Bungalow box,
shortly after the wayfarer from the Farmhouse had passed, Jack
Remsen observed with surprise that the flag, which he knew to have
been down, was raised.
“How’s this?” inquired the wayfarer, addressing the box. “I’ve been
here and got the noon delivery, and the postman comes only once a
day. Yet you’re flying signals.”
As the box did not respond, Remsen opened it and felt inside.
Darcy’s note rewarded his explorations. By the light of successive
matches and at the cost of scorched fingers, he read it:
Good-bye, Knight. Your service is over. It has been an ungrateful
one. But I am more grateful than I can say. You must not go. You
must stay. I have written to Helen—she is the kind one—and told her
about it; just how I dragged you into it to take the real Sir
Montrose’s place. I had to tell her who you were. But your secret
won’t be betrayed. So you won’t have to go away. You’ll be safe
here. I’m glad. I like to think of you here. It’s been good—hasn’t it?
Perhaps when you are able to come back to New York I’ll see you at
Gloria’s some time.
I can’t say a millionth part of what I want to. I couldn’t even if
there were time. You’ve been so good to me—so good. And all
you’ve had for it is trouble. I’m sorry.
Good-night, Knight. D. C.
“Even if there were time.” As has been indicated, Jack Remsen’s
mind could, on occasion, work swiftly.
Time for what? Why should she be pressed for time? Obviously,
because she was going away. And she would leave that note only
just before her departure. That could mean only the eleven o’clock
train from Meredith: the train he had intended taking before she
asked him to postpone his departure until the morrow. Of course; so
that he should get her note! On her way to the station she would
leave the explanatory and damnatory letter for Helen Wood at the
Island. Well, it would be a long time before that letter reached its
addressee!
Examination of the blanketed ground confirmed his reasoning.
There were the small, clear-set footprints, infinitely pathetic in the
black wildness of the night. As he well knew from experience,
catching up with Darcy Cole when she was set on getting
somewhere was a job for the undivided attention of the briskest
pedestrian. He set out along the road at a dogtrot.
His first stop was for the purpose of committing a felony,
punishable by several years in the Federal penitentiary. It took him
about a second to complete the crime, and, as he left the rifled mail-
box behind, his inside pocket quite bulged with the fat letter wherein
Darcy had set forth her circumstantial but by no means complete
confession which was to exculpate her partner and inculpate herself.
Remsen’s heart beat a little faster under that bulky epistle with its
contents of courage and self-sacrifice.
At the door of a late-autumnal cottage he borrowed a flash. With
this he could plainly discern the trail of the little feet, blurred but not
obliterated by the snowfall. His watch indicated a quarter after nine.
He jogged on with high hopes.
On a long, straight, level stretch he let himself out for a burst of
speed. Perhaps, from the summit of the hill in which it terminated,
he might catch a glimpse of her, for the moon was now trying its
best to send a struggling ray through the flying wrack of cloud.
Tenderly he pictured to himself the vision of her; head up to the
storm, the strong, lithe shoulders squared, skimming with that easy,
effortless pace of hers that had in it all the grace of perfectly
controlled vigor.
Halfway across the open space he slackened up to cast the light of
the flash on the road.
No footmarks were visible.
Remsen cried out, with the shock of his dismay. He cast about him
on all sides. No result.
Struggling to keep cool, he turned back, going slowly, careful to
miss no trace which intent scrutiny might discover. A quarter of a
mile back he picked up the trail where she had left the road to cross
a brooklet and take to the open fields. Her object he guessed; to cut
across a broad and heavily wooded hill, thus saving herself some
two miles of travel where the road took a wide double curve.
Eased in his breathing by the enforced slowness of the search, he
was now able to accelerate his pace. Halfway up the open hillside a
sudden fury of storm descended, lapping him in whirling darkness.
Ahead of him stretched the dead-black line of woodland. More by
luck than direction, he came upon a gateway, and thus set foot to
the forest path, less difficult to discern in such conditions than the
open trail of the meadows. With his light he could follow it quite
easily. But when he thought of Darcy, lightless and inexperienced in
woodcraft, with only her strength and her courage to help her,
wandering in that wilderness, his spirit sickened with terror. The
numbed fingers of the hand which gripped the flash warned him of
dropping temperature. One might easily freeze on such a night, in
the open. Worst of all, the marks in the snow were now all but
invisible under the fresh fall.
He blundered desperately onward, shouting her name into the
gale as he went. There was an answering call. He threw his light on.
She rose from a fallen tree-trunk into the arc of radiance.
“I’ve been lost,” she said, and walked straight to his arms.
Just for the comfort and safety and relief of it she clung to him,
with no other or further thought than that where he was no harm
could reach her. But now that she was found, Remsen’s self-control
broke under the reaction. His arms closed about her. With a shock of
sweetness, amazement, and terror she felt his lips on hers—and
answered them. For the briefest instant only. The thought of Gloria
pierced through the rapture of the moment, a poisoned dart. She
thrust herself back from him, her hands on his breast.
“Go away!” she sobbed. “You’ve no right. You know you’ve no
right!”
As she had thought of Gloria, so now he thought of the Briton
oversea, fighting in his country’s service.
“I know,” he groaned. “Forgive me.”
She stood back from him, staring with bewildered, dismayed eyes.
“I forgot for the moment that I’m only a counterfeit,” he pleaded.
“You forgot—many things,” said she slowly.
“Forgive me, Darcy,” he said again. “It—it swept me off my feet—
the sweetness of it. It was base—dishonorable—anything you want
to call it; but when I felt you in my arms—”
“Oh, don’t!” she wailed.
“Will it make it better or worse if I tell you that I love you as I
never loved or thought I could love any woman?”
“Worse! Worse! Infinitely worse!”
“This is the end of me,” he said. He spoke quietly and in a flat,
even tone as a man might speak who knew that he was giving up
everything in life worth having. “I’ll not offend again. But—after I’d
kissed you—you had to know. I couldn’t let you think it anything less
than it was, the going out to you of a heart that I could no longer
control.”
“In dishonor!”
“If you will have it so. The dishonor is mine. You are untouched by
it.... Now, let us get to other matters. Are you hurt?”
“No.”
“Then you can follow me back?” he said. “Where?”
“To the Farmhouse.”
“I’ll never go back to the Farmhouse.”
“You must. I’m going away on this train.”
“What good would that do? Haven’t you read my note to you?”
“Of course. Otherwise I shouldn’t have got on your trail.”
“Then you must know that I’ve written the whole thing to Helen
Wood, and even if I wanted to go back, now—”
“Dismiss that letter from your mind. I got it, on my way here.”
“You took my letter to Helen? Did you read it?”
“Do you think me dishonorable in everything?” he returned quietly.
“Oh, I’m sorry!” cried the girl impetuously. “I don’t think you
dishonorable. I know you’re not. I don’t know what to think or do.”
“Take this light and hurry back to the Farmhouse. I’ve still got time
for the train. Or I’ll take you back and make the morning train.”
“One thing I cannot and will not do: spend another night at the
Farm.”
“Is that your last word?”
“Yes.” Obstinacy itself was in the monosyllable.
“Then I’ll go with you to Meredith.”
“I won’t let you.”
“I’ll go,” he retorted in a tone which ended that discussion.
Under his guidance and in silence they regained the main road. At
Center Harbor he succeeded in getting a team to take them the rest
of the way. Not until the end of the journey did Darcy speak to him.
“What shall you do now?”
“I don’t know. Go somewhere,” said he gloomily.
“You must go back.”
“Boulder Brook—without you?” he said passionately.
“But where else can you go?”
“It doesn’t matter.”
They stood in silence until her train pulled in.
“I shan’t see you again, shall I?” he said wretchedly.
“You’ve made it impossible. Oh, why did you do it?” she wailed
softly.
With no further word she turned from him and went into the car.
Remsen stood, dazed with misery. Forward, something was shunted
from an express car with a heavy crash. There was a babel of
voices, a moment’s delay. Darcy flashed out upon the steps again,
her eyes starry. Remsen jumped to meet her. She caught his hands
in hers with a swift, forgiving little pressure.
“I couldn’t leave you so,” she said tremulously. “You’ve been too
good to me. Good-bye, and—forget.”
Before he could answer she was gone again.
Until the tail-light of the train glimmered into obscurity around the
curve, Remsen stood uncovered in the gale. Then he turned to the
miles of lonely road.
CHAPTER XVIII

D
ARCY, in her berth, sat huddled up and wide-eyed. She knew
at last what had happened to her. The burning memory of
that kiss in the woods had left nothing unrevealed to a soul
as frank with itself as Darcy’s had grown to be. She knew, too, what
she had to face. There was no doubt or hesitancy in her thoughts,
no weak attempt to justify herself or find an easy way out. If it had
been any one but Gloria Greene whose happiness was at stake,
Gloria who had picked her up from the scrap-heap of waste and
made a living, pulsating, eager human creature of her, Darcy might
have fought for her own hand. But how could a man who had loved
Gloria Greene, and whom Gloria loved, care seriously for any other
woman on earth? No; this was only a sudden, unreckonable
infatuation on Jack Remsen’s part.... Then she recalled the look in
his eyes when they parted, and knew that her conscience was lying
to her heart. In any case, her course was clear. She must be game.
In her deep trouble her thoughts turned to Gloria, the wise, kind
counsellor, the safe refuge. But she would not do for this crisis! To
betray Remsen to her—that was unthinkable, and nothing short of
the whole truth would serve with Gloria. Darcy knew that she must
fight it out alone. Never, not even in the old, dead days, had she felt
so alone.
Human nature being what it is, there is nothing strange in the fact
that, on her return to New York, Darcy shrank from meeting Gloria.
Although the girl’s conscience absolved her, except for that one,
instinctive lapse when she had been caught off her guard, her sore
heart pleaded guilty to the self-brought charge of a lasting disloyalty.
With the thrill of Jack Remsen’s kiss still in her veins, how could she
face the woman to whom Remsen owed his allegiance, the woman
who, moreover, had been the kindest, most effectual, most unselfish
friend of her own unbefriended life?
Yet there remained to be concluded the obsequies of Sir Montrose
Veyze, of Veyze Holdings, Hampshire, England. Those remains, of
unblessed memory, must positively be removed from the premises
before they gave rise to further and even more painful
complications. Darcy experienced the grisly emotions of a murderer
with an all-too-obvious corpse to dispose of. First of all, Gloria’s
absolution from the promise of secrecy must be obtained, which she
would doubtless be more than ready to accord, now that Sir
Montrose had become too heavy a burden to carry; also Gloria’s
advice and aid if she would give it. Nerving herself for the encounter,
Darcy went to see the actress and told her the whole (if she herself
was to be believed) disastrous tale.
Gloria was too shrewd to believe quite that far. There were
obvious hesitancies, blank spaces, and reservations wherever the
name and deeds of Mr. Jacob Remsen, alias Sir Montrose Veyze II,
or in his own proper person, entered into the narrative. And there
was a something in the girl’s eyes, deep down where the warm gray
was lighted to warmer blue, which hadn’t been there before. It
completed the woman in her. With an inner flush of creative pride
Gloria communed with herself upon the new miracle:
“This is a wonderful and lovable thing that I have made.”
Instinctive honesty compelled her, however, to add: “But somebody
else has given the finishing touch.”
She was too keen an observer not to suspect who her fellow
creative artist was. Being of the ultra-blessed who hold their tongues
until it is time to speak, Gloria made no comment upon this phase,
but set her mind singly to the problem in hand as presented by
Darcy’s recital. “It’s time to own up,” was her decision.
“I suppose so,” agreed the girl. “I don’t look forward to telling
Maud.”
“Let me handle Maud.”
“Would you, Gloria? You are good. However well you do it,
though,” she added resentfully, “I suppose I’ll be ‘Poor Darcy’ again
without even the compensation of being ‘Such a nice girl.’”
“Do you feel like ‘Poor Darcy’?”
“No.”
“Do you look like ‘Poor Darcy’?”
The girl glanced at the long studio mirror back of her. “No, I
don’t,” she replied, and two dimples came forward and offered
corroborative testimony.
“Then whom is the joke on?”
The dimples vanished. “On me,” said their erstwhile proprietor.
“Don’t be an imbecile!” adjured her mentor. “Can’t help it,”
returned Darcy dolefully. “I’ve got the habit.”
“Break it. Hark to the voice of Pure Reason (that’s me). As long as
you were ‘Poor Darcy,’ you had to invent a fiancé or go without,
didn’t you?”
“Yes.”
“And your invention was sure to be a regular old Frankenstein
monster, and to come back and devour you as soon as you were
found out.”
“I can hear the clanking of his joints this minute!”
“You can’t. He isn’t there. If you were still ‘Poor Darcy,’ there’d be
no hope for you. You’re not. You’re something totally different.”
“That’s your view of it,” returned the dispirited Darcy. “But to other
—”
“It’s anybody’s view that isn’t blind as a bat! Half the men you
meet are crazy about you. Aren’t they?”
“I haven’t met many, lately,” said Darcy demurely.
“You met plenty at our party. Even Maud and Helen saw the
effect. Their eyes bunged out!”
“I don’t see how their eyes bunging out is going to help explain Sir
Montrose Veyze I, let alone Sir Montrose Veyze II.”
“Why worry, when I’m here to take the burden from you? I
propose,” said Miss Greene relishingly, “to tell those girls the truth,
the whole truth, and nothing but the truth.”
“Gloria! They’ll pass it on and I’ll be the laughing-stock—”
“Will they! I dare ’em to pass it on!”
“Why shouldn’t they?” cried the girl. “It’s just the sort of thing that
Maud would revel in.”
“Allowing that she could get away with it, you’re right. She
couldn’t.”
“Couldn’t make people believe it, you mean?”
“Never. Never in the world!”
“But it’s true!”
“Dear and lovely innocence! Do you think that helps it to get itself
believed? Besides, the main part of it isn’t true.”
“I mean it’s true that it isn’t true, and if Maud tells the truth about
what isn’t true—”
“Come out of that skein of metaphysical wool, kitten,” laughed
Gloria. “You’re tangled. Here’s what isn’t true; that you’re ‘Poor
Darcy’ who has to get lovers out of books for lack of ’em in real life.”
“But I have been.”
“All right. Let Maud tell the people that used to know you, and
make them believe it. There’s only a few of them and they don’t
count. As for trying it on any one else, all she’ll get will be a
reputation for green-eyed jealousy. How would anybody convince
Jack Remsen, for instance” (Darcy winced, and Gloria’s quick sense
caught it), “that you had to invent an imaginary adorer because you
couldn’t get a real one? No, indeed! The evidence is all against it
from Exhibit A, Darcy’s eyes, down to Exhibit Z, Darcy’s smart little
boots. For an unattractive girl, your little effort of the imagination
would be a pathetic, desperate, ridiculous invention, with the laugh
on the inventor. For an attractive girl, it’s just a festive little joke.
Don’t you see how it works out? The pretty girl (that’s you) can have
all the adorers she wants, but she prefers to take in her friends by
inventing one. Is the joke on the girl or her friends? One guess.
Why, oh, why,” concluded Gloria addressing the Scheme of the World
in a burst of self-admiration, “wasn’t I born a professor of logic
instead of an actress?”
“It sounds reasonable,” confessed Darcy. “But will Maud and Helen
be clever enough to see it?”
“Probably not.”
“Then—”
“Therefore I shall point it out to them in my inimitable and
convincing style, with special hints as to the perils and
disadvantages of getting a reputation for jealousy of a better-looking
girl!”
“Then that’s all settled,” said Darcy with a sigh. “Now what about
Sir Montrose? The real Sir Montrose, I mean.”
“Well, what about him?”
“Suppose he should come over here and hear about it?”
“He won’t. He’s engaged to an English girl. I’ve just heard.”
“How nice and considerate of him! You know, Gloria, I could
almost love that man.”
“Could you? What about the bogus Sir Montrose?” asked the
actress significantly.
Darcy flushed faintly. “Well, what about him?” she echoed.
“How much does he know?”
“Not very much. Do you think I ought to tell him?”
“Does the child expect me to manage her conscience as well as
her affairs!” cried the actress. “If any one is to tell him, you’re the
one.
“I suppose so,” assented Darcy, spiritlessly, and made her
farewells in no more cheerful frame of mind than when she had
come, albeit one load was off her shoulders.
CHAPTER XIX

F
OR a week or more Gloria neither saw nor heard from the girl.
At the end of that time she did, to her surprise, encounter the
erstwhile bogus Sir Montrose without his hirsute adornments
and in his proper person of Mr. Jacob Remsen, sauntering idly along
the Park. Hailing him, she took him into her taxi. Mr. Remsen was
not looking his customary sunny self.
“Did the law’s minions catch you in spite of your whiskers?” she
asked.
“No. Case was compromised. So I’ve come back.”
“And what are you going to do now?”
“I’m going to work.”
“Work! You?” said the actress with unfeigned and unflattering
surprise. “Why? What’s the answer?”
“Ambition,” replied Mr. Remsen in a lifeless voice.
“Sounds more like penal servitude,” commented Gloria. “And what
is to be the scene of your violent endeavors?”
“Ask the Government,” he replied wearily. “Washington, maybe. Or
perhaps San Francisco or Savannah. Or right here in New York, for
all I know.”
“Jerusalem and Madagascar
And North and South Amerikee,”

quoted the other. “Are you about to become an American courier


for the peripatetic Mr. Cook, his agency?”
“Got a chance to go into the Treasury Department,” answered
Remsen gloomily.
“Don’t give up heart,” she encouraged him. “Strong young men
like you often survive the rigors of that life. Pity they don’t send you
to London, where your monocle and your accent would be
appreciated. By the way, have you seen your quondam fiancée since
your return?”
“No,” said Remsen.
Gloria, noting that he winced much as Darcy had winced,
wondered, and turned the talk to other topics which gave her
opportunity to revolve the problem of the two masqueraders in her
mind. That there was a problem she was now well assured. She took
it to luncheon with her, after dropping one of the subjects of it, and
came to a conclusion characteristic of her philosophy and worthy of
a mathematician; namely, that the figures in any problem work out
their own solution if properly arranged. She decided to do the
arranging after luncheon by telephone.
She sent word to Darcy to meet her at the studio without fail at
five. Then she got Remsen at his club and told him that a matter of
importance had come up about which she wanted to see him at her
place about five-fifteen. Whether she herself could get through her
engagements and be back home at that hour she did not know nor
particularly care. Her duties as hostess did not weigh heavily upon
her in this respect. Let Jack or Darcy or both reach the place before
her; it didn’t greatly matter. Perhaps it would even be better that
way.
Furthermore, Gloria Greene was very deeply and happily
preoccupied with certain affairs of her most intimate own, which will
serve to explain a slight vagueness in her usually accurate
schedules, with consequences quite unforeseen by her managerial
self. For one of Miss Greene’s errands that day had been to send a
vitally important telegram which called for an answer in person on
the following day. That the answer in person might arrive that same
day she had not reckoned. She had consulted only railway time-
tables, forgetting that far-and-swift-flying chariot of Cupid, the high-
powered automobile.
ALL things threaten a guilty conscience.
Haunted by the unlaid ghost of Sir Montrose Veyze, Darcy, on
receipt of Gloria’s message, fearfully anticipated that some new
complication had arisen. Having concluded a satisfactory interview
with B. Riegel & Sons (whose representative was impressed anew
with her splendor) she reached Gloria’s studio a little before the
appointed time. The place was empty. For a few moments she idled
about, examining the new pictures, glancing casually at books, and
presently drifted to the piano seat.
Insensibly guided by memories, her fingers wandered into the
little, soothing cradle-song which she had first heard in that very
spot from Jack Remsen’s lips. Long ago, it seemed; so long ago!
Once she played it through, and then in her tender and liquid voice
she crooned it softly.
She did not hear the door open and close. But she felt a light
draught of air, and the next instant a man’s figure loomed through
the gathering dusk, a man’s strong hands fell on her shoulders, and
a man’s glad voice cried:
“Dearest!”
“Oh!” exclaimed Darcy in consternation. “Good Lord!” ejaculated
the newcomer in an altered and horrified tone.
Darcy turned to confront Thomas Harmon. She had seen him but
once, but she carried the clearest memory of his quiet eyes, his vital
personality, his big, light-moving, active frame, and his persuasively
friendly manner. Mr. Harmon was a person not easy to forget. Now
he was covered with confusion.
“I—I really beg your pardon,” he stammered. “It was inexcusably
stupid of me.” Darcy held out her hand, smiling. “I’m Darcy Cole, Mr.
Harmon,” she said. “And I have a great deal to thank you for.”
“Me?” said the big man in surprise. “I’d be glad to think so, but—”
“But you don’t know why,” she concluded, kindly intent on putting
him at his ease. (Darcy, who a year before would have been on live
coals of embarrassment before any strange man!) “You gave me a
refuge at Boulder Brook when I very much needed one.”
“Oh! So you’re Gloria’s—Miss Greene’s little friend. I hope they
made you comfortable.”
“Didn’t you get a note from me telling you how delightful your
place is?”
“No. But, you see, I’ve been away. Just got in.”
They stood looking at each other for a moment, the girl demure
but dimpling, the man still in some confusion of spirit. Then,
encouraged perhaps by the dimples, perhaps by some aura of
fellowship and understanding which exhaled from the girl, Hannon
burst out boyishly:
“I’ve heard a lot about you, Miss Darcy, and I believe you’re a—
well, a good fellow.”
“I am,” Darcy assured him with absolute conviction.
“Well, after the break I made I’ve got to tell somebody or bust.”
“Tell me,” invited the girl. “Whom did you think I was when you
rushed on me?”
“Gloria, of course!”
“Gloria!”
Although untrained in fancy gymnastics, Darcy’s brain whirled
around ten times in one direction, clicked, and whirled around ten
times on the reverse. She put her hand to her head dizzily, striving
to readjust her thoughts.
“Isn’t it very sudden?” she faltered.
“About as sudden as Jacob’s little affair with Rachel,” laughed
Harmon. “It’s been a seven-year siege on my part.”
“But, Gloria—”
“Oh, it’s been a heap suddener for Gloria. In fact she only—I only
got the word to-day. And here I am.” He examined the girl’s troubled
face. “You don’t look exactly pleased,” he added, crestfallen.
“Indeed, you mustn’t think that,” she cried earnestly. “But I—I—I
thought it was Mr. Remsen.” In her bewilderment she blundered on.
“I saw her k-k-k-” Too late she strove to catch herself on the brink of
a shameful betrayal.
“You saw her kiss Jack,” he interpreted, smiling. “He’s a sort of a
third cousin or something, and a privileged character, anyway.”
“I didn’t know,” answered the girl. Then, recovering herself: “Oh,
Mr. Harmon, I am so glad. I believe you’re just as fine as Gloria is—
and that’s the most any one could say.”
“My dear,” he said more gravely. “Nobody on earth is that. But—
well, I want to shout and sing and—Play your music again, won’t
you? Maybe that’ll help.”
Maybe, thought Darcy, it would help her, too; for she also wanted
to shout and sing, and, most contradictorily, to hide and cry—and
wait.
Forgetful, in the turmoil of her mind, of the pledge to Jack
Remsen about the little song which was to be their one keepsake of
those enchanted days in the mountains, she turned back to the
piano and hummed the melody.
“It’s built for a second part,” commented Harmon. “Do you mind if
I try it?”
So she went over it again, and he struck in, in a clear, charming
barytone, and with a singularly happy inspiration of a tenor part.
Over and over it they went, she suggesting, and he perfecting his
second; and they were still at it when the door opened again, upon
deaf ears.
In the hallway Jack Remsen stopped dead. The first thing of which
he was conscious was that the voice of the girl he loved and had
continued to love against every dictate of conscience and honor was
running like sweet fire through his veins again. Instantly the fire
became bitter and scorching. For there was another voice,
accompanying and fulfilling hers, the barytone which she had
adduced as one of her British lover’s chief charms.
(Remsen had to admit the quality of the voice, now raised in his
song. The song which she had promised to keep as his and hers; the
one thing which he might claim of her!)
A hot anger rose in his heart and as quickly faded. Why shouldn’t
she sing that song with her lover? At most it was an idle promise
which he had had no right to exact. He conquered an impulse to
turn and leave. No; the thing had to be faced. Might as well face it
now. When the chords died down he advanced to the door and
spoke.
Darcy whirled on her seat, and rose, very white. His one glance
told Remsen that she was lovelier than ever. Then everything was
swallowed up in the amazement of finding Hannon there. Harmon—
alone in the dusk with Darcy where he had expected to find the
fiancé—his song—and that charming, clear barytone of which Darcy
had boasted in Sir Montrose!
An explanation came to his mind, light in the darkness. It was just
another masquerade—Darcy apparently specialized in them—and
Veyze had been but a blind for Harmon, the real lover in the
background, all the time. He felt Harmon wringing his hand in
welcome and heard himself saying with a creditable affect of
heartiness:
“Then I suppose it’s you that I’m to congratulate.”
“It is,” returned the other, chuckling joyously. “Though how on
earth you knew it I can’t conceive.”
“Isn’t it evident enough?” said Jack.
He marched over to Darcy. She saw him changed, thinned, with
lines in his smooth face; lines of thoughtfulness, of self-control, of
achieved manhood, and her heart was in her eyes as they met his
and drooped.
“And you,” he said. “I wish you every happiness. I couldn’t wish
you better than Tom Harmon.”
“What!” cried that complimented but astounded gentleman. “Me?
Miss Darcy?”
“Well, if it isn’t you,” said Jack lifelessly, looking from one to the
other: “will you kindly tell—”
“It is me, but it isn’t her,” broke in Harmon, with the superb
disregard of grammar suitable to the occasion. “Man alive, it’s
Gloria!”
As if in confirmation, Gloria’s voice came to them, down the
hallway.
“Darcy! Where are you, child?”
Two chairs which foolishly attempted to impede Mr. Thomas
Harmon’s abrupt and athletic progress across the floor were sent to
the janitor next day.
“Tom!” cried Gloria’s voice in a breathless and different tone. Then
the door slammed.
Jack Remsen turned to Darcy. “So that’s it, is it?” he said slowly.
“That,” answered Darcy, “is it. Isn’t it splendid!”
“Couldn’t be splendider—for those most concerned. What about
the rest of it?”
“The rest of it?” Her brows were raised in dainty puzzlement, but
her eyes refused to meet his.
“Where is Veyze?”
“On his way back to the East, I understand,” said Darcy carefully.
“When is he coming over?”
“Not at all.”
“Are you going over there—to England?”
“No.”
“You’re not looking me in the face.”
“I—I don’t want to look you in the face. You’re not pretty when
you make a—a catechism of yourself.”
“Darcy,” said Remsen, “there’s been something queer about this
Veyze business from the start. As long as I could help I did, didn’t
I?”
“Yes,” said the girl quite low.
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!

textbookfull.com

You might also like