PHP & MySQL: Novice to Ninja, 5th Edition is a hands-on guide that will help you build your first database driven website. In the fifth edition of this best-selling book.
THE EASY WAY TO BUILD YOUR OWN DATABASE DRIVEN WEBSITE
You’ll learn how to use PHP (used on 20 million sites worldwide) to build your own working content management system using entirely free software.
The book also teaches you best practices in database design using MySQL, and covers all the latest technologies.
Why is this such a good starter for learning PHP?
This is the 5th edition of what has become a best-seller book on PHP. Each edition has grown in handling more recent PHP versions and ways PHP is used nowadays. It uses a clean MVC (model-view-controller) structure separating PHP controlling code from HTML view templates.
It attacks common security pitfalls and presents the concepts in a logical order. From reading the 4th and 5th editions I can attest that it is a well crafted book.
Beginnings of OOP: the database code has been rewritten in this edition to use PDO (PHP Data Objects API) which professional PHP developers should use. PDO is like JDBC (Java) or DBI (Perl).
It provides a data-access abstraction layer which makes changing from one database server to another easy. PDO works with prepared statements which protect you from SQL-injection attacks. Required is a database-specific PDO driver … but I get sidetracked … 😉
Code best practices: apart from PDO, we see try/catch blocks, MVC architecture, eye for security practices (for example the use of is_uploaded_file when dealing with file upload forms) and more
I found the database chapters amazing. Again clear, concise, and teach good practices in design. It is mixed in with the PHP chapters: ch2 gives you some basics about mysql.
Ch5 explains Relational Database Design, ch6-9 uses it heavily in the building of the internet joke database CMS, ch10 – MySQL Administration and ch11 – Advanced SQL Queries, teach more advanced topics. Plus 3 appendices with MySQL reference material.
Even if you are going to use another database product then MySQL, the database intro alone provided in this book is worth spending the money. Very practical: this book shows you how to build your first dynamic database driven website, step by step.
The examples are very clear. I got some years of experience now so the first 100 or so pages I just gazed over, but the project code still had good insights for me. So even having the basics, this can still be a useful reference to do things the right way.