Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dane z formularzy- PROBLEM
Forum PHP.pl > Forum > PHP
Bibop
Witam,

mam pewien problem z przetwarzaniem informacji wprowadzonych przez uzytkownika. Chodzi o formularz autoryzacji uzytkownikow.
Problem jest taki:
Mam dwa pliki. Jeden to plik formularza, drugi sprawdza dane w bazie. Niestety wprowadzone dane (niewazne czy GET czy POST) nie znajduja sie w zmiennych - zmienne sa po prostu puste - i wszystko sie wysypuje. Jezeli wpisze w pliku sprawdzajacym do zmiennych login i haslo jakies wartosci to wszystko dziala poprawnie.
Moze to jakies bledy w konfiguracji ? Apache, php i MySQL sa z pakietu FoxServ i nic nie zmienialem w pliku konfiguracyjnym Apacha.
Ponizej sa te dwa pliki.

Plik form_log.php
  1. <?php
  2.  
  3. <form action="loguj.php" method="POST">
  4. Login: <input type=text name="login" value=""><br>
  5. Haslo: <input type=password name="haslo" value=""><br>
  6. <input type=submit value="Zaloguj">
  7. </form>";
  8.  
  9. ?>


plik loguj.php
  1. <?php
  2.  
  3. # Dane potrzebne do polaczenia sie z baza i wybraniu odpowiedniej tabeli
  4. $host="localhost";
  5. $user="Bibop";
  6. $pass="";
  7. $baza="forum";
  8. $tabela="uzytkownicy";
  9.  
  10.  
  11. # Sprawdzanie czy w zmiennych sa jakies wartosci
  12. if ($haslo==TRUE AND $login==TRUE)
  13. {
  14.  
  15. # Laczymy sie z baza MySQL
  16. @mysql_connect ("$host", "$user", "$pass") or die ("Nie mozna polaczyc sie z baza");
  17.  
  18. # Wybieramy baze forum
  19. @mysql_select_db ("$baza") or die ("Nie mozna wybrac bazy");
  20.  
  21. # Tworzymy zapytanie sprawdzajace w tabeli uzytkownicy czy wpisane dane sie w ni
    ej znajduja
  22. $zapytanie = "SELECT login FROM $tabela WHERE login='$login' AND haslo='$haslo'";
  23.  
  24. # Wynik naszego zapytania 
  25. $wynik = mysql_query($zapytanie);
  26.  
  27. # Jezeli zwrocona wartosc jest rozna od 1 to wyswietlony jest komunikat o nieist
    niejacym uzytkowniku
  28. if (mysql_num_rows($wynik)!=1)
  29. {
  30. print ("Przykro mi ale $login nie istnieje w bazie, lub podane haslo jest niepopraw
    ne.<BR>"
    );
  31. print ("Sprobuj ponownie <a href="form_log.php">Powrot</a>");
  32. print ("<br>");
  33. }
  34.  
  35. # Jezeli wszystko jest poprawne, wyswietlane jest powitanie
  36. else
  37. {
  38. print ("witaj $login");
  39. }
  40. }
  41.  
  42. # Wyswietla informacje, ze ktoras z danych nie zostala wprowadzona
  43. else
  44. {
  45. print ("Cos jest nie tak<BR>");
  46. print ("Sprobuj ponownie <a href="form_log.php">Powrot</a>");
  47. }
  48.  
  49. ?>


Z gory dziekuje za pomoc.

Pozdrawiam,
Bibop
mike
Masz wyłączone registre_globals

Powninieneś szukać zmiennych z formularza w tablicach suberglobalnych $_POST i @_GET
lukas1
może są wyłączone zmienne globalne.
W pliku loguj.php zamiast:

if ($haslo==TRUE AND $login==TRUE)

zastosuj:

if ($_POST['haslo']==TRUE AND $_POST['login']==TRUE)

i powinno być ok smile.gif
Bibop
WIELKIE DZIEKI, DZIALA
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.