why bother putting together an article that talks about database transactions if you're not going to go to the effort of separating out business and presentation logic? while i understand that this was a simple example, not even mentioning it just helps propogate the problem. it also results in (demonstrated perfectly in this article) compromised code, where you need to code something in a certain way to account for the presentation logic. code realted to database access should NEVER be able to break XHTML compliance, and if your application is structured appropriately, you should never have to worry about it...

maybe what we need is an article that starts at the basics instead of jumping into more complex functionality. thanks!