mam svuj web na netservices.wz.cz a pouzivam sql na ukladani uzivatelu. pridavani do sql ide ale citanie nie. mam tam polia mogin, meno, mail , telefon, pass
pri prikaze select * from users where login="$login" and pass="$password"
mi ostatne data neda pomozte preco
Krom toho, že bych nevybíral * (ale možná to potřebuješ), bych v tom neviděl žádnou chybku.
Jediné co mne napadá je to, jestli náhodou neukládáš do databáze heslo zašifrované a pak se ho pokoušíš porovnávat nazašifrované.
$pass = md5($_POST["password"]); //zakodovani hesla
$query = mysql_query("SELECT * FROM users WHERE login='$login' AND pass='$pass'");
Doufám, že data od uživatelů nějak kontroluješ (htmlspecialchars(), addslashes(), stripslashes() atd.).
Neco se mu nemusi libit.... A navic stringy nemuzes porovnavat pres =, ale musis pres LIKE... Zkus to takhle...
SELECT * FROM `users` WHERE (`login` LIKE "$login") and (`pass` LIKE "$password");
aleale, odkdy nejdou na mysql porovnavat stringy pres '=' ?
co teba select 'ahoj'='ahoj'?
ad netservices.wz.cz:
mam o dost vic nez 1024*768, proc to na me rve?
jak to, ze kdyz svy opere reknu, aby se tvarila jako opera, tak me nepustis dal, a kdyz ji zamaskuju jako m$ie, tak je to ok? proc pouzivas redirekt z wz.cz? vis, ze tim porusuje pravidla?
Mno tak to like je rozhodne korektnejsi, zvyk ze starsi verze :o)
Nekde sem to cet v dokumentaci, ze to pres = nejde a nikdy sem to pres nej proto nedelal ;o)
korektnejsi to neni, naopak to muze imho zabirat vice casu & zdroju, protoze sql-parser zkousi hledat ruzny metaznaky jako '%' a '_' ...