Most Helpful Customer Reviews
2 of 2 people found the following review helpful:
5.0 out of 5 stars
Clear and concise, October 2, 2007
This review is from: PHP Oracle Web Development: Data processing, Security, Caching, XML, Web Services, and Ajax: A practical guide to combining the power, performance, ... development time, and high performance of PHP (Paperback)
PHP Oracle Web Development by Yuli Vasiliev, to quote the front, covers data processing, security, caching, XML, Web Services and Ajax. Quite a lot for a mere 360 or so pages.
The book starts off with notes on both PHP and Oracle and describes how to obtain them both and how to get everything up and running using the PHP OCI8 extensions from Oracle. Whilst Oracle is a market leader in the big database arena, many developers will be surprised to learn that the full and unrestricted product is freely downloadable for development purposes - you only need to buy a licence for a production system. Even then, a free cut down version is available if you don't need the full bells and whistles.
So, with everything up and running, the book launches in to the subject at hand. I was immedietely impressed with the author's clear and easily read prose. Every subject is presented with just the right balance of detail with lots of additional notes and background information to help fill in any gaps. The author's real world experience shines through with sections on locking issues and coding for reusability. The section on object-orienation was particularly welcome.
I also liked the fact that the book didn't just cover the core subject of using Oracle with PHP but also covered vital related material such as various security models and a sizeable section on caching techniques. The sections on XML, Web Services via SOAP and Ajax ensure all the current must-have skills are represented. Ajax was presented via an example application which featured all the aspects you'd need including both code and style sheets but I'd have liked a bit more general advice and description here.
The bulk of the book though is the coverage of the OCI8 extentions and here you can find out how to issue a wide variety of SQL statements including using stored procedures, making use of triggers and a good section on transaction handling that didn't just show how to use them but also had useful advice on structuring your code to make best use of them. I would have liked some notes on avoiding things like SQL Injection attacks but that apart, the security section had some interesting nuggets.
The section on object-orientation warrents close inspection if you want to really leverage the power of the tools available in this development environment. It didn't have much on the 'big picture' of how you'd structure applications this way but it does describe how it all works and how to extend existing objects as well as create your own.
I feel I can safely say that if you need to get to grips with PHP in an Oracle environment, you'll find everything you'll need here to get up and running very quickly. The pace, content and structure of the book are all excellent with my only reserve being the assumption that everything works as it is supposed to with not much in the way of troubleshooting advice. That apart, this is a fine book.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
1 of 1 people found the following review helpful:
4.0 out of 5 stars
A great introduction to PHP and Oracle and how they play together, November 25, 2007
This review is from: PHP Oracle Web Development: Data processing, Security, Caching, XML, Web Services, and Ajax: A practical guide to combining the power, performance, ... development time, and high performance of PHP (Paperback)
This book consists in almost 400 pages of solid content, and is targeted at beginners-to-intermediate PHP and Oracle developers who want to learn or have a deeper understanding of the interaction of the two technologies.
The first chapters highlight the capabilities and advantages of Oracle, cover the installation and connecting procedures, and present some of the alternatives to use Oracle with PHP: using the PHP OCI8 extension directly, and with some popular database abstraction libraries like PEAR::DB, ADOdb, or PDO. A capital sin is it never mentions PEAR::MDB2 ;-)
The central chapters are dedicated to data processing, transaction handling, OO programming, security and caching (also using PEAR::Cache_Lite).
The last chapters are dedicated to XML, XSLT, SOAP and AJAX, and are packed with examples which are more than enough to get you started with those features. All the code examples are laid in a plain and very easy to understand way, yet consistently suggesting some best practices from the very beginning.
The first merit of this book is it shows how you can process data with the DBMS and not just to treat the DBMS like a dumb storage system. For instance, there's a whole chapter explaining how to store, query and transform XML documents with PHP and with Oracle's internal XSLT functions, and there are many examples of STORED PROCEDUREs, TRIGGERs, transaction handling, etc.
A good part of the examples have a strong focus on security too. I found particularly interesting the explanation of alternative techniques to secure your tables, and to mask rows and columns for fine-grained access, using not only VIEWs, but also SPs, multiple schemas, PL/SQL packages, table functions and Virtual Private Database policies. On the PHP side, it goes all the way to create a custom PEAR::Auth container.
One of the most interesting paragraphs of the book describes the usage of Change Notification and notification handlers (a new feature of Oracle Database 10g Rel 2) for caching purposes.
While some of the described techniques aren't Oracle-specific and could be used with any other DBMS and it would have been nice to dive deeper into some other unique Oracle characteristics, that was probably out of scope for an introduction to PHP and Oracle, and it doesn't detract from the merits of this excellent book.
The writing style is clear, even if IMHO it could have been more concise sometimes. For instance, reading continue anticipations and wrap-ups that stress the same concept can get a bit annoying after a while: "In the next chapter we're going to see...", "This chapter covers...", "Now that you have an idea on how...", "In this chapter we've learnt how to...".
Anyway, I guess that it's in the spirit of the old adagio "repetita iuvant", and it may make sense in a technical book. My overall impression is very positive.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
1 of 1 people found the following review helpful:
5.0 out of 5 stars
Clear and useful book, October 19, 2007
This review is from: PHP Oracle Web Development: Data processing, Security, Caching, XML, Web Services, and Ajax: A practical guide to combining the power, performance, ... development time, and high performance of PHP (Paperback)
It's rather small, but gives a good overview of PHP, Oracle and AJAX, coupled together. There is only one project example Throughout the whole book, which is enhanced from various aspects. To be precise, they are:
Performance Optimization - views, stored subprograms, triggers, binding variables (Oracle);
caching mechanisms (PHP,Oracle) - intended to reduce amount of data transferred between database and web servers; AJAX - browser-side optimization,
Security - special database schemas coding/decoding algorithms usage(sha1, md5),
Virtual Private Database (VPD) - Oracle
Scalability/Complexity Control - object-oriented approach (PHP5 features, Oracle Object Types)
Unified Data - XML-processing data inside database/PHP server
using XML DB to implement web-service (SOAP, WSDL).
Many of these ideas are rather universal and can be applied to other database servers, web servers and script languages
I would like to emphasize that author is an expert in Oracle, he tries to move almost all business-logic to database server, use native Oracle features (some of them are implemented only in latest Oracle versions). There are also chapters devoted to general database principles (transaction features (ACID), views, stored subprograms, concurrency, views, triggers, stored subprograms) which can be very useful for novice developers.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
|