Miért nem működik ez a nagyon egyszerű login script?
<?php
$kapcsolat = mysql_connect("localhost", "root", "");
mysql_select_db("test", $kapcsolat);
$inputuser = $_POST["inputuser"];
$inputpass = $_POST["inputpass"];
$query = mysql_query("SELECT * FROM haha WHERE nev=$inputuser AND jelszo=$inputpass");
if ($query == true) {
echo "Sikeres belepes.";
} else {
echo "Sikertelen belepes.";
}
?>
Ha jól adom meg az adatokat akkor is azt írja, hogy Sikertelen belepes. Próbáltam a true helyett numerikusan (1-es számmal) megadni, de így se jó. Az adatbázishoz való kapcsolódás biztos, hogy jó.
<?php
$kapcsolat = mysql_connect("localhost", "root", "");
mysql_select_db("test", $kapcsolat);
$inputuser = mysql_real_escape_string($_POST["inputuser"]);// hekkerek ellen
$inputpass = mysql_real_escape_string($_POST["inputpass"]);
$query = mysql_query("SELECT * FROM haha WHERE nev=$inputuser AND jelszo=$inputpass");
if (mysql_fetch_array($query)) {
echo "Sikeres belepes.";
} else {
echo "Sikertelen belepes.";
}
?>
Valóban, nem olvastam el a kérdést rendesen, te azt vizsgálod, hogy sikerült-e lefutnia az sql-nek, én meg azt, hogy be sikerült-e lépned.
Tehát az SQL-ben van a hiba, lehet nem jók a nevek?
$query = mysql_query("SELECT * FROM haha WHERE nev=$inputuser AND jelszo=$inputpass");
Ebben van a hiba
Javitsd erre: $query = mysql_query("SELECT * FROM haha WHERE nev = '$_POST[inputuser]' AND jelszo = '$_POST[inputpass]')";
Vagy ha a mysql ben password ként adtad meg a jelszót akkor AND jelszo = password('$_POST[jelszo]')
Vagy a harmadik variáns esetleg az idézőjelek az inputuser , inputpass változókban. Ez esetben a query változót igy add meg:
$query = mysql_query("SELECT * FROM haha WHERE nev = '$_POST["inputuser"]' AND jelszo = '$_POST["inputpass"]')";
Dersy
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!