Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Główny plik systemu
#1
Otwieramy znacznik PHP oraz rozpoczynamy sesję session_start() oraz rejestrujemy w niej odpowiednie zmienne , potrzebne do rozpoznania użytkownika .

Kod PHP:
<?php 

Kod PHP:
session_start(); 

Kod PHP:
session_register('user_id''user_email''user_firm''user_lang'); 


Kolejnym krokiem jest włączenie danych do konfiguracji połączenia z bazą danych oraz ogólnych danych konfiguracyjnych serwisu .

Kod PHP:
include('./config/config_database.php');
include(
'./config/config_framework.php'); 


Ponieważ nasz serwis będzie posiadał możliwość wyboru spośród kilku języków (w naszym przykładzie będą to język polski i język angielski) , należy sprawdzić czy w sesji użytkownika została ustawiona wartość , która pozwoli taki język zidentyfikować . Gdyby jej nie było , wówczas ustawiamy wartość tej zmiennej na podstawie danych konfiguracyjnych .

Kod PHP:
if($_SESSION['user_lang'] == ""){$_SESSION['user_lang'] = $config['default_lang'];} 


Zmiana języka będzie możliwa w trakcie przeglądania strony . Kiedy dowolna osoba kliknie link prowadzący do zmiany , wówczas sprawdzamy czy dana wartość jest równa jednej z ustalonych : pl lub en . W przypadku gdyby nie pasowała do żadnej zdefiniowanej przez nas ustawiamy język na domyślny .

