Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Autoryzacja
Forum PHP.pl > Forum > PHP
MStaniszczak
Witam

Niestety z powodu ograniczenia wielkościtekstu dozwolonego na formum nie udało się tu poprawnie umieścicć mojej klasy do autoryzacji. Jeśli jest taka możłiwość postaram się aby została ona umieszczona na stronie.

Pozdrawiam
Marcin Staniszczak
Vertical
...Podaj linka
MStaniszczak
http://staniszczak.pl/autoryzacja/autoryzacja.zip

Na stronę nie ma co patrzeć - zmieniam właśnie providera bo ten niestety nie dotrzymał (przez rok) obietnicy i nie oferuje nadal PHP5. Po obronie zajmę się swoją stroną.

Zachęcam do testowania, proponowania zmian i rozszerzeń (sam mam pomysły ale to po obronie) i ogólnie komentowania.

Pozdrawiam
Marcin Staniszczak
Vengeance
Widze, że stosujesz php5 więc ciut "ostrzej" będę oceniał ;]

  1. <?php
  2.  
  3. function SQL_Auth_GetConfiguration($table) {
  4. global $dbConnection;
  5.  
  6. return $dbConnection->Execute('SELECT * FROM '.$table);
  7. }
  8.  
  9. ?>

Czemu tu stosujesz global questionmark.gifquestionmark.gif To takie nieladne sad.gif
No i czemu nie opakujesz tego w jakieś klasy ?

  1. <?php
  2.  
  3. if(stristr('class.authorization.inc.php', $_SERVER['PHP_SELF'])!==false) {
  4. header('Location: ../../index.php');
  5. die();
  6. }
  7.  
  8. ?>

Czy nie powinno byc jakiegos erroru czy cos zamiast przekierowania ? (co gdy user zmieni katalog w ktorym klasa jest umieszczona).


Skoro już php5, to może warto wykorzystać wyjątki zamiast die() ?

  1. <?php
  2.  
  3. public function getSurname() {
  4. if($this->isLogin)
  5. return $this->uSurname;
  6. else
  7. return false;
  8. }
  9.  
  10. ?>

Czy klasa autoryzacji nie powinna operować tylko na loginie i haśle? Ktos może niechcieć miec kolumny Nazwisko w swej aplikacji. Choć to dość indywidualna sprawa ;]

Przydałby się także jakiś "example" ;]
MStaniszczak
Cytat
Widze, że stosujesz php5 więc ciut "ostrzej" będę oceniał ;]


OK. Tylko drobna uwaga - całość była pisana jeszcze za czasów bety php 5;-) Dziś zrobił bym to nieco inaczej. Ponadto dostosowana była do pewnego projektu;-) Teraz uznałem że się podzielę tym kodem ze światem;-)

Cytat
Czemu tu stosujesz global questionmark.gifquestionmark.gif To takie nieladne sad.gif
No i czemu nie opakujesz tego w jakieś klasy ?


Nie opakowuje w klasę dla wygody -założenia projektu o którym pisałem były takie że każdy moduł miał osobny plik z funkcjami zawierającymi SQL-a. Nie było więc sensu pchać tego w klasy (może mnie przekonasz że się mylę). Wszystko miało być zrobione tak żeby wszystkie zapytania SQL leżały w jednym katalogu w odpowiednich plikach, tak żeby łatwo można było znaleźć to co trzeba poprawić przy ew. zmianach.

Cytat
Czy nie powinno być jakiegos erroru czy cos zamiast przekierowania ? (co gdy user zmieni katalog w ktorym klasa jest umieszczona).


Nie. Uważam że error w tym miejscu to niepotrzebne nakierowywanie usera/"hakjera-a" na to że jest blisko;-) W ten sposób nie wie czy trafił na jakąś bibliotekę czy może tak działa 404 na tej stronie;-) No ew., można by było wysłać nagłówek do 404 (lub od razu wyświetlić błąd 404) - że też na to wcześniej nie wpadłem;-)
A co do
  1. <?php
  2.  header('Location: ../../index.php');
  3. ?>

To się zgadzam - wydziabałem to z projektu i to moje niedopatrzenie... Przepraszam. Jak będę miał sek. poprawie.

Cytat
Skoro już php5, to może warto wykorzystać wyjątki zamiast die() ?


Jak wyżej - celowo nie wywalam błędu, więc die() dla zakończenia wydaje mi się ok.

Cytat
Czy klasa autoryzacji nie powinna operować tylko na loginie i haśle? Ktoś może niech cieć mieć kolumny Nazwisko w swej aplikacji. Choć to dość indywidualna sprawa ;]


To zrobione dla własnej wygody;-) Zresztą zgadza się że tabela musi być taka jaką ustaliłem, ale nie trzeba przecież uzupełniać tych danych;-) Ogólnie klasa operuje na kilku tabelach;-)

A co do przykładów - zrobi się - ale dajcie mi czas. Mam trochę zawalaną głowę ostatnio. Jeszcze z miesiąc tak będzie. Za miesiąc przysiądę i poprawie. Obiecuje - chyba że nie będzie zainteresowania;-)

Pozdrawiam
Marcin Staniszczak
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.