mysql_num_rows () problem !!!

mysql_num_rows () problem !!!

offline
  • Pridružio: 13 Mar 2009
  • Poruke: 229

Ovo je parce koda od login forme, funkcija mysql_num_rows pravi problem i dobijam sledece obavestenje:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\posao\logovanje.php on line 65
Nadam se da ce neko da uoci gresku

if (isset ($_POST['korime'])&& isset ($_POST['password']))    {       //Ako je korisnik pokusao da se prijavi       $korime=$_POST['korime'];       $password=md5($_POST['password']);       $db_conn=mysql_connect("localhost", "root","");       mysql_select_db("zaposljavanje",$db_conn);       $query="select * from DIPLOMCI       where KOR_IME='$korime'       and PASSWORD='$password'       and AKTIVIRAN='1'";       $result = mysql_query($query,$db_conn);       i[code]f (mysql_num_rows($result)>0)[/code]       {          //ako je korisnik pronadjen u bazi podataka          //registrujemo njegov indetifikator u sesiji          $_SESSION['validan_diplomac']=$korime;           }    }

I da ova linija 65 je kao sto rekoh ova
if (mysql_num_rows($result)>0)



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Source  Male
  • Legendarni građanin
  • Pridružio: 10 Jan 2005
  • Poruke: 3319
  • Gde živiš: Stara Pazova

Probaj recimo, $count = mysql_num_rows($result);

I onda if($count == 1) pa registrujes session



offline
  • Pridružio: 24 Mar 2004
  • Poruke: 3962
  • Gde živiš: Zemun

ovo je tako podlozno SQL injection-u...
ne znam da li vezbas ili radis nesto ali ovo ti je busno skroz na skroz

offline
  • Pridružio: 13 Mar 2009
  • Poruke: 229

Ma vezbanje, ne radim nista ozbiljno. Trebao sam da odradim mysql_real_escape_string ali to mi sad nije toliko bitno.

@Source probacu ovako kao sto kazes pa javljam jel proslo

offline
  • Source  Male
  • Legendarni građanin
  • Pridružio: 10 Jan 2005
  • Poruke: 3319
  • Gde živiš: Stara Pazova

Naravno, uradi strip slashes i real escape string kada dohvatis usr i pass sa $_POST

offline
  • Pridružio: 13 Mar 2009
  • Poruke: 229

Source ::Probaj recimo, $count = mysql_num_rows($result);

I onda if($count == 1) pa registrujes session


Ako uradim ovako jednostavno ne moze da pronadje ni jedan zapis sa ovim zadatim uslovima iako u bazi postoji.
Ako recimo stavim ovo "if($count == 0)" sta god da ukucam za usera i pass logovanje prodje, tj ne proverava se uopste uslov da li postoji taj korisnik u bazi, cudno

offline
  • Source  Male
  • Legendarni građanin
  • Pridružio: 10 Jan 2005
  • Poruke: 3319
  • Gde živiš: Stara Pazova

Evo ti vidi ovaj kod... Mora da radi Very Happy.

http://www.phpeasystep.com/phptu/6.html

offline
  • Pridružio: 21 Apr 2007
  • Poruke: 98

Prvo promeni SQL upit:

$query="SELECT KOR_IME, PASSWORD  FROM DIPLOMCI          WHERE KOR_IME='$korime'          and PASSWORD='$password'           and AKTIVIRAN='1' LIMIT 1";

Ili treba da bude:
$query="SELECT KOR_IME, PASSWORD  FROM DIPLOMCI          WHERE KOR_IME='$korime'          and PASSWORD='$password'           and AKTIVIRAN=1 LIMIT 1";
Koji ti je tip polja AKTIVIRAN u tabeli DIPLOMCI?
Ako ti prijavljuje da upit nije dobar (mysql_num_rows), to znači da nije. Smile

I takođe ubaci posle query:
if(!$result){die(mysql_error();}

Ko je trenutno na forumu
 

Ukupno su 1156 korisnika na forumu :: 45 registrovanih, 7 sakrivenih i 1104 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 8u47, 9k38, A.R.Chafee.Jr., airsuba, AK - 230, Andrija357, Apok, babaroga, bojanM84, Buzdovan, cifra, darios, Denaya, Dimitrise93, djboj, Dorcolac, dragoljub11987, flash12, hyla, ikan, Istman, Karla, kikisp, kjkszpj, kunktator, kybonacci, laganini123, Marko Marković, mercedesamg, Mercury, milenko crazy north, Milometer, mrav pesadinac, nemkea71, novator, panzerwaffe, procesor, robertino, Sale.S, Srle993, Stoilkovic, theNedjeljko, Tvrtko I, virked, W123