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 knowledge of PHP, MySQL, JavaScript, CSS, or HTML5although if you do, your progress through the book will be even quicker.
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 development by learning a variety of useful functions and how to manage cookies and sessions, 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 simple functions and event handling to accessing the Document Object Model, in-browser validation, and error handling. Youll also get a comprehensive primer on using the popular React 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, youll spend two chapters learning all about using CSS to style and lay out your web pages, before discovering how the React libraries can make your development job a great deal easier. Youll then move on to the final section on the interactive features built into HTML5, including geolocation, audio, video, and the canvas. After this, youll put together everything youve learned in a complete set of programs that together constitute a fully functional social networking website.
Along the way, youll 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.
Conventions Used in This Book
The following typographical conventions are used in this book:
Plain textIndicates menu titles, options, and buttons.
ItalicIndicates new terms, URLs, email addresses, filenames, file extensions, pathnames, directories, and Unix utilities. Also used for database, table, and column names.
Constant width
Indicates commands and command-line options, variables and other code elements, HTML tags, and the contents of files.
Constant width bold
Shows program output and is used to highlight sections of code that are discussed in the text.
Constant width italic
Shows text that should be replaced with user-supplied values.
Note
This element signifies a general note.
Warning
This element indicates a warning or caution.
Tip
This element indicates a tip or general note.
Using Code Examples
Supplemental material (code examples, exercises, etc.) is available for download on GitHub.
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 youre 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 set of examples from OReilly books does require permission. Answering a question by citing this book and quoting example code does not require permission. Incorporating a significant amount of example code from this book into your products documentation does require permission.