I was contacted by Packt, a UK publishing firm specializing in IT books to review jQuery 1.3 with PHP by Kae Verens. I was very pleased to be contacted to review material that I specialize in.
jQuery 1.3 with PHP is a book for experienced PHP programmers want to beef up the user experience of their web applications by adding behaviors that help organize content, optimize the app and streamline the user’s workflow.
The book functions as more of functional, real-world examples of building pieces of a content management system than a step-by-step tutorial. For better than novice PHP programmers, this is perfect, as you’ve probably already built similar features using HTML, CSS and PHP alone.
Example code is well organized and is clean, but it’s assumed that you’ve got a solid background in PHP programming and web application security. The book stays focused on it’s topic: jQuery and PHP.
As described, the book focuses on real-world examples of features that you may include in a CMS or custom web application for a business:
Content is well organized and all examples use very current code and jQuery plugins. Although jQuery 1.4 was recently released, this book and it’s examples still serve as solid learning tools.
The book begins by explaining the assumptions about the audience (developers expected experience) and giving some introductions to jQuery as well as some quick tips to get novice jQueriers started.
Tabs and accordions are discussed as a means of organizing content. In terms of a CMS, the book describes methods of using PHP to parse output dynamically into tab/accordion behaviors.
Form data and user-experience, including dynamic loading select elements (drop-down lists) and auto-complete are touched in on in the examples from this chapter. Client-side form validation is also shown, in coordination with server-side validation, incorporating the use of the validation jQuery plugin.
Some examples of creating basic file management features as well as handling file uploads are included in this chapter’s examples. A nice piece included here is the use of the Uploadify jQuery plugin, which uses a flash document to allow users to upload multiple files at once, which is slowly becoming a standard for web apps that allow users to upload files.
A nice chapter of this books deals with using a jQuery calendar plugin, which is a very impressive and dynamic feature. Although it’s not for beginners, the examples get the reader to a fairly strong amount of functionality with a clean and very dynamic calendar interface. With a solid understanding of PHP/MySQL programming, one could easily create a fully-functional calendar for their web application/CMS.
The chapter on images uses both server side programming with Image Magick, jQuery code and the jCrop image cropping plugin to create a image management features including resizing, scaling, rotation and cropping. The chapter also touches on outputting images to the buffer, file storage and caching.
This chapter is probably well suited for developers who have played with image manipulation before, and as with the calendar chapter, may require some extra time to follow and completely understand.
Sortable lists are discussed in the chapter, with examples including setting the sort order of elements such as website navigation/pages. The chapter also gets into connecting lists so that elements can be dragged between. A very valuable user experience behavior to incorporate into a number of features of your custom web application/CMS.
The data table jQuery plugin is used as well to illustrate how to easily create sortable and searchable tables of data within your web application as well as create AJAX-powered pagination.
Aspects of optimizing your jQuery and PHP rich web applications is touched on in the final chapter and some great points are made with regards to:
All in all I feel that jQuery 1.3 with PHP would be a great resource for an experienced PHP programmer that wants to spice up the user experience of their new or existing web applications.
The examples are real-world scenarios that can be extrapolated on to create truly impressive web applications, especially if you’re building a customized content management system.