Kezdőoldal » Számítástechnika » Weblapkészítés » MIÉRT? Nem müködik?

MIÉRT? Nem müködik?

Figyelt kérdés

1 beléptetö php-t irok aminél ott tartok hogy ha a jelszó meg egyezik 1 ezik a jelszóval akkor irjaki hogy sikeres belépés ha nem akkor hogy sikertelen ez igy néz ki

if ($password == $sor[password]);

{

print "Sikeres belépés";

}

else

{

print "Sikertelen belépés";

}

De azt irja hogy nem számitott az else re és nem müködik miért?



2013. márc. 7. 18:50
1 2
 1/15 anonim ***** válasza:
sütivel azonosítod?
2013. márc. 7. 18:52
Hasznos számodra ez a válasz?
 2/15 A kérdező kommentje:

nem semmi extra nincs benne még nagyon alapoknál tartok kezdö vagyok még :D enyit irtam bele

<?php


$username = $_POST[username];

$password = $_POST[password];


$kapcsolat = mysql_connect("127.0.0.1","név","kód");

mysql_select_db("név");


$parancs = "SELECT * FROM register WHERE username = '$username'";

$valasz = mysql_query($parancs);

$sor = mysql_fetch_array($valasz);


if ($password == $sor[password]);

(

print "sikeres bejelentkezés"

)

else

(

print "Sikertelen bejelentkezés"

)

?>

2013. márc. 7. 18:59
 3/15 anonim ***** válasza:

De ez így önmagában semmi.

Egy szimpla összehasonlító form, amibe ha a megfelelő szöveg kerül be kiír egy szöveget, egyébként egy másikat.

2013. márc. 7. 19:07
Hasznos számodra ez a válasz?
 4/15 A kérdező kommentje:
mondtam hogy még csak tanulom 1enlöre elég ha ki irja majd utána fejlesztem tovább de ez sem müködik azt irja hogy nem várta az else-t itt
2013. márc. 7. 19:11
 5/15 A kérdező kommentje:

Most át irtam erre de igy nem azt irja ki hogyha jót irok be hogy sikeres hanem akkor is azt hogy sikertelen :S

<?php


$username = $_POST[username];

$password = $_POST[password];


$kapcsolat = mysql_connect("127.0.0.1","név","jelszó");

mysql_select_db("név");


$parancs = "SELECT * FROM register WHERE username = '$username'";

$valasz = mysql_query($parancs);

$sor = mysql_fetch_array($valasz);


if ($password == $sor[password])

{

print "sikeres bejelentkezés";

}

else

{

print "Sikertelen bejelentkezés";

}

mysql_close($kapcsolat);

?>

2013. márc. 7. 19:17
 6/15 anonim ***** válasza:

Szedd ki a mysql-t belőle, mert felesleges ebben az esetben.


A komparálást pedig így valahogy:

[link]

2013. márc. 7. 19:17
Hasznos számodra ez a válasz?
 7/15 anonim ***** válasza:
Már nem azért de a $sor[password]-nél a passwordot nem kéne idézőjelbe rakni?
2013. márc. 7. 20:10
Hasznos számodra ez a válasz?
 8/15 anonim ***** válasza:
SELECT * FROM register WHERE username = '$username' && password = '$password'
2013. márc. 7. 20:11
Hasznos számodra ez a válasz?
 9/15 anonim ***** válasza:
és escapeld az inputokat
2013. márc. 7. 20:11
Hasznos számodra ez a válasz?
 10/15 anonim ***** válasza:

$sor['password'] kéne minimum, de inkább az a szokás, amit montihun írt, hogy egyből a lekérésben adod be a jelszót is.


VISZONT ebben az esetben mindenképpen fontos a felhasználó név (amennyiben a jelszót titkosítva tárolod, mondjuk md5-ben minimum) eszképelése, mert gyönyörűen ki lehetne ütni a beléptetőt.


Pl.: A ha a felhasználónévnek valami ilyet írnál be: admin' or 1=1;--

és puff, máris elfogadta a rendszer a belépést az admin felhasználónak.

2013. márc. 7. 22:52
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, 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!