Autor Zpráva
one
Profil
včera jsem sem psal a asi jsem přišel na to čím to může být, takže znova:

...
$sql_failedlogin_check = $db->sql_query("SELECT NOW() < `frozen_account` FROM
`account` WHERE `account_name` = '".$accountname."' AND `failed_logins` =
'3' LIMIT 1");
$failedlogin_check = $db->sql_numrows($sql_failedlogin_check);
if(!$failedlogin_check == 1) {
$db->sql_query("UPDATE `account` SET `failed_logins` = '0',
`frozen_account` = NOW() + INTERVAL 5 MINUTE WHERE `account_name` =
'".$accountname."' LIMIT 1");
...
zde je else atd.
...
potřebuji ho opravit, jelikož nefunguje jak má (když bude aktuální čas menší jak
frozen_account a daný uživatel bude mít v databázi nastaveno failed_logins na 3
tak aby se vypsala hláška(tento kus kódu už jsem sem nepostoval, ten není
potřeba)...
jenže když jsem tento dotaz provedl v databázi tak se nic nedělo, jen to napsalo
že se daný sql dotaz provedl úspěšně, s tím že daný uživatel měl failed_logins
na 0

->když se sql dotaz provede, tak je asi sql_numrows 1 ne? v tom bude asi
chyba...

nebo mám chybu jinde? děkuji...
bukaj
Profil
zkusil bych toto:

...
$sql_failedlogin_check = $db->sql_query("SELECT NOW() < `frozen_account` as `frozen` FROM
`account` WHERE `account_name` = '".$accountname."' AND `failed_logins` =
'3' LIMIT 1"); //popř. to bude chtít přehodit zneménko po NOW(), pokud by to dělalo opačnou práci, než by mělo
$failed = mysql_fetch_assoc($sql_failedlogin_check); //nevím, jak by to bylo s tou instancí $db, takže doporučuji později poupravit
if($failed["frozen"]) {
...
one
Profil
hm, tak to můžu chybu hledat asi někde jinde, protože když to zadám tak jako si to tady napsal ty, tak problém přetrvává stejný, a když změním < na > tak to hned vypisuje že je účet zamřažený (v databázi to nastaví failed_logins na 1 a frozen_account se nemění a když to zkusím po druhé tak je stále failed_logins na 1 a frozen_account stále beze změny)

edit: asi si to projedu celý znova, protože už jsem fakt zoufalý..

edit2: tak už vim, ja jsem hroznej *****, ja dal totiž tento sql dotaz:
$db->sql_query("UPDATE `account` SET `failed_logins` = '0',
`frozen_account` = NOW() + INTERVAL 5 MINUTE WHERE `account_name` =
'".$accountname."' LIMIT 1");
tam kam jsem neměl, měl jsem to hodit do }else{
$db->sql_query("UPDATE `account` SET `failed_logins` = '0',
`frozen_account` = NOW() + INTERVAL 5 MINUTE WHERE `account_name` =
'".$accountname."' LIMIT 1");
echo"blablabla";

omlouvám se a stydím se...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0