Slashdot Mirror


Build Your Own Database-Driven Website

Chris Beasley writes "I have a PHP book that's 567 pages long. I have two SQL books: one has 377 pages; the other has 719. Yet I consider 295-page 'Build Your Own Database Driven Website using PHP & MySQL' by Kevin Yank more valuable than any of these books. Why? Because, while I may find only a quarter or, at best, half of these books useful on a regular basis, all 295 pages of Yank's new release are of value to me on a daily basis." Build Your Own Database-Driven Website Using PHP & MySQL, 2nd Ed author Kevin Yank pages 295 publisher SitePoint rating 5/5 reviewer Chris Beasley ISBN 0957921802 summary A tutorial-style book for beginning PHP/MySQL Programmers

Unlike the arbitrary structure exemplified by so many programmers' references, Build Your Own Database Driven Website using PHP & MySQL is written more like an instruction manual, with chapters arranged in the order in which you should use them.

The first chapter explains the installation of PHP and MySQL; the next two cover usage basics. In Chapter 4 you're already pulling information from your database and publishing it on the Web. Chapters 5-10 refine what you've already accomplished, and delve into advanced topics in both PHP and MySQL.

If you're familiar with Yank's original tutorial, on which he based this book, your familiarity will end with the closing pages of Chapter 10. Chapter 11 addresses the storage of binary data in MySQL, a topic that was of great interest to me personally as I'd never done it before. In keeping with the rest of the book, Chapter 11 is a step-by-step guide, and explains the storage of binary data in a practical, down-to-earth manner that inspires you to give the book's teachings a try. Already I'm searching for an excuse to build a system, just to experiment with what I've learned. Chapter 12 covers cookies and sessions in PHP. The usage of cookies and sessions is essential to any online authentication or shopping cart system, and this topic makes a great final chapter that complements the book's other lessons.

This book makes good on its promise to teach you everything you need to know to build a database driven Website, but fortunately for us the author decided to throw in a few extras -- these take the form of four reference appendices. Appendix A covers MySQL syntax, which, while covered throughout the book, is easily referenced through this well-organized appendix. Appendix B explains MySQL functions, while Appendix C covers MySQL datatypes in considerable detail, so much so that I found this information easier to use than the official MySQL online reference. Finally, Appendix D covers the PHP functions that are used with MySQL.

If you progress in your programming skills you'll eventually need to buy a complete programmer's reference for PHP, although you probably won't need to buy an SQL reference unless you start using a more robust database solution than MySQL. However, if you want to build your first database-driven website, or even if you have built one before but want a practical reference, I can't recommend this book highly enough. Build Your Own Database Driven Website Using PHP & MySQL will guide you step by step through the development process -- who could ask for more?

You can purchase Build Your Own Database-Driven Website Using PHP & MySQL, 2nd Ed from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

