Ну, это не работает в MySQL, но есть другие вещи, которые можно сделать с помощью SQL-инъекции.
Учтите это:
$sql = "SELECT * FROM users WHERE username = '$username' AND passwd = '$password'";
// run the query, check if the user exists, let them in, etc
Если вы напишите это в поле username
:
admin' --
становится:
SELECT * FROM users WHERE username = 'admin' -- AND passwd = 'whatever'
Существует также возможность атак типа «отказ в обслуживании», когда они структурируют входные данные так, что выполнение запроса занимает очень много времени, тратя все ресурсы на вашем сервере.
//input:
admin' AND id IN (SELECT u1.id FROM users u1, users u2, users u3, users u4)
Если бы в вашей системе было 1000 пользователей, этот подзапрос попытался бы вернуть 1 000 000 000 000 записей.