以下のコードは、1 つのチュートリアルから取得したものです。
<?php
// user input that uses SQL Injection
$name_bad = "' OR 1'";
// our MySQL query builder, however, not a very safe one
$query_bad = "SELECT * FROM customers WHERE username = '$name_bad'";
// display what the new query will look like, with injection
echo "Injection: " . $query_bad;
フロントエンドでは、次のように表示されます。
Injection: SELECT * FROM customers WHERE username = '' OR 1''
質問:
なぜそれが表示されusername = '' OR 1''
ますか?