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
<?php
<form action="loguj.php" method="POST">
Login: <input type=text name="login" value=""><br>
Haslo: <input type=password name="haslo" value=""><br>
<input type=submit value="Zaloguj">
</form>";
?>
plik loguj.php
<?php
# Dane potrzebne do polaczenia sie z baza i wybraniu odpowiedniej tabeli
$host="localhost";
$user="Bibop";
$pass="";
$baza="forum";
$tabela="uzytkownicy";
# Sprawdzanie czy w zmiennych sa jakies wartosci
if ($haslo==TRUE AND $login==TRUE)
{
# Laczymy sie z baza MySQL
@mysql_connect ("$host", "$user", "$pass") or
die ("Nie mozna polaczyc sie z baza");
# Wybieramy baze forum
# Tworzymy zapytanie sprawdzajace w tabeli uzytkownicy czy wpisane dane sie w ni
ej znajduja
$zapytanie = "SELECT login FROM $tabela WHERE login='$login' AND haslo='$haslo'";
# Wynik naszego zapytania
# Jezeli zwrocona wartosc jest rozna od 1 to wyswietlony jest komunikat o nieist
niejacym uzytkowniku
{
print ("Przykro mi ale $login nie istnieje w bazie, lub podane haslo jest niepopraw
ne.<BR>"); print ("Sprobuj ponownie <a href="form_log
.php
">Powrot</a>"); }
# Jezeli wszystko jest poprawne, wyswietlane jest powitanie
else
{
}
}
# Wyswietla informacje, ze ktoras z danych nie zostala wprowadzona
else
{
print ("Cos jest nie tak<BR>"); print ("Sprobuj ponownie <a href="form_log
.php
">Powrot</a>"); }
?>
Z gory dziekuje za pomoc.
Pozdrawiam,
Bibop