PHP and MySQL for Dynamic Web Sites: Visual QuickPro Guide ペーパーバック – 2011/9/13
There is a newer edition of this item:
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
It hasn't taken Web developers long to discover that when it comes to creating dynamic, database-driven Web sites, MySQL and PHP provide a winning open-source combination. Add this book to the mix, and there's no limit to the powerful, interactive Web sites that developers can create. With step-by-step instructions, complete scripts, and expert tips to guide readers, veteran author and database designer Larry Ullman gets right down to business: After grounding readers with separate discussions of first the scripting language (PHP) and then the database program (MySQL), he goes on to cover security, sessions and cookies, and using additional Web tools, with several sections devoted to creating sample applications. This guide is indispensable for beginning to intermediate level Web designers who want to replace their static sites with something dynamic. In this edition, the bulk of the new material covers the latest features and techniques with PHP and MySQL. Also new to this edition are chapters introducing jQuery and object-oriented programming techniques.
Next the not-so-good: One gripe I had with the structure of the book was the redundant code interspersed among the explanatory text, although this is more of a personal preference. Frames are placed separate from the main text with the actual script that the text is discussing; however, large pieces of this code are also copied into the text surrounded by instructions for recreating the script. I found this to be tedious and distracting, considering that the exact same code is already shown in the adjacent frames. It can be especially frustrating when the identical boilerplate HTML DOCTYPE and meta tags are repeated over and over for each script. This seems to just be page-filling material, but it gets annoying after the first few times. Disregarding these two tags, I can at least see how some of the redundant code could be useful for complete beginners of web development, so I didn't take any stars off for it. That said, I don't think it would be wise to learn PHP and MySQL before learning enough HTML and CSS to not need the repetition, anyway.
Additionally, I'm a bit wary of how late in the book security measures are discussed. These days, security is incredibly important when writing a website backend, so I would have preferred if it was discussed in bits and pieces throughout the book and also explored in greater depth in a later chapter. At the very least, the sections with PHP code for handling HTML forms need to include proper character escaping of posted text, even if the reason behind it isn't explained in detail at the time. Unless someone only reads the first 12 chapters of the book before deciding to create a web server accessible from outside his or her LAN, this probably won't be much of a problem. Still, it's better to get beginners in the habit of using good security techniques from the start, rather than wait until later.
Finally, the bad: The fourth (and, as of this review, current) edition of this book was published in 2012. Since then, HTML5, PHP 7, and MySQL 5.7 have been released, making this edition fairly outdated. Concerning HTML5 in particular, several instances of example HTML code shown in the book have been rendered obsolete, and in many cases are now considered bad practice. Ironically, the same boilerplate DOCTYPE and meta tag code that permeates book has either been simplified or completely thrown out of the HTML5 standard, perhaps explaining some of my frustration with it. I suspect another edition covering the newer versions is in the works, but then again, the author does write in the book that he "wouldn't be surprised if HTML5 is still not released by the time [he] starts the fifth edition of this book." In the meantime, I have to take off a star for the partially antiquated example scripts.
Additionally, I have to take off another star for a potentially more limited problem. My printing of the book was missing approximately 50 pages from the end of Chapter 5 and the beginning of Chapter 6, which cover the Introduction to MySQL and Database Design. Instead, pages 151-198 have been replaced by a duplicate of pages 103-150. Again, the repetition in this book is killing me (joke). I have no idea how many copies were printed with this error, but for beginners, the missing pages contain some very important information on databases, MySQL data manipulation, and MySQL functions. At best, this error would require the reader to find this information elsewhere (or exchange/return the book); at worst, it demonstrates the poor quality control at Peachpit Press.
Ultimately, I'd recommend this book, albeit to a small extent, for beginners of web development and programming in general. Although this book is far from perfect, it is one of the better available guides for those new to programming and backend development. For people like myself, who already have experience with programming, scripting, and/or web design, this book is better utilized as a supplement to other materials. All things considered, this book will provide a decent background into PHP and MySQL, but its use of outdated code, potential quality control issues, and lack of security measures in early chapters hinder its ability to serve as a singular, comprehensive source for getting started in dynamic website design.
The book does have errors. Some of the errors (in code) were caught by the author and others and the errata sheet was updated. Some, however, have not. For example, the book shows a multiline comment as /
when in fact it should be /* and end with */. If you read his tips, you'll see the correct way (this is also how C++ does multiline commenting). In addition to downloading the errata sheet, you can download the code used in the book.
While I haven't completed the book yet, what I have gone through is clear, concise and works. The tips are good ones (especially regarding commenting). I believe this to be a good book for beginners or anyone who wants to learn PHP and interface into the MySQL database. If you already have knowledge in other programming languages then you'll move along quicker.
- The chapter is well organize and the topic that you study is link from one chapter to another chapter with a proper step that you can walk through.
- The author use a simple word to explain, easy to understand and provide you a tip for step by step from chapter to chapter. I feel that he know the feeling of person that do not know the subject and use a very good technique to explain. The author explain to you what is the topic mean, when, where and why to use the relevant topic in the real world. This is the most importance point for me to provide this book 4 stars.
- The last 3 chapters is the real world example that cover all of theory that you learn through the book. You will use all of the knowledge that you learn so far from the book to build the real word project at the end of the book. Whether it is not detail but it could give me a good start to do something new for you or give you another way to continue to strengthening your PHP skill in the future.
- Complicate appendix: The appendix is not include in the book. You need to sign up and download the appendix to read. The appendix is very importance, because it will guide you through the process of installing and configuring the software of PHP and MySQL in order to make the example in your book is running. The author should include this appendix as the first chapter of the book, mean that before the user start to use PHP, they must have the correct installation and configuration of PHP and MySQL before continue to learn this programming language. This to ensure that everybody could be able to access to PHP and MySQL environment when that start to learn this subject. The author fail this point, he just introduce to read appendix after I read chapter 1, it was lucky for me that I have read the appendix in advance, otherwise, I would read chapter 1 and jump to appendix and jump back to chapter and so forth...
- Missing where to access MySQL command prompt: the appendix is very well explain of where to get the software, setup and configure PHP, MySQL, Apache web server. But one thing that made me obstacle during the time that I first start to read this book as well this appendix is where to get access to MySQL command prompt. This point is missing from the page A8 of the appendix. The author guide you to manage MySQL user, setup the root password... but he didn't tell where to access to MySQL command prompt to do that. So how could the user continue to use this command prompt? The user assume to be the beginner level for PHP and MySQL. So the author should be carefully provide the proper step to guide the user from the beginning and ending this configuration appendix.
- No CD: The book has no CD that contain the source code and the software of PHP and MySQL. For a student who live in the remote area and don't have access to internet, you won't be able to use this book while all necessary stuff is download from internet.
- Two column format: This is the major point that I get back one start from this book. I never read the book in two column format. Reading in two column format is really make your eyes tired while you need to read up and down two time per page. And this book is about programming, so the author should know that the topic is very difficult for the user to read. When the book apply two column format, some code was break down and it is really add more difficulty to read and understand the complex code.
Finally, I could summary that this book is written for the beginner level of PHP and MySQL. But it would be good if you have background of some programming language which you should know what is variable, constant, condition, loop...
Thank again for the author Larry Ullman and wish the author and user of this book always the best and success.