13 of 277 comments (clear)

  1. Who wouldn't? by eenglish_ca · · Score: 3, Interesting

    Who wouldn't build their own database website. Imagine slogging through hundreds of pages of fixed html. Does anyone know of sites like these other than personal pages put up by newbies? All of my sites are at least dynamic using php.

    --
    Checking out my form of escapism.
    1. Re:Who wouldn't? by rreyelts · · Score: 5, Interesting
      opening a database connection for every visitor on every page is suicide
      Rather, just about every serious web application requires database access, and yet they don't commit suicide. It's called connection pooling, and it is a standard feature on pretty much any application server nowadays.

      I imagine most Slashdotted sites die from network starvation long before their machines come to a grinding halt.

  2. The thruth is... by dfiguero · · Score: 5, Interesting

    that once you learn the basics of PHP and MySQL all books on SQL/MySQL and PHP just don't cut it. You would probably be better off with the online documentation from the respective websites and for those really though cases a PHP/MySQL Cookbook.

    --
    My penguin ate my sig
    1. Re:The thruth is... by gid · · Score: 4, Interesting

      I've run into the same thing. In fact, I've taken it one step further, I have NEVER felt a I needed a book to teach me PHP/MySQL, both projects have fantastic online documentation. If there's something that the PHP documentation doesn't tell me, chances are the user comments do. There hasn't been one feasible thing that I haven't been able to figure out with PHP or MySQL thru the online documentation.

      The interesting thing is, I've recently have had to start learning Java / JSP / PL/SQL / Oracle. Documentation is a nightmare. There just doesn't seem to be one end all be all on stop shop for my Java documentation needs, there's about 20 relevant manuals that I need to sift through to find out one thing, and there's about 20 different ways to implement your site. Ok are we going to build our own tag libraries, conform to J2EE, use java beans, just do straight jsp, on what classes should we make and for what? What stuff should be stored in PL/SQL, etc etc etc. It's crazy.

      PHP is a dream come true, ease of use wise. It may not be the fastest thing in the world since it's just a scripting language, but there's the Zend caching engine that can help quite a bit. There's just something to be said for reading PHP code from top to bottom and know exactly what's going on. And being able to pay a cheap PHP monkey to code your site for you, instead of paying an expensive Java/Oracle programmer with 10 years experience.

  3. sounds simliar by drgroove · · Score: 3, Interesting

    to the PHP and MySQL Web Development book by Welling & Thomson, from SAMS.

    Good to see more 'tutorial' style books coming out - its the real world examples that springboard a beginner's skill level w/ a new language.

    I'd much prefer to see this type of tutorial book in the hands of a n00b than a straight-lexicon or syntax book w/o examples of actual apps you can build. Sounds like a good one, based on the review.

  4. Re:Sounds good... by mark_lybarger · · Score: 2, Interesting

    one feature of MySQL is that it "runs" on Win32 platform a little easier than pgsql, but i totally agree with the need for people to consider postgresql. with the use of adodb for php (database abstraction layer), use of pgsql is much easier.

  5. Go Kevin (Yank), not another Kevin! by Anonymous Coward · · Score: 1, Interesting

    I remember a couple of years ago when I started playing with both PHP and MySQL, I tumbled on a tutorial on webmonkeybase.com (defunct and now hosted on lycos I think) written by Kevin Yank. I was really a goor intro to PHP/MySQL, even covering the security aspect of managing a MySQL database. Then perhaps a year later the article was mentionned on MySQL Articles page (I looked but didn't find it anymore) I was happy to see that the tutorial I followed was good enough to make it to the MySQL web page.

    And that was a couple of years ago. I can't imagine the experience he (Kevin Yank) must have acquired since then.

    I will not buy his book, I speak french and am aleady equipped. But for anyone looking to buy a book covering both PHP and MySQL, without even reading it, I would suggest it.

    Good luck Kevin! :^)

  6. Re:HOWTO-Build a DIY DB-driven site by mark_lybarger · · Score: 3, Interesting

    my personal preferance would be Tomcat/JBoss/Apache/postgresql. there's a lot of benefit to taking advantage of product which implement standards and even more benefit when those products are open source free as in beer and free as in speach.

  7. This book misses the mark by esconsult1 · · Score: 5, Interesting
    One reason why PHP gets such a bad undeserved rap, is because much of the PHP code that's written out there today is a nightmare.

    You have uncommented code with embedded HTML that is database specific. Don't get me wrong... if you have a small project that works with a quick hack, then that's ok.

    With any modern PHP project, what's wrong with using templates, PEAR, and object oriented programming? Most PHP books out there tend to spin the mantra of PHP and MySQL or Postgresql without taking the time to show how to use PHP in a modern context where it deserves to be. Thus much PHP programming gets scoffed at because it tends to be unmaintainable.

    I'm sorry, but at this point I'm unable to recommend almost any of the PHP books out there. They mostly encourange terrible PHP system development practices -- embedded HTML, database specific coding, non OOP development.

    There are a few sites that are showing the light. phpclasses.org only has OOP based PHP programs and the tools you need to use templating, mailing, databases in a thoroughly modular manner, and dont forget the PEAR site which documents and make available the excellent PEAR classes for PHP.

    A few other sites also are preparing PHP libraries and development environments that are a joy to work with.

    For PHP public www information is better that 99% of the books out there, and in the case of this book... 100%

    1. Re:This book misses the mark by tcopeland · · Score: 3, Interesting

      Hmm.... I don't question your experience... but I've found that if a server app is written using classes and such it's much easier to go back and plug in a SOAP wrapper to the "business objects".

      For example, GForge has a bunch of classes that we've wrapped via SOAP, so now a Java client can do something like:

      Client c = new Client("my.gforge.host", "myproject");
      client.login("tom,"fiddlesticks");
      Bug[] bugs = client.getOpenBugs();

      Fun stuff!

      Yours,

      Tom

  8. Re:This book isn't available. by Cy+Guy · · Score: 4, Interesting
    Did you ever think abuot a LOCAL bookstore

    Well actually, most local bookstores that want to stay in business have stopped trying to beat Amazon and bn.com and decided to join them by offering used & hard to find books via their affiliated dealers programs.

    Unfortunately, just one copy of the hardback version was (sold within the last few minutes while I was writing this post) available through bn's affilliate system, and none of either edition are available through Amazon's affiliates. Though the paper back version is available through Amazon.

    If there are local stores out there that have the book available, they might want to consider selling the book through Amazon or bn.com. After all, listing (at least on Amazon) is free.


    BTW NineNine, we miss you!

  9. Re:Sounds good... by Raffaello · · Score: 2, Interesting

    "Perl-like? It's C-like, if anything"

    And what sort of syntax does Perl have, lisp-like?
    Perl has C-like syntax, so Perl-like is the same as C-like (i.e., it's easier for a machine to read than a human, so it sucks).

    For doesn't-really-suck syntax, one has to look at something like Dylan, or SmallTalk, IMHO.

  10. No need for SQL in MySQL? by Anonymous Coward · · Score: 1, Interesting

    MySQL IS a robust implementation of ANSI-SQL.

    For a side-by-side comparison to DB2, MS SQL, Oracle and Sybase, follow the link below:

    http://www.mysql.com/information/crash-me.php?my sq l_4_1=on&oracle=on&ms_sql=on&db2=on&sybase =on

    These absurd statements that MySQL is a kiddie SQL server are driven more by marketing than anything else. I expect this crap from managers, but it floors me to hear it coming from developers. I can't imagine any experienced DBA would think that the SQL implementation in MySQL is so pathetic that it would not even require a newbie to have a SQL reference.