Kod PHP:
if($_GET['fb_action_lang'] == 'change')
  {
  $LangSet '';
if(
$_GET['select_language_set'] == 'pl'){$LangSet 'pl';}
elseif(
$_GET['select_language_set'] == 'en'){$LangSet 'en';}
if(
$LangSet != ""){$_SESSION['user_lang'] = $LangSet;}



Teraz możemy pobrać już wersję językową naszej strony i włączyć odpowiedni plik .

Kod PHP:
$LangSet $_SESSION['user_lang'];

include(
'./lang/'.$LangSet.'/lang.php'); 


Włączamy najważniejszy element systemu . W nim są zawarte metody , do których będziemy się odwoływali w przypadku dziewiędziesięciu procent witryny .

Kod PHP:
include('./core/core.php'); 


Funkcja , która pozwoli na pobranie wartości zmiennej , którą podamy w pierwszym parametrze . Sprawdzi ona , czy zmienna została przesłana metodą _POST czy _GET , a następnie zwróci jej wartość .

Kod PHP:
function GetVarchar($VarcharName)
  {
  if($_POST[$VarcharName] == ""){$VarcharIs $_GET[$VarcharName];}
else{
$VarcharIs $_POST[$VarcharName];}
return 
$VarcharIs;



Pobieramy za pomocą wcześniej napisanej funkcji wartość głównej zmiennej $app , od której zależy , jaką część witryny będziemy oglądali .

Kod PHP:
$app GetVarchar('app'); 

Należy także sprawdzić , czy zmienna ta nie jest przypadkiem pusta . jeżeli nie posiada ona żadnej wartości , wówczas ustawiamy ją na wartość domyślną pochodzącą z pliku konfiguracyjnego .

Kod PHP:
if($app == ""){$app $config['default'];} 

Dołączanie plików które zawierają odpowiednią definicję klasy odpowiedzialną za generowanie widoku jednej spośród naszych stron .

Kod PHP:
if($app == 'home'){include('./application/home.php');}
elseif(
$app == 'logout'){include('./application/logout.php');}
elseif(
$app == 'account'){include('./application/account.php');}
elseif(
$app == 'password'){include('./application/password.php');}
elseif(
$app == 'changepassword'){include('./application/changepassword.php');}
elseif(
$app == 'aagain'){include('./application/aagain.php');}
elseif(
$app == 'generatepswd'){include('./application/generatepswd.php');}
elseif(
$app == 'picture'){include('./application/picture.php');}
elseif(
$app == 'showprofile'){include('./application/showprofile.php');}
elseif(
$app == 'friends'){include('./application/friends.php');}
elseif(
$app == 'about'){include('./application/about.php');}
elseif(
$app == 'language'){include('./application/language.php');}
elseif(
$app == 'entertainment'){include('./application/entertainment.php');}
elseif(
$app == 'maritalstatus'){include('./application/maritalstatus.php');}
elseif(
$app == 'philosophy'){include('./application/philosophy.php');}
elseif(
$app == 'sport'){include('./application/sport.php');}
elseif(
$app == 'contactinformation'){include('./application/contactinformation.php');}
elseif(
$app == 'school'){include('./application/school.php');}
elseif(
$app == 'work'){include('./application/work.php');}
elseif(
$app == 'interests'){include('./application/interests.php');}
elseif(
$app == 'pm_get'){include('./application/pm_get.php');}
elseif(
$app == 'pm_send'){include('./application/pm_send.php');}
elseif(
$app == 'pm_new'){include('./application/pm_new.php');}
elseif(
$app == 'yourpictures'){include('./application/yourpictures.php');}
elseif(
$app == 'privacy'){include('./application/privacy.php');}
elseif(
$app == 'searchfriends'){include('./application/searchfriends.php');}
elseif(
$app == 'emailinvite'){include('./application/emailinvite.php');}
elseif(
$app == 'likeit'){include('./application/likeit.php');}
elseif(
$app == 'searchfriends'){include('./application/searchfriends.php');}
elseif(
$app == 'inviteme'){include('./application/inviteme.php');}
elseif(
$app == 'showtable'){include('./application/showtable.php');}
elseif(
$app == 'showpicture'){include('./application/showpicture.php');}
elseif(
$app == 'inviteyou'){include('./application/inviteyou.php');}
elseif(
$app == 'strona'){include('./application/strona.php');}
elseif(
$app == 'warning'){include('./application/warning.php');}
elseif(
$app == 'change_pswd'){include('./application/change_pswd.php');}
elseif(
$app == 'games'){include('./application/games.php');}
elseif(
$app == 'playgame'){include('./application/playgame.php');}
elseif(
$app == 'developergames'){include('./application/developergames.php');} 

Na samym końcu należy dodać instrukcję else , w której treści dodamy informację o błędzie . Informacja ta powinna być przeznaczona tylko dla nas . W przypadku gdy pojawi się innemu użytkownikowi , oznacza to , iż istnieje błąd w aplikacji .

Kod PHP:
else{include('./application/error404.php');} 


Tworzymy obiekt i przypisujemy do niego odpowiednią klasę oraz uruchamiamy metodę AppConfig , która jest odpowiedzialna za konfigurację całego systemu .

Kod PHP:
$Application = new AppClass;
$Application->AppConfig(); 


Kiedy obiekt jest już gotowy , za jego pomocą możemy dostać się do sesji i ustawić w niej odpowiednią wartość .

Kod PHP:
$Application->AppSessionSetValue('user_lang',$LangSet); 

Instrukcją if musimy sprawdzić , czy użytkownik został zalogowany , aby wyświetlić odpowiedni komunikat .

Kod PHP:
if($_POST['fb_action_login'] == 'login')
  


W przypadku gdy użytkownik nie jest zalogowany oraz w polach pozostawił puste wartości , wyświetlamy odpowiedni komunikat informujący o potrzebie wypełnienia pustych pól .

Kod PHP:
  if($_POST['login_user_email'] == "" OR $_POST['login_user_pswd'] == "")
  {
  $LoginAppNullFields $Lang['null_fields']; 

Po instrukcji else możemy być pewni , że użytkownik wypełnił wszystkie pola potrzebne do zalogowania się na swoje konto . Tworzymy zapytanie do wybrania podstawowych danych klienta . W zapytaniu należy zwrócić uwagę , czy konto jest aktywne oraz czy nie zostało ono zbanowane .

Kod PHP:
}
else
  {
  $SqlConfig 'SELECT user_id,user_email,user_is_firm,user_lang FROM '.$Application->DBPrefix.'user
  WHERE
user_email = "'
.$Application->AppDBSecure($_POST['login_user_email']).'"
AND
user_pswd = "'
.$Application->AppDBSecure(md5($_POST['login_user_pswd'])).'"
AND
user_active = "y"
AND
user_ban != "y"
'
;
if(!
$Application->AppDBQuery($SqlConfig))
  {
$Application->AppBody .= $Application->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
$Result $Application->AppDBResult();
$Rows $Application->AppDBHowMany(); 


Teraz należy sprawdzić , czy konto , którego dane zostały wprowadzone istnieje w systemie .

Kod PHP:
  if($Rows == 1)
    

Gdy dane zgadzają się z wprowadzonymi do bazy danych , ładujemyinformacj do sesji .

Kod PHP:
    $Application->AppSessionSetValue('user_id',$Result[0]['user_id']);
    $Application->AppSessionSetValue('user_email',$Application->AppDBUnsecure($Result[0]['user_email']));
    $Application->AppSessionSetValue('user_firm',$Application->AppDBUnsecure($Result[0]['user_is_firm']));
      if($Result[0]['user_lang'] == ""){$Result[0]['user_lang'] = 'en';}
$Application->AppSessionSetValue('user_lang',$Application->AppDBUnsecure($Result[0]['user_lang'])); 

Włączamy odpowiedni język ustawiony przez użytkownika .

Kod PHP:
include('./lang/'.$_SESSION['user_lang'].'/lang.php'); 

Gdyby użytkownik podał złe dane , które nie pasują do żadnego rekordu , w bazie danych wyświetlamy o tym fakcie komunikat .

Kod PHP:
}
else
  {
  $LoginAppBadData $Lang['user_bad_data'];
}
}


Uruchamiamy metodę z klasy , które są zbudowane w sposób jednolity i zawsze zawierają ową metodę .

Kod PHP:
$Application->AppStart(); 

Generujemy wygląd strony z przygotowanych wcześniej tekstów oraz grafik .

Kod PHP:
$Application->AppRender(); 

Kończymy skrypt PHP , zamykając znacznik .

Kod PHP:
?>
Odpowiedz


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości