Czy ktoś mógł bym podpowiedzieć co trzeba zmienić w poniższym kodzie, żeby działał poprawnie?
W tej chwili działa dobrze, dopuki wpisuje login ktory juz istnieje w badzie danych. Wtedy jest sprawdzane i porównywane hasło, ale jeżeli wpisze jakiś zupełnie inny login to i jakiekolwiek wymyslone hasło to i tak pojawia mi się informacja że użytkownik został zalogowany.
Oto kod pliku "logowanie.php"
<?php
$_SESSION['odwiedzono']='pass';
include ('naglowek.php');
?>
<br><br>
Zalogój się:<br>
<form action=\"o_logowanie.php\" method=\"POST\">
Login:<br>
<input type=\"text\" name=\"login\" size=\"10\"><br>
Hasło:<br>
<input type=\"password\" name=\"haslo\" size=\"10\"><br>
<input type=\"submit\" value=\"Zaloguj\"><br>
</form>
</body>
</html>
a oto kod pliku "o_logowanie.php"
<?php
if($_SESSION['odwiedzono'] != 'pass') {
echo \"Brak dostępu.\"; }
if ($_POST[login] == '') {
echo \"Muisisz podać login.\"; }
if ($_POST[haslo] == '') {
echo \"Musisz wpisać hasło.\"; }
include ('naglowek.php');
$haslo=$_POST[haslo];
include ('connect.php');
/*Usuwa wszystkie wczesniejsze dane z indexu z hasłem password2 ktore sluzy do po
niejszego porownania hasel*/
$query=\"UPDATE uzytkownicy SET password2=''\";
//Wprowadza haslo logującej się osoby do tabeli w celu pozniejszego ich zweryfikow
nia
$query=\"UPDATE uzytkownicy SET password2=PASSWORD('$haslo') WHERE login='$login'\";
if (!($wynik)) echo \"Blad logowania, dane nie wprowadzone do tabeli.<br>\";
//Pobieranie danych w celu zweryfikowania zaszyfrowanych danych
$query=\"SELECT password2 FROM uzytkownicy WHERE login='$login'\";
$weryfikowane_haslo=$row[0];
//Pobieranie danych uzytkownika w celu weryfikacji z wpisanym haslem
$query=\"SELECT password FROM uzytkownicy WHERE login='$login'\";
$haslo_stare=$row[0];
if ($weryfikowane_haslo == $haslo_stare) echo \"Zalogowany. <br>\"; else echo \"Niezalogowany. Sprawdz hasło i sprubuj jeszcze raz. <br>\";
?>
Napewno poza tym znajdziecie jeszcze kilka innych "niedociągnięć", także poprosze o wszelkie słowa krytyki, w ten sposób szybciej się nauczę jak popełniać mniej błędów i pisać czytelniejsze i lepiej działające skrypty (IMG:
http://forum.php.pl/style_emoticons/default/smile.gif)
Z góry dziękuję i pozdrawiam.