Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] skrypt logowania
Forum PHP.pl > Forum > Przedszkole
fidel
problem jest nastepujacy: to prosty skypt logowania pobiera z bazy danych login i password i porównuje go z wpisanymi do formularza - co jednak dziwne - jesli formularz zostawie pusty i nacisne loguj - to sie loguje poprawnie (raczej nidopuszczalne hehe biggrin.gif ) a przecież isset ma przed tym bronić a nie działa ? niewiem dlaczego..pewnie to jakis banal ale ja dopiero raczkuje...w tych tematach

http://fidel.livenet.pl/logowanie.php5

  1. <?php
  2.  
  3. if (isset($_POST['login']) && isset($_POST['haslo'])) 
  4.          {
  5.              $conn_string='host=localhost dbname=fidel_db user=fidel password=pass'; 
  6.              if(pg_connect($conn_string))
  7.                {         
  8.                  $wynik=pg_query('SELECT * FROM users WHERE name=''.$_POST['login'].'' '); 
  9.                  if (!$wynik)
  10.                    {
  11.                     echo("zle zapytanie <br/>");
  12.                    }
  13.                  else
  14.                    {   
  15.                     $row=pg_fetch_row($wynik);
  16.                     if (($_POST['login']==$row[2]) && ($_POST['haslo']==$row[3])) 
  17.                      {      
  18.                       echo('<h1>ZOSTAŁEŚ ZALOGOWANY</h1>'); 
  19.                      }
  20.                     else
  21.                      {
  22.                       echo ("zle haslo lub login <br/>");
  23.                      }    
  24.                    
  25.                    }
  26.                 }
  27.              else
  28.                 { 
  29.                   exit("Nie mozna polaczyc z baza <br/>"); 
  30.                 }  
  31.  
  32.            }
  33.  
  34. ?>


PROBLEM ROZWIAZANY[SIZE=7]
phpion
Zamiast isset($_POST['login']) daj np. strlen($_POST['login']) > 0 i powinno byc po sprawie (analogicznie dla zmiennej haslo). A isset dziala poprawnie: wartosc zmiennych jest ustawiona ale sa one puste (no ale posiadaja wartosc). Dlatego lepiej uzyj strlen.
PS: a dlaczego loguje dla pustego usera i pustego hasla to juz inna sprawa - w to nie wnikam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.