![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 96 Pomógł: 0 Dołączył: 10.03.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam takie pytanie jak podczas logowania do bazy danych wyciągać hasła i loginy z dwóch tabel. Chodzi mi o coś takiego że mam dwie tabele studenci i wykładowcy i w każdej z nich znajdują sie loginy i hasła. Jak należy napisać zapytanie żeby to dobrze funkcjonowało? Skrypt logowania wygląda tak: [php:1:9d98bc23a5]<?php # Inicjujemy funkcje z ktorej bedziemy pózniej korzystac:) session_start(); # inicjowanie sesji (musimy tutaj, bo inaczej wywala błędy:( session_name(logowanie.php); # sesja otrzyma nazwę Twojej strony:) function logowanie() { echo("<form method="POST">n <h1> Zaloguj sie! </h1><br>n User: <input type="text" name="login"><br>n Pass: <input type="password" name="haslo"><br>n <input type="submit" name="submit" value="Zaloguj"><br>n <br> </form>n"); } # i po funkcji (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) # w tym pliku są zmienne potrzebne do łaczenia się z baza danych include("config.cfg"); if(!isset($submit)) # jeżeli nie zaznaczono submit, odpal logowanie { logowanie(); } else # w innym przypadku.... { $db=mysql_connect("$sql_host") or die("Nie można się połączyć z serwerem"); # łaczenie się z bazą danych mysql_select_db("$sql_base", $db) or die("Problem z łączeniem się z bazą danych (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) "); # jeżeli występują problemy to przerywa skrypt $sql="SELECT * FROM Studenci WHERE Login = '$login'"; # zapytanie do mysql o wyswietlenie komórki USER_NAME w której figuruje zmienna $login $result=mysql_query($sql); while($row = mysql_fetch_array($result)) { $Haslo=$row["Haslo"]; # tutaj definiujemy komorki (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) $Login=$row["Login"]; # $zmienna_używana_w_skrypcie=$komórka["nazwa_komórki_ze_sql"]; $ban=$row["ban"]; if (($haslo != $Haslo) || ($login != $Login)) # jeżeli hasło / login się nie zgadzają { echo("Zly login/pass"); # pokazuje "Zly login/pass" oraz logowanie (z wczesniej zadeklarowanej funkcji:) logowanie(); } else { # w innym przypadku (tj. login i pass są prawdziwe) session_register("login"); # rejestrowanie w sesji "loginu", "ban" (czy gostek ma bana czy nie (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) " include("index.php"); exit(); # koniec (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) } } } ?>[/php:1:9d98bc23a5] I jeszcze jedno jak ustawić prawa dostępu do podstron dla osób zalogowanych? Jeżeli macie jakieś propozycje to podeślijcie. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 560 Pomógł: 0 Dołączył: 15.07.2003 Skąd: Kwidzyn Ostrzeżenie: (0%) ![]() ![]() |
mozesz zrobic dodatkowe pole np status domyslnie dla studenta bedzie one wynosic 0 dla wykladowcy 1, przy kogowaniu pobierasz je i wrzucasz do sesji przy wyswietlaniu sprawdzasz status i odpowiednio wyswietlasz
zaleta tego jest to ze niekturym studentom bedzi mozna dac mozliwosc przegladania tresci ktora dla innych jest niedostepna (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) oczywisie tylko wtedy gdy w jego polu status pojawi sie 1 (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) podobie jest z wykladowcami ktorym mona dac 0 (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 18:28 |