Anda dapat menggunakan mysql_num_rows()
dan gabungkan kueri Anda - Lihat catatan kaki
if(isset($_POST["name"], $_POST["password"]))
{
$name = $_POST["name"];
$password = $_POST["password"];
$result1 = mysql_query("SELECT username, password FROM Users WHERE username = '".$name."' AND password = '".$password."'");
if(mysql_num_rows($result1) > 0 )
{
$_SESSION["logged_in"] = true;
$_SESSION["naam"] = $name;
}
else
{
echo 'The username or password are incorrect!';
}
}
Untuk membuat kode Anda saat ini sedikit lebih aman, gunakan:
$name = stripslashes($_POST["name"]);
$name = mysql_real_escape_string($_POST["name"]);
$password = stripslashes$_POST["password"]);
$password = mysql_real_escape_string($_POST["password"]);
tetapi lihat tautan di bawah tentang penggunaan pernyataan yang disiapkan dan hashing kata sandi.
Catatan kaki:
Kode Anda saat ini terbuka untuk injeksi SQL . Gunakan pernyataan yang disiapkan , atau PDO dengan pernyataan yang disiapkan . Kunjungi tautan tersebut untuk informasi lebih lanjut.
Saya perhatikan Anda mungkin menyimpan kata sandi dalam teks biasa. Jika ini masalahnya, sangat tidak disarankan.
Jika ya dan ini adalah situs LANGSUNG, pada akhirnya Anda akan diretas.
Saya menyarankan Anda menggunakan CRYPT_BLOWFISH
atau PHP 5.5 password_hash()
fungsi. Untuk PHP <5.5 gunakan password_hash() compatibility pack
.
mysql_*
pemberitahuan penghentian fungsi:
http://www.php.net/manual/en/intro.mysql .php
Ekstensi ini tidak digunakan lagi pada PHP 5.5.0, dan tidak disarankan untuk menulis kode baru karena akan dihapus di masa mendatang. Sebagai gantinya, mysqli atau PDO_MySQL ekstensi harus digunakan. Lihat juga Ikhtisar MySQL API untuk bantuan lebih lanjut saat memilih API MySQL.
Fungsi-fungsi ini memungkinkan Anda untuk mengakses server database MySQL. Informasi lebih lanjut tentang MySQL dapat ditemukan di » http://www.mysql.com/ .
Dokumentasi untuk MySQL dapat ditemukan di » http://dev.mysql.com/doc/ .
Sunting: untuk membantu OP (lihat tautan yang saya berikan tentang hashing kata sandi).
Coba ganti
if(mysql_num_rows($result1) > 0 )
{
$_SESSION["logged_in"] = true;
$_SESSION["naam"] = $name;
}
else
{
echo 'The username or password are incorrect!';
}
dengan:
while($row=mysql_fetch_assoc($result1))
{
$check_username=$row['username'];
$check_password=$row['password'];
}
if($username == $check_username && $password == $check_password){
echo "Matches.";
}
else{
echo "No match found.";
}