DevShed: Databases and PHP
642360
DevShed has started a new series looking at working with PHP and databases with this new tutorial posted today, an excerpt from the O'Reilly book "Programming PHP, Second Edition".   We focus on the PEAR DB system, which lets you use the same functions to access any database, rather than on the myriad database-specific extensions. In this chapter, you'll learn how to fetch data from the database, how to store data in the database, and how to handle errors. We finish with a sample application that shows how to put various database techniques into action.   In this first part of the series, they look at what kinds of things are possible with the database connection, some of the basics of using the PEAR DB class and working with data source names to help with the connection.
416901
Aaron Wormus has a new note on his blog today about his presentation at this year's Zend/PHP Conference & Expo and another speaker he's excited to hear.    One of the Zend conference sessions that I'm pretty excited about is Don Samisa Abeysinghe's (of WSO2) "Fully Fletched Web Services with PHP".   I'll be presenting a session on "Moving to PHP5 with Style." This tutorial/case study will be based on experience in transitioning several codebases from PHP4 to PHP5, creating unit tests & started a move towards a service based architecture without a complete platform rewrite.    Aaron's talk fits under the banner of the "PHP Development" talks, including others on topics like hosting PHP applications on Windows, working with PDO, unicoding in PHP6, and using PHPUnit.
277396
Lukas Smith has posted his review of a book from Packt Publishing - "PHP Web 2.0 Mashup Projects: Practical PHP Mashups with Google Maps, Flickr, Amazon, YouTube, MSN Search, Yahoo!"   Duane from Pakt asked me if I would be interested in reviewing a few books for them in my blog. I picked "Mashup Projects" from the list of just released books, since I am interesting in the topic and I am actually going to give a presentation at the internal "PHP Day" we are doing at Optaros in November.   He points out the good (good writing style, well-chosen examples) and the bad (a log list of errors and oversights in the code). He also talks about the contents of the book - the different examples and the final more major project. Overall though, he sees it as a good book, one that would be a good introduction to mashups for PHP developers (if you look past the formatting issues).
636915
Popular posts from PHPDeveloper.org for the past week:RefreshinglyBlue Blog: PHP vs Ruby - Practical Language DifferencesAndreas Gohr's Blog: Determine StumbleUpon RankingsPHP.net: PHP 5.2.4 ReleasedThe Bakery: Five New Posts - Custom Views, CSS, ViewInFile, ActsAs and Email ValidationPHPBuilder.com: File uploads made easyStefan Mischook's Blog: Turning on display_errors in WAMP - Video Tutorialphp|architect: Pro::PHP Podcast - Newscast for August 2007MT-Soft Blog: Creating a secure PHP production environment from Source CodeCommunity News: Andi Gutmans to Present at AjaxWorld 2007HowTo Forge: How To Set Up A Facebook RSS Feed Reader
553589
Zend has a new tutorial posted in their PHP 101 series - PHP 101 (part 9): SQLite My Fire!
437494
Popular posts from PHPDeveloper.org for the past week:PHPClasses.org: A PHP killer feature - Streams abstractionRob Thompson's Blog: Switch vs. IfPHPEverywhere: Octopussy numbers in PHPJob Posting: MODE Visual Seeks PHP Developer (Charlotte, NC)ProDevTips.com: Why PHP as a templating language sucksMatthew Turland's Blog: The Yin and Yang of TypingStubbles Blog: Stubbles 0.5.0 releasedChristopher Jones' Blog: Updated connection pooling in PHP's OCI8 extensionBen Ramsey's Blog: Congrats Costa Rica PHP!Carsten Lucke's Blog: Configuration issues with Xdebug on Debian Etch
568782
DevShed has posted the next-to-last (part four) of their series looking at destructors in PHP5 applications today. This time they focus on passing information back out of the destructors as the script is finishing.   In this fourth article of the series I'm going to teach you how perform this process when working with multiple objects (remember that you already learned how to achieve this using only one class instance).   They start simple, showing how to handle one object to give you a base to work from. They modify this to expand it out and show the management instead of three different user data objects.
650296
In a post from PHP Magazine today, there's mention of an interesting discussion that was had at the latest NYPHP meeting concerning the accessing of the NDB Cluster native API directly from PHP.
79883
DevShed has posted the last part of their latest series, a look at using the Prototype pattern in a PHP5 application, Building a Data Validation System with the Prototype Pattern with PHP 5.   Taking into account that this pattern can be helpful in situations where a prototype object is required, along with other clones of it, in this final installment of the series I'm going to demonstrate how to use it to build a simple application for checking the validity of incoming data.   They create a simple validation system with the pattern to check and see if the inputted data is either alpha only or alpha-numeric. On top of this, they create some additional classes to check the data for things like being a valid email address or if the value is made up of all numbers.
150071
On his blog today, Mike Lively has posted about the work h's done to create a database extension for the popular unit testing software for PHP, PHPUnit.   For those that may not have read any of my previous postings on the subject the goal of this software is to extend the functionality of PHPUnit to allow using seed data to put a given database into a known state prior to executing each test. It also provides an easy mechanism to compare database contents with an expected dataset.   Mike has just completed the initial feature set for his project - more or less a port of DBUnit over to PHP. The post includes not only details about this initial release but also code that demonstrates its use. In his example, it's used to validate that a bank account has been created properly by comparng database information before and after the insert.
151612
In a new blog entry, Michael Kimsal points out a driver that Microsoft has released (during the end of last year) that allows PHP5 applications to connect directly to a SQL Server database.   This isn't replacing freetds any time soon.  I guess I'm still wondering what the market for "PHP apps deployed on Windows talking to SQL Server" really is - most of the shared hosting accounts I've seen, even on Windows, offer MySQL or Access as the database.    He also points out a video that was shot of the development team talking about the driver (here's their blog too).
751529
Michael Kimsal has come up with the start of a series to introduce PHP developers to the world of Grails (the Java framework).   The comparisons I plan to make will be mostly to PHP, cause that's what I'm most familiar with, though there may be some other comparisons from time to time.  This is a work in progress, but I'd be very interested in feedback from anyone out there interested in this aea - Grails, Groovy, PHP, why another language/platform/framework, etc.   The first two installments have been posted - part one and part two - with an introduction to what Grails is and a brief dip into some "Hello world" sort of code to give you an idea of the structure.
762869
DevShed wraps up their look at databases in PHP (a excerpted from "Programming PHP, Second Edition") with this new tutorial showing how to insert and work with PDO prepared statements.   Concluding our discussion of databases and PHP, we'll finish building the [administration portion of the website] example that we started last week.    They start with the code for the administration page for adding a new record to the table - in this case, a business. They give the code to handle the submit and how to display a list of the current businesses. They wrap it up with a look at working with PHP Data Objects (PDO) and using them to create prepared statements.
155453
Popular posts from PHPDeveloper.org for the past week:PHPBuilder.com: AJAX and PHP Part 1Developer.com: Threads Versus The Singleton PatternNick Halstead's Blog: Google Gears Caching of WordPress in PHPDevShed: PHP, MySQL and the PEAR DatabaseDave Dash's Blog: Installing a PHP that can do symfony+doctrine on DreamhostChristopher Jones' Blog: Upgrade PHP with Oracle Application Server on LinuxPHP.net: PHP 5.2.3 ReleasedPro::PHP Podcast: Newscast for May 31st, 2007Secunia.com: PHP Integer Overflow Vulnerability and Security BypassPHPBuilder.com: PHP and Regular Expressions 101
548706
The Zend Developer Zone has posted a review of Packt Publishing's "Learning PHP Data Objects" book writen up by Akash Mehta.   In Learning PHP Data Objects, the author Dennis Popel examines this new [database access] system and explains how to begin using PDO in development as a replacement for typical database drivers. The book is an excellent introduction to the data abstraction layer and also provides essential insight into the inner workings of database interaction with PHP.   Akash talks briefly about the history of PDO and what it can be used for first, then gets into the contents of the book (things like the intro chapters and the quality of the writing). The thing he thinks makes the bok stand out, though, is the examples and sample code that reflect both simple methods and more complex issues PDO developers might run into.
647066
DevShed has posted the second part of their (three part) series looking at the construction of a blogging application in PHP5. In this part, they look at how to handle the user's desire to input entries into the application via a HTML form.   In this second installment of the series, I'll show you how to expand the initial functionality of the already familiar "BlogProcessor" class so that it is capable of addressing all these (displaying all the entries, show the insert/update forms) issues.   They start with the simplest of the group - the displayBlogs method, outputting the full contents of the entries for the blog. Things get a bit tougher with the next step - creating the insert and update forms for pushing content into the database. Finally, they defined the header and footer functionality to make setting up the structure of the page simpler.
552896
DevShed has posted the next part of their series looking at handling errors thrown by the __autoload functionality of PHP. This time they enhance their previous method and allow for custom error messaging.   In this last article of the series I'm going to introduce some additional modifications to the current signature of the "__autoload()" function to make it throw exceptions that display more useful error messages.   They start by setting up the application to have something to build from (a series of PHP scripts). They add on the exception handling to throw the custom error (the "class not found" they mentioned).