Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][sql]
Forum PHP.pl > Forum > Przedszkole
kozioł
Witam ,

jako że nie mogę na nowym serwerze skorzystać ze swoich sesji , za to sprawdziłem przez polecenie

phpinfo , że w kązdym skrypcie ma informację o loginie uzytkownika kótry aktualnie jest zalogowany do komputera

i pomyślałem że uwierzytelnianie zrobię na tej podstawie , czyli do tabeli sql dodam loginy pracowników którzy logują się do domeny , i po tym będą mieli dostep do strony.

ale nie wiem jak mam to wykorzystać , to:

_SERVER["AUTH_USER"] i tu zawsze jest info o loginie pracownika

do tej pory miałem tak:
  1. <?php
  2. $login=$_SESSION['user_logged'];
  3. ?>


a jak to odnieść do tego SERVER["AUTH_USER"] ?


ok ,

już wiem jak pobrać tę zmienną ,

ale nie wiem jak zrobić zabezpieczenie przy pomocy if

robię tak:

  1. <?php
  2. $login=$_SERVER['AUTH_USER'];
  3. $db=mssql_connect('*********','user','pass')
  4.  or die ("Nie mozna polaczyc sie z baza, spróbuj ponownie");
  5.  
  6. mssql_select_db("bazy",$db) or die ("nie mogę połączyć z bazą");
  7.  
  8.  
  9. $query = "SELECT login FROM login WHERE login = '$login' ";
  10.  
  11.  
  12. $result = mssql_query($query) 
  13. or die(mssql_error());
  14.  
  15. if (mssql_num_rows($result) == 1) {
  16.  
  17. } else {
  18.  
  19. echo "Nie masz uprawnień do tej strony dokunuję przekierowania... " .
  20. "Cierpliwości!<br>";
  21. echo "(Jeżeli przeglądarka nie obsługuje przekierowań, " .
  22. "<a href=\"start.php?redirect=$redirect\">kliknij tutaj</a>)";
  23.  
  24. die();
  25. }
  26. ?>


i mam zawsze informację że nie mam uprawnień
co robię źle?

dziękuje
phpion
Możliwe, że masz w bazie więcej użytkowników o podanym loginie i wtedy Twój warunek:
  1. <?php
  2. if (mssql_num_rows($result) == 1)
  3. ?>

nie jest spełniony. Możesz albo zmienić == na >= albo, co wydaje się lepszym wyjściem pod względem optymalizacyjnym, zmienić zapytanie (które jest arcydziełem biggrin.gif login login login, "location location location" biggrin.gif hehehe) na:
  1. <?php
  2. $query = "SELECT login FROM login WHERE login = '$login' LIMIT 1";
  3. ?>

Nie wiem jednak jak to jest w SQL Server z LIMITem...
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.