As far as I know, in PHP you can only do one insert statement at a time: (if that's grossly wrong, please don't continue to read the rest :) )
this will not insert any rows:
$query = "insert into users (email) values ('test1');insert into users (email) values ('test2'); ";
$result = mysql_query($query);
Whereas this will insert one row:
$query = "insert into users (email) values ('test1');";
$result = mysql_query($query);
First of all, is what I said so far correct?
If so, does that mean that it is impossible to do a SQL injection similar (just guessing) to this:
$_GET['bad_var'] = '1");drop table users;'
$query = "insert into users (email) values (".$_GET['bad_var'].")";
$result = mysql_query($result);
which would result in insert into users (email) values ("1");drop table users;
Or does the one statement per query assumption prove correct here