Autor Zpráva
JurkQo
Profil
Subor index.php:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>

<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=windows-1250">
<title>Skuska</title>


</head>

<body>


<br><br>

<form method="Post" action="Nahraj.php">
Meno:<br>
<input type="text" name="Meno"><br>
Priezvisko:<br>
<input type="text" name="Priezvisko"><br>
Login:<br>
<input type="text" name="Login"><br>
Heslo:<br>
<input type="password" name="Heslo"
<br>

<input type="submit" value="Odoslať">
</form>
<br><br>

<form method="Post" action="Prihlas.php">
Login:<br>
<input type="text" name="Login"><br>
Heslo:<br>
<input type="password" name="Heslo"><br>
<input type="submit" value="Prihlas">
</form>


</BLOCKQUOTE>


        

</body>
</html>

Subor Prihlas.php:
<?php
$Login = $_POST['Login'];
$Heslo = $_POST['Heslo'];


$con = mysql_connect("...","...","...");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("juro1", $con);

mysql_query("SET NAMES cp1250");


$vypis = mysql_query("select Login from Uzivatelia");
$Existuje = "Ko";
while($zaznam = MySQL_Fetch_Array($vypis)):

if($zaznam[Login] == $Login )
{
$Existuje = "Ok";
}

endwhile;


$vypishesla = mysql_query("select Heslo from Uzivatelia");
$Heslo = "Ko";
while($zaznam2 = MySQL_Fetch_Array($vypishesla)):

if($zaznam2[Heslo] == $Heslo )
{
$Heslo = "Ok";
}

endwhile;


if($Existuje == "Ok" and $Heslo == "Ok")
{
echo("Ste uspesne prihlaseny");
}
else
{
echo("Zadali ste nespravny login alebo heslo");
}


mysql_close($con);
printf ("<form method=\"Post\" action=\"zmenheslo.php\">
Zadaj heslo:<br>
<input type=\"text\" name=\"Heslo\"><br>
<input type=\"hidden\" name=\"Login\" value=\"%s\">
<input type=\"submit\" value=\"Odoslať\">
</form>
",$Login);

?>
Preco aj ked zadam spravne heslo a meno mi to nejde??


Moderátor Joker: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).

Titulek „Login-prihlasovanie“ není přesný. Příště zkus prosím vymyslet lepší.
Joker
Profil
JurkQo:
Možná žádný uživatel v databázi nemá heslo "Ko".
pcmanik
Profil
Namiesot riadku 17 az 51 ti staci

$vypis = mysql_query("SELECT COUNT(*) from Uzivatelia WHERE Heslo = '$Heslo' AND Login = '$Login'");
$pocet = mysql_fetch_array($vypis):


A potom si len podmienkou overis, ci sa pocet rovna 1. Ak ano, tak je prihlaseny inak nie.

6 az 10 zmen na

$con = mysql_connect("...","...","...") or die('Nemožno pripojiť: ' . mysql_error());


Ale cely ten skript mi pride okopirovany a zle upraveny
Joker
Profil
pcmanik:
Ano, to je asi další stupeň na cestě ke správnému výsledku.
Dál se můžeme bavit o tom, že když zadám heslo: ' OR Login='pepa'--, přihlásí mě to na uživatele jehož login jsem zadal, nebo že heslo by nemělo být v databázi uložené přímo.

Ale to se tu už probíralo mnohokrát.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: