Mark: I always think it is best to access the variables in their associative array, so that its very clear that you are using the "name column from the result set $foo" rather than "this variable called $foo that could have come from anywhere and its not declared so you can't debug it"! Its too easy, especially on large systems, to accidentally use the same variable twice, or to be unclear where its coming from - so I always teach that extract is a BAD thing.