請幫我修復此代碼 即時通訊設法用不正確的用戶名或密碼將顯示 如果我把錯誤的數據... 這個代碼可以顯示,如果我把正確的數據。如何解決用不正確的用戶名或密碼顯示Php?
它會顯示
成功!
但如果我把錯誤沒有任何反應。
<?php
if (isset($_POST["submit"])):
$user = $_POST['user'];
$pass = $_POST['pass'];
$con = mysql_connect('localhost', 'root', '');
mysql_select_db('login') or die ("cannot select DB");
$query = mysql_query("SELECT * FROM userdata WHERE username='" . $user . "' AND password='" . $pass . "'");
$numrows = mysql_num_rows($query);
if ($numrows != 0) {
while ($row = mysql_fetch_assoc($query)) {
$dbusername = $row['username'];
$dbpassword = $row['password'];
}
if ($user == $dbusername && $pass == $dbpassword) {
echo '<b>Success!</b>';
} else {
echo ' incorrect Username or Password ';
}
}
endif;
?>
如果我用這個作爲我的密碼:'test「或」a「=」a'會怎麼樣?無論使用哪個用戶名,它都會接受它。換句話說:你的腳本對SQL注入是開放的!請更新它'MySQLi()'或'PDO()'並使用Prepared Statements。 – icecub