Strona 2 z 2
: 28 stycznia 2011, 13:42
autor: goska_23
<Bastian>
Kod:
Kod: Zaznacz cały
function loguj($nazwa_uz, $haslo)
// sprawdzenie nazwy u�ytkownika i has�a w bazie danych
// je�eli si� zgadza, zwraca true
// je�eli nie, zwraca false
{
// po��czenie z baz� danych
$lacz=lacz_bd();
if(!$lacz)
{
echo "polaczenie z BAAAZA DANYCH";
}
// sprawdzenie unikatowo�ci nazwy u�ytkownika
$wynik=mysql_query("select * from uzytkownik
where nazwa_uz='$nazwa_uz'
and haslo=password('$haslo')");
if(!$wynik)
{
echo "sprawdzenie usera w bazie";
}
if(mysql_num_rows($wynik)>0)
return 1;
else
return 0;
}
:-)
<fnmirk>
Prawa dałam w wyniku problemów większe niż na Fedorze - tj. root:root 777 (do plików i katalogów)
: 29 stycznia 2011, 19:30
autor: Bastian
A
i
to poprawne? W sensie negacje
: 30 stycznia 2011, 11:51
autor: piotrd14
: 30 stycznia 2011, 12:32
autor: Pacek
Ja bym sprawdził następujące rzeczy:
1. Czy działa PHP prawidłowo - przygotowanie pliku (np. index.php) i wprowadzenie w nim
2. Włączyć wyświetlanie błędów w php.ini:
3. Spróbować połączenia z bazą danych
Kod: Zaznacz cały
mysql_connect("localhost","nazwa_uzytkownika","hasło") or die ("blad: ".mysql_error());
echo("Udało się połączyć");
Jeżeli wywali błąd tzn, że jest problem z połączeniem. No i takie dodatkowa aczkolwiek ważna informacja - MySQL domyślnie blokuje połączenia z hostów innych jak localhost. Tak więc próba połączenia do bazy danych z Debiana (PHP+Apache) do Fedory (MySQL) może się nie udać z tego właśnie powodu.
: 01 lutego 2011, 11:17
autor: goska_23
Pacek, test połączenia z mysql z Twojego skryptu wyszedł pozytywnie: "Udało się połączyć"
Próbuję coś pogrzebać w tym kodzie od czlonek.php co mi się nic nie wyświetla.
Dodane:
" pisze:3. Spróbować połączenia z bazą danych
Kod: Zaznacz cały
mysql_connect("localhost","nazwa_uzytkownika","hasło") or die ("blad: ".mysql_error());
echo("Udało się połączyć");
mysql_select_db("zak111") or die ("blad: ".mysql_error());
echo("Udało się połączyć nawet z bazą zak111");
Spróbowałam nawet tak i jest połączenie
: 01 lutego 2011, 14:47
autor: Bastian
: 01 lutego 2011, 15:02
autor: Pacek
Na 99% jestem przekonany, że problemem jest tutaj zapis zmiennych wykorzystywanych w kodzie PHP. Może za to odpowiadać np. parametr register_globals w php.ini albo jeszcze kilka innych opcji. Ja bym zaczął od porównania pliku konfiguracyjnego php.ini z Fedory z tym na Debianie i wyeliminował różnice. Myślę, że to powinno rozwiązać problem.
Jeżeli używasz ciasteczek, to pamiętaj, że ciasteczka (cookies) uzależnione są od czasu. Jeżeli masz dużą różnicę czasu między klientem (przeglądarka która zakłada cookie) a serwerem (po którego stronie działa skrypt), to może się okazać, że ze względu na różnicę w czasie ciasteczko zostanie założona a następnie od razu usunięte ze względu na "pozorny" upływ czasu (wspomnianą różnicę czasu). Generalnie bez pełnego kodu źródłowego ciężko cokolwiek powiedzieć, ponieważ przedstawiona tu funkcja zwraca prawdę albo fałsz, ale nie wiadomo jak to jest dalej przetwarzane przez skrypt PHP.