u bazi imam npr tablicu
Code:
CREATE TABLE IF NOT EXISTS `users` (
`id_user` int(11) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`password` char(32) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id_user`),
UNIQUE KEY `username` (`username`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
CREATE TABLE IF NOT EXISTS `users` (
`id_user` int(11) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`password` char(32) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id_user`),
UNIQUE KEY `username` (`username`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
znači `username` sam stavio u index
e sad kad pravim sql upit kako je bolje vako:
Code:
$query = mysql_query("SELECT password FROM users WHERE username = '$username' ");
if (mysql_num_rows($query) != 0)
{
$fetch = mysql_fetch_array($query);
if ($fetch['password'] == md5($password))
{
// Ulogovan
return TRUE;
}
else
{
// Pogrešni korisnički podaci
return FALSE;
}
}
$query = mysql_query("SELECT password FROM users WHERE username = '$username' ");
if (mysql_num_rows($query) != 0)
{
$fetch = mysql_fetch_array($query);
if ($fetch['password'] == md5($password))
{
// Ulogovan
return TRUE;
}
else
{
// Pogrešni korisnički podaci
return FALSE;
}
}
ili je bolji ovakav način
Code:
$password = md5($password);
$query = mysql_query("SELECT password FROM users WHERE username = '$username' AND password = '$password' ");
if (mysql_num_rows($query) != 0)
{
// ulogovan
return TRUE;
}
else
{
// pogrešni podaci
return FALSE;
}
$password = md5($password);
$query = mysql_query("SELECT password FROM users WHERE username = '$username' AND password = '$password' ");
if (mysql_num_rows($query) != 0)
{
// ulogovan
return TRUE;
}
else
{
// pogrešni podaci
return FALSE;
}
zanima me kako je bolje kako ce se brže pretraživati baza?
Nadam se da ste razumjeli pitanje.
Hvala.