Kezdőoldal » Számítástechnika » Weblapkészítés » Mit rontottam el ennél a...

Mit rontottam el ennél a login. Php-nél?

Figyelt kérdés

A probléma az hogy hiába írom be felhasználó nevemet és jelszavam mégis mindig ezt írja ki "Írd be a felhasználóneved és a jelszót!"


LOGIN.PHP

---------------------------

<?php


$username = $_POST['username'];

$password = $_POST['password'];


if ($username&&$password)

{


$connect = mysql_connect("","","") or die ("Az adatbázishoz nem sikerült csatlakozni!");

mysql_select_db("a1724090_TEST") or die ("Nem található db");


$query = mysql_query("SELECT * FROM users WHERE username='$username'");


$numrows = mysql_num_rows($query);


echo $numrows;


}

else

die("Írd be a felhasználóneved és a jelszót!");


?>


2011. ápr. 13. 10:24
1 2
 11/20 anonim ***** válasza:

mi a baj ezzel?

if ($username && $password)

csak a szokozt hagyta ki sztem.

2011. ápr. 13. 12:18
Hasznos számodra ez a válasz?
 12/20 anonim ***** válasza:

<?php

$username = $_POST['username'];

$password = $_POST['password'];


print $username;

print $password;


if ($username && $password)

{

print 'oh jeah!'

}

else

{

print 'oh no!'

}

?>



erre mit csinál?

2011. ápr. 13. 12:30
Hasznos számodra ez a válasz?
 13/20 anonim ***** válasza:

mrdexter az mindegy, hogy van-e szóköz vagy nincs.


if ($username && $password)

Ez csak ennyit jelent ha username és password, és hol marad a feltétel.

talán így:

if(!empty($username)&&!empty($username))

Ebbe már benne van hogya username és password nem üres.

Akár isset-et is lehet használni, vagy bármi mást, amit vizsgálni szeretnél.

2011. ápr. 13. 13:23
Hasznos számodra ez a válasz?
 14/20 anonim ***** válasza:

Bocs, helyesen:

if(!empty($username)&&!empty($password))

2011. ápr. 13. 13:24
Hasznos számodra ez a válasz?
 15/20 anonim ***** válasza:
azt mondod?
2011. ápr. 13. 15:08
Hasznos számodra ez a válasz?
 16/20 A kérdező kommentje:
kipróbalom
2011. ápr. 13. 16:00
 17/20 anonim ***** válasza:
sztem jo az amit irtam, csak pontosvesszot hagytam ki a print utan. probald ki. minek oda empty?
2011. ápr. 13. 16:46
Hasznos számodra ez a válasz?
 18/20 anonim ***** válasza:
muti a html formodat!
2011. ápr. 13. 16:56
Hasznos számodra ez a válasz?
 19/20 anonim ***** válasza:

Az if ($username&&$password)

csak akkor működhet, ha boolean (logikai) változókról van szó, de szvsz a $username és $password nemcsak igaz és hamis értéket vehet fel.

Ezért szükséges valamit vizsgálni a változók értékeinél, pl., hogy létezik-e, vagy van-e benne érték, vagy üres, vagy egyenlő valamivel, stb...

Ennél a konkrét problémánál, azt érdemes vizsgálni, hogy létezik-e, vagy van-e értéke a változóknak.

Én pl. legalább 5-7 karakternél több felhasználónevekkel és jelszavakkal engednék csak felhasználókat regisztrálni, és akkor még ez is külön vizsgálat tárgyát képezi.

Ha van értéke a változóknak, akkor kell csak elvégezni az adatbázisban tárolt adatokkal a változók értékeinek összehasonlítását, vagyis, hogy egyeznek-e az adatbázisban tárolt értékekkel.

Ha a felhasználónévnek egyedinek kell lennie, akkor csak egy lekérdezéssel ki kell választani azt a rekordot, amiben a bevitt felhasználónév és jelszó, megegyezik a táblában találhatóval.

Ha a lekérdezésnek nincs eredménye, akkor a felhasználónév és/vagy jelszó hibás.

2011. ápr. 14. 08:17
Hasznos számodra ez a válasz?
 20/20 anonim ***** válasza:

én kiprobaltam és csak akkor lép be az if-be ha irtam vmit a két inputba.

sztem jo az if ($username&&$password).

2011. ápr. 14. 13:04
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!