Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL] Logowanie i.. dziwny problem
ownede
post
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 2
Dołączył: 14.03.2009

Ostrzeżenie: (0%)
-----


Cześć, Pisze CMS do pewnej gry.

Do tej pory wszystko szło gładko. Logowanie działało i nagle przestało (?).

Sprawdzam, czy użytkownik istnieje w bazie następującym kodem:
  1. <?php
  2. $query2 = "SELECT count(*) FROM players WHERE Name='".$login."' AND Password='".$haslo."'";
  3. $result2 = mysql_query($query2) or die(mysql_error());
  4. $row2 = mysql_fetch_row($result2) or die(mysql_error());
  5. ?>

$login i $haslo to dane z formularza.

Oto wyniki echo $query2 i $row2[0].
Kod
SELECT count(*) FROM players WHERE Name='Alex_Moore' AND Password='mojehaslo' // $query2
0 // $row2[0]


Gdy wykonuje to w PMA daje mi wynik 1. Co może być źle?

Z góry dziękuje,
Kacper


--------------------
LockerzInvitez.org - darmowe zaproszenia do portalu Lockerz.com - automatycznie!
LockerzInvitez.org - free invites to Lockerz.com - automatic! lockerz invite invites
Go to the top of the page
+Quote Post
bounty
post
Post #2





Grupa: Zarejestrowani
Postów: 68
Pomógł: 9
Dołączył: 12.04.2009
Skąd: Wrocław

Ostrzeżenie: (10%)
X----


spróbuj tego:
Kod
$query2 = "SELECT * FROM players WHERE Name='".$login."' AND Password='".$haslo."'";

jezeli nie dziala to wyswietl zmienna login i haslo moze wczesniej gdzies masz blad ...


--------------------
<?php
while($earth){
drop_bomb();
}
?>
Go to the top of the page
+Quote Post
b4x
post
Post #3





Grupa: Zarejestrowani
Postów: 658
Pomógł: 95
Dołączył: 20.12.2005
Skąd: N54,35° E18,63° (Gdańsk)

Ostrzeżenie: (0%)
-----


mysql_result" title="Zobacz w manualu PHP" target="_manual a nie mysql_fetch_row" title="Zobacz w manualu PHP" target="_manual


Czyli np...

  1. <?php
  2. $row2 = mysql_result($result2, 0, 0);
  3. ?>


Ten post edytował b4x 18.04.2009, 09:26:25


--------------------
Go to the top of the page
+Quote Post
ownede
post
Post #4





Grupa: Zarejestrowani
Postów: 44
Pomógł: 2
Dołączył: 14.03.2009

Ostrzeżenie: (0%)
-----


Nadal zwraca zero :|
Query w PMA wychodzi dobrze. count(*) = 1

Ten post edytował ownede 18.04.2009, 09:29:43


--------------------
LockerzInvitez.org - darmowe zaproszenia do portalu Lockerz.com - automatycznie!
LockerzInvitez.org - free invites to Lockerz.com - automatic! lockerz invite invites
Go to the top of the page
+Quote Post
b4x
post
Post #5





Grupa: Zarejestrowani
Postów: 658
Pomógł: 95
Dołączył: 20.12.2005
Skąd: N54,35° E18,63° (Gdańsk)

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $w = mysql_result(mysql_query('SELECT count(*) FROM `players` WHERE `Name` = "'.$login.'" AND `Password` = "'.$haslo.'"'),  0);
  3. ?>


Ten post edytował b4x 18.04.2009, 09:33:17


--------------------
Go to the top of the page
+Quote Post
ownede
post
Post #6





Grupa: Zarejestrowani
Postów: 44
Pomógł: 2
Dołączył: 14.03.2009

Ostrzeżenie: (0%)
-----


Cytat(b4x @ 18.04.2009, 10:31:03 ) *
  1. <?php
  2. $w = mysql_result(mysql_query('SELECT count(*) FROM `players` WHERE `Name` = "'.$login.'" AND `Password` = "'.$haslo.'"'),  0, 0);
  3. ?>

Nadal zwraca 0 :S.

Wgrałem backup, gdy wszystko działało i nadal źle.

Ten post edytował ownede 18.04.2009, 09:37:32


--------------------
LockerzInvitez.org - darmowe zaproszenia do portalu Lockerz.com - automatycznie!
LockerzInvitez.org - free invites to Lockerz.com - automatic! lockerz invite invites
Go to the top of the page
+Quote Post
b4x
post
Post #7





Grupa: Zarejestrowani
Postów: 658
Pomógł: 95
Dołączył: 20.12.2005
Skąd: N54,35° E18,63° (Gdańsk)

Ostrzeżenie: (0%)
-----


No to zrób inaczej...


  1. <?php
  2. $w = mysql_num_rows(mysql_query('SELECT * FROM `players` WHERE `Name` = "'.$login.'" AND `Password` = "'.$haslo.'"'));
  3. ?>


Ten post edytował b4x 18.04.2009, 09:41:40


--------------------
Go to the top of the page
+Quote Post
ownede
post
Post #8





Grupa: Zarejestrowani
Postów: 44
Pomógł: 2
Dołączył: 14.03.2009

Ostrzeżenie: (0%)
-----


Cytat(b4x @ 18.04.2009, 10:41:14 ) *
No to zrób inaczej...
  1. <?php
  2. $w = mysql_num_rows(mysql_query('SELECT * FROM `players` WHERE `Name` = "'.$login.'" AND `Password` = "'.$haslo.'"'));
  3. ?>

Zmieniłem serwer SQL i działa każde zapytanie.


--------------------
LockerzInvitez.org - darmowe zaproszenia do portalu Lockerz.com - automatycznie!
LockerzInvitez.org - free invites to Lockerz.com - automatic! lockerz invite invites
Go to the top of the page
+Quote Post
Crozin
post
Post #9





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Ale nie stosuj powyższego zapytania. Lepiej (optymalniej) jest to zrobić tak:
  1. <?php
  2.  
  3. $abc = mysql_query('SELECT COUNT(*) FROM players WHERE ...');
  4. list($def) = mysql_fetch_array($abc, MYSQL_NUM);
  5.  
  6. var_dump($def);
  7. ?>


Ten post edytował Crozin 18.04.2009, 10:18:15
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 06:20