MySQL access for Limonade-php
When working on the web it often helps to have some kind of database abstraction present. For my Limonade-php projects, I normally end up utilizing a single function that currently ties in to a mysql database. The connection happens before you call the method, but if you pass in a connection resource it will use that resource for the sql statement.
Line by line explanation:
1-25: Documentation
26: Function declaration, accepts an sql statement and an optional connection resource.
27: We preset $res to false This is so that we can get rid of a bunch of if-statements
28: If there is no connection resource, just execute the sql statement. If there is, use it. (@ surpresses errors)
29: Check to see if our query worked, if it didn’t, we just return res which we preset.
30: Checks to see if we tried to execute a ‘SELECT’ statement.
31: Change $res into an array. Our results will be a nested array since our statement worked!
32-34: Loop through our results and assign them to $res.
36-38: If the sql statement was NOT a ‘SELECT’, return the number of affected rows. If a user passed in a connection resource, use that.
40: return $res, which could either be false, array() or int depending on if the query failed, was a select statement, affected the rows.
