From the Developer Drive blog there's a recent post with some suggestions on how you can help to prevent SQL injections in your PHP application and make it that much harder for would-be attackers to do what they shouldn't.
Why do SQL injections happen so often? The shortest answer is that SQL injections are so popular because of poor programming. Hackers know about the potential of a successful SQL injection attack and they search for vulnerabilities. Unfortunately, very often they don't have to search hard - vulnerabilities pop right in their face. [...] The good news is that fortunately, SQL injections are also relatively easy to prevent.
They list nine easy things you can do to help prevent the attacks:
- Patch your SQL server regularly
- Limit the use of dynamic queries
- Escape user input
- Store database credentials in a separate file
- Use the principle of least privilege
- Turn magic quotes off
- Disable shells
- Disable any other DB functionality you don't need
- Test your code