<?php
// We didn't check $_POST['password'], it could be anything the user wanted! For example:
$_POST['username'] = 'aidan';
$_POST['password'] = "' OR ''='";
// Query database to check if there are any matching users
$query = "SELECT * FROM users WHERE user='{$_POST['username']}' AND password='{$_POST['password']}'";
//mysql_query($query);
// This means the query sent to MySQL would be:
echo $query;
?>
Code
SELECT * FROM users WHERE user='aidan' AND password='' OR ''=''
อันนี้โดน hack เรียบร้อย
แต่ถ้าใช้ mysql_real_escape_string
Code (PHP)
<?php
// We didn't check $_POST['password'], it could be anything the user wanted! For example:
$_POST['username'] = mysql_real_escape_string('aidan');
$_POST['password'] = mysql_real_escape_string("' OR ''='");
// Query database to check if there are any matching users
$query = "SELECT * FROM users WHERE user='{$_POST['username']}' AND password='{$_POST['password']}'";
//mysql_query($query);
// This means the query sent to MySQL would be:
echo $query;
?>
Code
SELECT * FROM users WHERE user='aidan' AND password='\' OR \'\'=\''