Statystyki |
» Użytkownicy: 1
» Najnowszy użytkownik: Admin
» Wątków na forum: 67
» Postów na forum: 67
Pełne statystyki
|
Użytkownicy online |
Aktualnie jest 1 użytkownik online. » 0 Użytkownik(ów) | 1 Gość(i)
|
Ostatnie wątki |
Plik z indeksem strony
Forum: Plik z indeksem strony
Ostatni post: Admin
05-16-2025, 10:52 PM
» Odpowiedzi: 0
» Wyświetleń: 80
|
Plik z konfiguracją syste...
Forum: Plik z konfiguracją systemu
Ostatni post: Admin
05-16-2025, 10:06 PM
» Odpowiedzi: 0
» Wyświetleń: 60
|
Silnik systemu
Forum: Silnik systemu
Ostatni post: Admin
05-16-2025, 06:50 PM
» Odpowiedzi: 0
» Wyświetleń: 63
|
Interfejs połączenia z ba...
Forum: Interfejs połączenia z bazą danych MySQL
Ostatni post: Admin
05-16-2025, 03:23 PM
» Odpowiedzi: 0
» Wyświetleń: 53
|
Tabela z artykułami
Forum: Tabela z artykułami
Ostatni post: Admin
05-16-2025, 03:00 PM
» Odpowiedzi: 0
» Wyświetleń: 54
|
Tabela z danymi kontaktow...
Forum: Tabela z danymi kontaktowymi
Ostatni post: Admin
05-16-2025, 02:52 PM
» Odpowiedzi: 0
» Wyświetleń: 54
|
Tabela modułu pobierania ...
Forum: Tabela modułu pobierania plików
Ostatni post: Admin
05-16-2025, 02:35 PM
» Odpowiedzi: 0
» Wyświetleń: 53
|
Tabela zawierająca koment...
Forum: Tabela zawierająca komentarze
Ostatni post: Admin
05-16-2025, 02:20 PM
» Odpowiedzi: 0
» Wyświetleń: 52
|
Tabela z kategoriami blog...
Forum: Tabela z kategoriami bloga
Ostatni post: Admin
05-16-2025, 02:05 PM
» Odpowiedzi: 0
» Wyświetleń: 59
|
Tabela ze wpisami do blog...
Forum: Tabela ze wpisami do bloga
Ostatni post: Admin
05-16-2025, 01:52 PM
» Odpowiedzi: 0
» Wyświetleń: 53
|
|
|
Użytkownicy |
Napisane przez: Admin - 05-12-2025, 03:19 AM - Forum: Użytkownicy
- Brak odpowiedzi
|
 |
Tworzymy klasę rozszerzającą dla klasy głównej.
Kod PHP: <?php
class AppClass extends Core
{
Metoda , która zostanie uruchomiona jako pierwsza po zainicjalizowaniu obiektu.
Kod PHP: <?php
public function AppStart()
{
global $Lang;
Sprawdzamy czy użytkownik jest zalogowany na konto administratora.
Kod PHP: <?php
if($this->AppSessionGetValue('admin_id') != "")
{
Tworzymy nagłówek strony .
Kod PHP: <?php
$this->AppBody .= '<h1>'.$Lang['ap_a1_users_header'].'</h1>';
$this->AppBody .= '<div class="heading_row"></div>';
W pasku tytułu wpisujemy informację , która będzie określała nasze obecne położenie .
Kod PHP: <?php
$this->AppTitle = $Lang['ap_a1_users_header'];
if($_GET['delete'] == 'yes')
{
Usunięcie użytkownika spowoduje skasowanie wszystkich jego danych . Pierwszym elementem są wszystkie jego dane z tabeli głównej .
Kod PHP: <?php
$SqlConfig = 'DELETE FROM '.$this->DBPrefix.'user WHERE user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
Następnie definiujemy w tablicy zapytania przeznaczone do usunięcia ich danych z innych tabel w systemie , takich jak : albumy , obrazy , przyjaciele , lubię to , inne miejsca , prywatne wiadomości , publikacje oraz komentarze .
Kod PHP: <?php
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'album WHERE album_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'album_pictures WHERE pic_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'friends WHERE friend_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'friends WHERE friend_friend_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'likeit WHERE likeit_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'likeit WHERE likeit_friend_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'otherplaces WHERE place_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'pm_received WHERE pm_to_user = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'pm_send WHERE pm_from_user = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'publication WHERE publication_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'comment WHERE comm_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
Tworzymy pętle , w której wykonujemy każde z zapytań zdefiniowanych w tablicy .
Kod PHP: <?php
for($f=0;$f<count($SqlConfigTable);$f++)
{
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
}
Informujemy użytkownika , że dana akcja zakończyła się sukcesem .
Kod PHP: <?php
$this->AppBody .= $this->AppPrintSuccess($Lang['ap_a2_user_was_delete']);
}
Liczymy użytkowników , co pozwoli nam na podział ich na strony w przypadku większej ilości .
Kod PHP: <?php
$SqlConfig = 'SELECT count(user_id) FROM '.$this->DBPrefix.'user WHERE user_is_firm = ""';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
$Result = $this->AppDBResult();
$Rows = $this->AppDBHowMany();
Podział z uwzględnieniem 150 użytkowników na jednej stronie .
Kod PHP: <?php
$HowManyPagesTemp = $Result[0]['count(user_id)'] / 150;
$HowManyPagesTemp = explode('.',$HowManyPagesTemp);
$HowManyPages = $HowManyPagesTemp[0];
if($HowManyPagesTemp[1] > 0)
{
$HowManyPages++;
}
Pobieramy z adresu URL numer obecnej strony , a następnie tworzymy zmienną , która będzie użyta w zapytaniach do bazy danych jako limit danych do pobrania .
Kod PHP: <?php
$PageSelect = $_GET['page'];
if($_GET['page'] == "")
{
$StartFrom = 0;
}
else
{
if(empty($_GET['page']) OR $_GET['page'] == 1)
{
$StartFrom = 0;
}
else
{
$_GET['page'] = $_GET['page'] - 1;
$StartFrom = 150 * $_GET['page'];
}
}
if($PageSelect == "" OR $PageSelect == 1)
{
$CurrentPage = 1;
}
else
{
$CurrentPage = $PageSelect;
}
Tworzymy miejsce zawierające łącza , dzięki którym będziemy mogli przechodzić na dowolną stronę zawierającą dane użytkownika .
Kod PHP: <?php
if($HowManyPages > 1)
{
$this->AppBody .= '<div style="padding-left: 5px; padding-right: 5px; padding-top: 5px; padding-bottom: 5px; text-align: right;">';
$this->AppBody .= $Lang['l2_a3_page'];
for($i=1;$i<($HowManyPages+1);$i++)
{
if($CurrentPage == $i)
{
$this->AppBody .= $i;
}
else
{
$this->AppBody .= '<a href="'.$this->AppUrl.'admin.php?app=users&page='.$i.'">'.$i.'</a>';
}
if($i<$HowManyPages)
{
$this->AppBody .= ' , ';
}
}
$this->AppBody .= '</div';
}
Wybieramy podstawowe dane na temat wszystkich użytkowników naszego portalu z uwzględnieniem liczby rekordów .
Kod PHP: <?php
$SqlConfig = 'SELECT user_id,user_lang,user_firstname,user_lastname,user_gender,user_birth_day,user_birth_month,user_birth_year,user_email,user_active,user_reg FROM '.$this->DBPrefix.'user WHERE user_is_firm = "" LIMIT '.$this->AppDBSecure($StartFrom).',150';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
$Result = $this->AppDBResult();
$Rows = $this->AppDBHowMany();
Tworzymy tabelę , w której zamieścimy dane oraz odpowiednie akcje .
Kod PHP: <?php
$this->AppBody .= '<table cellpadding="0" cellspacing="0" border="0" width="100%">';
$this->AppBody .= '<tr>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_id'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_lang'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_firstname2'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_gender'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_birth_day2'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_email'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_user_active'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_reg'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_edit_user'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a1_delete'].'</td>';
$this->AppBody .= '</tr>';
for($f=0;$f<$Rows;$f++)
{
Każdy rząd będzie miał inny kolor , tak aby można było łatwo odróżnić dane poszczególnych użytkowników .
Kod PHP: <?php
if($RowColor == 1)
{
$TdClass = 'fb_row_1';
$RowColor = 0;
}
else
{
$TdClass = 'fb_row_2';
$RowColor = 1;
}
$this->AppBody .= '<tr>';
$this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['user_id']).'</td>';
$this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['user_lang']).'</td>';
$this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['user_firstname']).' '.$this->AppDBUnsecure($Result[$f]['user_lastname']).'</td>';
$this->AppBody .= '<td class="'.$TdClass.'">';
Rozróżniamy płeć danej osoby .
Kod PHP: <?php
if($this->AppDBUnsecure($Result[$f]['user_gender']) == 'm')
{
$this->AppBody .= $Lang['ap_a2_U_men'];
}
else
{
$this->AppBody .= $Lang['ap_a2_U_women'];
}
$this->AppBody .= '</td>';
$this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['user_birth_day']).'-'.$this->AppDBUnsecure($Result[$f]['user_birth_month']).'-'.$this->AppDBUnsecure($Result[$f]['user_birth_year']).'</td>';
$this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['user_email']).'</td>';
Sprawdzamy czy dane konto jest aktywne .
Kod PHP: <?php
if($this->AppDBUnsecure($Result[$f]['user_active']) == 'y')
{
$this->AppBody .= '<td class="'.$TdClass.'">'.$Lang['ap_a2_U_yes'].'</td>';
}
else
{
$this->AppBody .= '<td class="'.$TdClass.'" style="background-color: #600000; color: #ffffff;">'.$Lang['ap_a2_U_no'].'</td>';
}
$this->AppBody .= '<td class="'.$TdClass.'">'.date('d-m-Y H:i:s', $this->AppDBUnsecure($Result[$f]['user_reg'])).'</td>';
Defiuniujemy odpowiednie akcje dla każdej z osób .
Kod PHP: <?php
$this->AppBody .= '<td class="'.$TdClass.'"><a href="'.$this->AppUrl.'index.php?app=showprofile&option='.$Result[$f]['user_id'].'">'.$Lang['ap_a3_edit_user'].'</a></td>';
$this->AppBody .= '<td class="'.$TdClass.'"><a href="JavaScript:DeleteInfo(\''.$this->AppUrl.'admin.php?app=users&delete=yes&user_id='.$Result[$f]['user_id'].'\',\''.$Lang['l2_a1_accept_deleting'].'\');">'.$Lang['ap_a3_delete_user'].'</a></td>';
$this->AppBody .= '</tr>';
}
$this->AppBody .= '</table>';
}
else
{
Jeżeli użytkownik nie posiada odpowiednich uprawnień , przekierowujemy go do strony głównej panelu , aby się zalogował .
Kod PHP: <?php
header('location: '.$this->AppUrl.'admin.php');
}
}
}
?>
|
|
|
Strony |
Napisane przez: Admin - 05-12-2025, 03:06 AM - Forum: Strony
- Brak odpowiedzi
|
 |
Tworzymy klasę rozszerzającą dla klasy głównej.
Kod PHP: <?php
class AppClass extends Core
{
Metoda , która zostanie uruchomiona jako pierwsza po zainicjalizowaniu obiektu.
Kod PHP: <?php
public function AppStart()
{
global $Lang;
Sprawdzamy czy użytkownik jest zalogowany na konto administratora.
Kod PHP: <?php
if($this->AppSessionGetValue('admin_id') != "")
{
Tworzymy nagłówek strony .
Kod PHP: <?php
$this->AppBody .= '<h1>'.$Lang['ap_a1_page_header'].'</h1>';
$this->AppBody .= '<div class="heading_row"></div>';
W pasku tytułu wpisujemy informację , która będzie określała nasze obecne położenie .
Kod PHP: <?php
$this->AppTitle = $Lang['ap_a1_page_header'];
if($_GET['delete'] == 'yes')
{
Usuwamy dane firmy z głównej tabeli .
Kod PHP: <?php
$SqlConfig = 'DELETE FROM '.$this->DBPrefix.'user WHERE user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
Teraz zadeklarujemy tablicę z zapytaniami przeznaczonymi do usuwania danych firm z tabeli , w których znajdują się ich albumy , przyjaciele , lubię to ,inne miejsca , prywatne wiadomości , informacje na temat publikacji oraz komentarze .
Kod PHP: <?php
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'album WHERE album_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'album_pictures WHERE pic_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'friends WHERE friend_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'friends WHERE friend_friend_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'likeit WHERE likeit_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'likeit WHERE likeit_friend_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'otherplaces WHERE place_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'pm_received WHERE pm_to_user = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'pm_send WHERE pm_from_user = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'publication WHERE publication_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
$SqlConfigTable[] = 'DELETE FROM '.$this->DBPrefix.'comment WHERE comm_user_id = "'.$this->AppDBSecure($_GET['user_id']).'"';
Następnie wykonujemy wszystkie zapytania , pobierając je z tablicy .
Kod PHP: <?php
for($f=0;$f<count($SqlConfigTable);$f++)
{
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
}
Wyświetlamy informację dla użytkownika o poprawnie zakończonej akcji .
Kod PHP: <?php
$this->AppBody .= $this->AppPrintSuccess($Lang['ap_a2_user_was_delete']);
}
Wybieramy z tabeli liczbę firm , aby móc podzielić je odpowiednio na strony .
Kod PHP: <?php
$SqlConfig = 'SELECT count(user_id) FROM '.$this->DBPrefix.'user WHERE user_is_firm = "y"';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
$Result = $this->AppDBResult();
$Rows = $this->AppDBHowMany();
Podział na strony z uwzględnieniem 150 firm prezentewanych jednocześnie .
Kod PHP: <?php
$HowManyPagesTemp = $Result[0]['count(user_id)'] / 150;
$HowManyPagesTemp = explode('.',$HowManyPagesTemp);
$HowManyPages = $HowManyPagesTemp[0];
if($HowManyPagesTemp[1] > 0)
{
$HowManyPages++;
}
Pobieranie danych o obecnej stronie z adresu URL oraz tworzenie specjalnej zmiennej informującej , od którego rekordu rozpocząć wybieranie .
Kod PHP: <?php
$PageSelect = $_GET['page'];
if($_GET['page'] == "")
{
$StartFrom = 0;
}
else
{
if(empty($_GET['page']) OR $_GET['page'] == 1)
{
$StartFrom = 0;
}
else
{
$_GET['page'] = $_GET['page'] - 1;
$StartFrom = 150 * $_GET['page'];
}
}
if($PageSelect == "" OR $PageSelect == 1)
{
$CurrentPage = 1;
}
else
{
$CurrentPage = $PageSelect;
}
Tworzymy miejsce , w których będą łącza pozwalające na przechodzenie do dowolnie wybranej strony prezentującej dane .
Kod PHP: <?php
if($HowManyPages > 1)
{
$this->AppBody .= '<div style="padding-left: 5px; padding-right: 5px; padding-top: 5px; padding-bottom: 5px; text-align: right;">';
$this->AppBody .= $Lang['l2_a3_page'];
for($i=1;$i<($HowManyPages+1);$i++)
{
if($CurrentPage == $i)
{
$this->AppBody .= $i;
}
else
{
$this->AppBody .= '<a href="'.$this->AppUrl.'admin.php?app=pages&page='.$i.'">'.$i.'</a>';
}
if($i<$HowManyPages)
{
$this->AppBody .= ' , ';
}
}
$this->AppBody .= '</div';
}
Wybieranie firm z tabeli z uwzględnieniem numeru rekordu , od którego należy zacząć .
Kod PHP: <?php
$SqlConfig = 'SELECT user_id,user_lang,user_firstname,user_lastname,user_gender,user_birth_day,user_birth_month,user_birth_year,user_email,user_active,user_reg FROM '.$this->DBPrefix.'user WHERE user_is_firm = "y" LIMIT '.$this->AppDBSecure($StartFrom).',150';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
$Result = $this->AppDBResult();
$Rows = $this->AppDBHowMany();
Tworzenie tabeli z prezentacją danych oraz podstawowymi akcjami .
Kod PHP: <?php
$this->AppBody .= '<table cellpadding="0" cellspacing="0" border="0" width="100%">';
$this->AppBody .= '<tr>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_id'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_lang'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_P_page_name'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_email'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_user_active'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a2_U_user_reg'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_edit_user'].'</td>';
$this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_delete_user'].'</td>';
$this->AppBody .= '</tr>';
for($f=0;$f<$Rows;$f++)
{
Każdy rząd będzie miał inny kolor dzięki przypisaniu im odpowiednich klas z arkusza stylów CSS .
Kod PHP: <?php
if($RowColor == 1)
{
$TdClass = 'fb_row_1';
$RowColor = 0;
}
else
{
$TdClass = 'fb_row_2';
$RowColor = 1;
}
$this->AppBody .= '<tr>';
$this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['user_id']).'</td>';
$this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['user_lang']).'</td>';
$this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['user_email']).'</td>';
Wybieramy informację , czy dany użytkownik aktywował już swoje konto .
Kod PHP: <?php
if($this->AppDBUnsecure($Result[$f]['user_active']) == 'y')
{
$this->AppBody .= '<td class="'.$TdClass.'">'.$Lang['ap_a2_U_yes'].'</td>';
}
else
{
$this->AppBody .= '<td class="'.$TdClass.'" style="background-color: #600000; color: #ffffff;">'.$Lang['ap_a2_U_no'].'</td>';
}
$this->AppBody .= '<td class="'.$TdClass.'">'.date('d-m-Y H:i:s', $this->AppDBUnsecure($Result[$f]['user_reg'])).'</td>';
$this->AppBody .= '<td class="'.$TdClass.'"><a href="'.$this->AppUrl.'index.php?app=showprofile&option='.$Result[$f]['user_id'].'">'.$Lang['ap_a3_edit_user'].'</a></td>';
$this->AppBody .= '<td class="'.$TdClass.'"><a href="JavaScript:DeleteInfo(\''.$this->AppUrl.'admin.php?app=pages&delete=yes&user_id='.$Result[$f]['user_id'].'\',\''.$Lang['l2_a1_accept_deleting'].'\');">'.$Lang['ap_a3_delete_user'].'</a></td>';
$this->AppBody .= '</tr>';
}
$this->AppBody .= '</table>';
}
else
{
Jeżeli użytkownik nie posiada odpowiednich uprawnień , przekierowujemy go do strony głównej panelu , aby się zalogował .
Kod PHP: <?php
header('location: '.$this->AppUrl.'admin.php');
}
}
}
?>
|
|
|
Zmiana hasła |
Napisane przez: Admin - 05-12-2025, 02:52 AM - Forum: Zmiana hasła
- Brak odpowiedzi
|
 |
Tworzymy klasę rozszerzającą dla klasy głównej.
Kod PHP: <?php
class AppClass extends Core
{
Metoda , która zostanie uruchomiona jako pierwsza po zainicjalizowaniu obiektu.
Kod PHP: <?php
public function AppStart()
{
global $Lang;
Sprawdzamy czy użytkownik jest zalogowany na konto administratora.
Kod PHP: <?php
if($this->AppSessionGetValue('admin_id') != "")
{
Tworzymy nagłówek strony .
Kod PHP: <?php
$this->AppBody .= '<h1>'.$Lang['ap_a4_change_pswd_header'].'</h1>';
$this->AppBody .= '<div class="heading_row"></div>';
W pasku tytułu wpisujemy informację , która będzie określała nasze obecne położenie .
Kod PHP: <?php
$this->AppTitle = $Lang['ap_a4_change_pswd_header'];
if($_POST['change'] == 'yes')
{
Kiedy formularz do zmiany hasła został wysłany , sprawdzamy , czy wszystkie pola zostały wypełnione . Jeżeli nie , wówczas musimy wyświetlić odpowiedni komunikat .
Kod PHP: <?php
if($_POST['admin_pswd'] == "" OR $_POST['admin_pswd_old'] == "" OR $_POST['admin_pswd_old_rec'] == "")
{
$this->AppBody .= $this->AppPrintWarning($Lang['l1_a18_null_fields']);
}
else
{
Teraz należy sprawdzić , czy nowe hasło pasuje do jego potwierdzenia .
Kod PHP: <?php
if($_POST['admin_pswd_old'] == $_POST['admin_pswd_old_rec'])
{
Z tabeli , gdzie zapisane są dane administratora , wybieramy dane użytkownika , który obecnie jest zalogowany do panelu .
Kod PHP: <?php
$SqlConfig = 'SELECT * FROM '.$this->DBPrefix.'admin WHERE admin_id = "'.$this->AppDBSecure($this->AppSessionGetValue('admin_id')).'"';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
$Result = $this->AppDBResult();
Obecne hasło trzeba zakodować przy użyciu algorytmu MD5 i sprawdzić , czy pasuje ono do hasła zapisanego w bazie danych .
Kod PHP: <?php
if(md5($_POST['admin_pswd']) == $this->AppDBUnsecure($Result[0]['admin_pswd']))
{
Jeżeli wszystko się zgadza , możemy zaktualizować hasło użytkownika w bazie danych .
Kod PHP: <?php
$SqlConfig = 'UPDATE '.$this->DBPrefix.'admin SET admin_pswd = "'.$this->AppDBSecure(md5($_POST['admin_pswd_old'])).'" WHERE admin_id = "'.$this->AppDBSecure($this->AppSessionGetValue('admin_id')).'"';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
Wyświetlamy komunikat informujący o poprawnej operacji zmiany .
Kod PHP: <?php
$this->AppBody .= $this->AppPrintSuccess($Lang['ap_a5_new_pass_submited']);
}
else
{
Informacja dla użytkownika , że jego hasło nie zgadza się z tym podanym w bazie danych .
Kod PHP: <?php
$this->AppBody .= $this->AppPrintWarning($Lang['ap_a5_old_dont_match_db']);
}
}
else
{
Wyświetlamy informację , że nowe hasło nie pasuje do jego potwierdzenia .
Kod PHP: <?php
$this->AppBody .= $this->AppPrintWarning($Lang['ap_a5_new_pass_dont_pass']);
}
}
}
Drukujemy tabelę zawierającą formularz .
Kod PHP: <?php
$this->AppBody .= '<center>';
$this->AppBody .= '<form action="'.$this->AppUrl.'admin.php" method="post">';
$this->AppBody .= '<table cellpadding="0" cellspacing="0" border="0">';
$this->AppBody .= '<tr><td class="fb_row_2">'.$Lang['ap_a5_old'].'</td><td class="fb_row_2"><input type="password" name="admin_pswd" style="width: 450px;" /></td></tr>';
$this->AppBody .= '<tr><td class="fb_row_2">'.$Lang['ap_a5_new'].'</td><td class="fb_row_2"><input type="password" name="admin_pswd_old" style="width: 450px;" /></td></tr>';
$this->AppBody .= '<tr><td class="fb_row_2">'.$Lang['ap_a5_new_rec'].'</td><td class="fb_row_2"><input type="password" name="admin_pswd_old_rec" style="width: 450px;" /></td></tr>';
$this->AppBody .= '<tr><td class="fb_row_1"></td><td class="fb_row_1" style="text-align: right;"><input type="hidden" name="app" value="change_pswd" /><input type="hidden" name="change" value="yes" /><input type="submit" value="'.$Lang['ap_a5_change_button'].'" class="button_goto" /></td></tr>';
$this->AppBody .= '</table>';
$this->AppBody .= '</form>';
$this->AppBody .= '</center>';
}
else
{
Jeżeli użytkownik nie posiada odpowiednich uprawnień , przekierowujemy go do strony głównej panelu , aby się zalogował .
Kod PHP: <?php
header('location: '.$this->AppUrl.'admin.php');
}
}
}
?>
|
|
|
Error 404 |
Napisane przez: Admin - 05-12-2025, 02:44 AM - Forum: Error 404
- Brak odpowiedzi
|
 |
Tworzymy klasę rozszerzającą dla klasy głównej.
Kod PHP: <?php
class AppClass extends Core
{
Metoda , która zostanie uruchomiona jako pierwsza po zainicjalizowaniu obiektu.
Kod PHP: <?php
public function AppStart()
{
global $Lang;
Pasek tytułu będzie posiadał informację o błędzie 404 , czyli nieodnalezionej stronie.
Kod PHP: <?php
$this->AppTitle = $Lang['error404_title'];
Teraz jeszcze pozostał nam wydruk podobnej informacji w treści strony.
Kod PHP: <?php
$this->AppBody .= $Lang['error404_body'];
}
}
?>
|
|
|
Wylogowywanie |
Napisane przez: Admin - 05-12-2025, 02:35 AM - Forum: Wylogowywanie
- Brak odpowiedzi
|
 |
Tworzymy klasę główną , rozszerzającą możliwości silnika aplikacji
Kod PHP: <?php
class AppClass extends Core
{
Metoda , która zostanie uruchomiona jako pierwsza po zainicjalizowaniu obiektu.
Kod PHP: <?php
public function AppStart()
{
global $Lang;
Za pomocą obiektu niszczymy wartość zmiennych sesyjnych oraz kierujemy użytkownika na stronę główną panelu administratora .
Kod PHP: <?php
$this->AppSessionSetValue('admin_id','');
$this->AppSessionSetValue('admin_lang','');
header('Location: '.$this->AppUrl.'admin.php');
}
}
?>
|
|
|
Wysyłanie nowych wiadomości |
Napisane przez: Admin - 05-08-2025, 10:16 PM - Forum: Wysyłanie nowych wiadomości
- Brak odpowiedzi
|
 |
Rozpoczynamy sesję i rejestrujemy w niej zmienne.
Kod PHP: <?php
session_start();
session_register('user_id', 'user_email', 'user_firm', 'user_lang');
Dołączamy pliki konfiguracyjne .
Kod PHP: <?php
include('./config/config_database.php');
include('./config/config_framework.php');
Ustawiamy język użytkownika .
Kod PHP: <?php
if($_SESSION['user_lang'] == "")
{
$_SESSION['user_lang'] = $config['default_lang'];
}
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;
}
}
$LangSet = $_SESSION['user_lang'];
Włączamy odpowiedni język oraz silnik systemu .
Kod PHP: <?php
include('./lang/'.$LangSet.'/lang.php');
include('./core/core.php');
Funkcja do pobierania danych ze zmiennej niezależnie od tego , jaką metodą zostanie przesłana .
Kod PHP: <?php
function GetVarchar($VarcharName)
{
if($_POST[$VarcharName] == "")
{
$VarcharIs = $_GET[$VarcharName];
}
else
{
$VarcharIs = $_POST[$VarcharName];
}
return $VarcharIs;
}
Ustawiamy wartość głównej zmiennej .
Kod PHP: <?php
$app = GetVarchar('app');
Jeżeli wartość jest pusta , wówczas ustawiamy ją na domyślną z pliku konfiguracyjnego .
Kod PHP: <?php
if($app == "")
{
$app = $config['default'];
}
Tworzymy klasę , rozszerzającą możliwości klasy głównej .
Kod PHP: <?php
class AppClass extends Core
{
public function AppComment()
{
Sprawdzamy , czy użytkownik jest zalogowany .
Kod PHP: <?php
if($this->AppSessionGetValue('user_id') != "")
{
Testujemy zmienną , czy treść nie pozostała pusta .
Kod PHP: <?php
if($_POST['comm_text_'.$_POST['publication_second_id']] != "")
{
Umieszczamy treść komentarza w tabeli .
Kod PHP: <?php
$SqlConfig = 'INSERT INTO '.$this->DBPrefix.'comment
(
comm_const_id,
comm_user_id,
comm_comment,
comm_date,
comm_what
)
VALUES
(
"'.$this->AppDBSecure($_POST['publication_second_id']).'",
"'.$this->AppDBSecure($this->AppSessionGetValue('user_id')).'",
"'.$this->AppDBSecure($_POST['comm_text_'.$_POST['publication_second_id']]).'",
"'.$this->AppDBSecure(time()).'",
"t"
)
';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
}
}
}
public function AppOwnComment()
{
Sprawdzamy za pomocą zmiennej z sesji , czy użytkownik się zalogował .
Kod PHP: <?php
if($this->AppSessionGetValue('user_id') != "")
{
Zmienna z treścią nie powinna być pusta .
Kod PHP: <?php
if($_POST['comm_text_'.$_POST['publication_second_id']] != "")
{
Umieszczamy komentarz w tabeli .
Kod PHP: <?php
$SqlConfig = 'INSERT INTO '.$this->DBPrefix.'comment
(
comm_const_id,
comm_user_id,
comm_comment,
comm_date,
comm_what
)
VALUES
(
"'.$this->AppDBSecure($_POST['publication_second_id']).'",
"'.$this->AppDBSecure($this->AppSessionGetValue('user_id')).'",
"'.$this->AppDBSecure($_POST['comm_text_'.$_POST['publication_second_id']]).'",
"'.$this->AppDBSecure(time()).'",
"t"
)
';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
}
}
}
public function AppIComment()
{
Sprawdzamy , czy użytkownik jest zalogowany .
Kod PHP: <?php
if($this->AppSessionGetValue('user_id') != "")
{
Sprawdzamy treść komentarza , czy nie pozostała pusta .
Kod PHP: <?php
if($_POST['comm_text_'.$_POST['publication_second_id']] != "")
{
Umieszczamy komentarz w specjalnej tabeli .
Kod PHP: <?php
$SqlConfig = 'INSERT INTO '.$this->DBPrefix.'comment
(
comm_const_id,
comm_user_id,
comm_comment,
comm_date,
comm_what
)
VALUES
(
"'.$this->AppDBSecure($_POST['publication_second_id']).'",
"'.$this->AppDBSecure($this->AppSessionGetValue('user_id')).'",
"'.$this->AppDBSecure($_POST['comm_text_'.$_POST['publication_second_id']]).'",
"'.$this->AppDBSecure(time()).'",
"i"
)
';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
}
}
}
public function AppStatus()
{
Sprawdzamy , czy użytkownik jest zalogowany na własne konto za pomocą zmiennej z sesji .
Kod PHP: <?php
if($this->AppSessionGetValue('user_id') != "")
{
Musimy się dowiedzieć , czy status publikacji nie jest pusty .
Kod PHP: <?php
if($_POST['publication_status']] != "")
{
Umieszczamy wpis w tabeli przeznaczonej na publikacje .
Kod PHP: <?php
$SqlConfig = 'INSERT INTO '.$this->DBPrefix.'publication
(
publication_kind,
publication_status,
publication_time,
publication_user_id
)
VALUES
(
"1",
"'.$this->AppDBSecure($_POST['publication_status']).'",
"'.$this->AppDBSecure(time()).'",
"'.$this->AppDBSecure($this->AppSessionGetValue('user_id')).'",
"'.$this->AppDBSecure(time()).'",
)
';
if(!$this->AppDBQuery($SqlConfig))
{
$this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
}
}
}
}
}
Tworzymy obiekt i uruchamiamy metodę konfiguracji systemu .
Kod PHP: <?php
$Application = New AppClass;
$Application->AppConfig();
W zależności od wysłanej treści wykonujemy odpowiednią metodę .
Kod PHP: <?php
if($_POST['post_what'] == 'comment')
{
$Application->AppComment();
echo $Application->ShowPostTable();
}
elseif($_POST['post_what'] == 'i_comment')
{
$Application->AppIComment();
echo $Application->ShowCommentInserts($_POST['publication_second_id']);
}
elseif($_POST['post_what'] == 'comments_table')
{
$Application->AppOwnComment();
echo $Application->ShowPostOwnTable($_POST['option']);
}
elseif($_POST['post_what'] == 'status')
{
$Application->AppStatus();
echo $Application->ShowPostTable();
}
?>
|
|
|
Główny arkusz stylów |
Napisane przez: Admin - 05-08-2025, 09:56 PM - Forum: Główny arkusz stylów
- Brak odpowiedzi
|
 |
Ciało całej strony bez marginesów i wcięć oraz ustawienie czcionki .
Kod PHP: <?php
body {
background-color: #ffffff;
padding: 0px;
margin: 0px;
font-size: 12px;
font-family: 'Trebuchet MS';
color: #1d2a5b;
}
Wszystkie tabelki będą wyrównane do lewej strony .
Kod PHP: <?php
table {
text-align: left;
}
Każda komórka będzie posiadała tekst wyrównany do góry .
Kod PHP: <?php
td {
vertical-align: top;
}
Nagłówki stopnia pierwszego i drugiego .
Kod PHP: <?php
h1 {
font-size: 16px;
color: #1c2a47;
padding: 0px;
margin: 0px;
padding-top: 5px;
padding-left: 5px;
}
h2 {
font-size: 14px;
background-color: #2C3852;
color: #ffffff;
padding: 5px;
}
Formatowanie hiperłączy , które znajdują się w nagłówkach .
Kod PHP: <?php
h2 a {
font-size: 14px;
background-color: #2C3852;
color: #ffffff;
padding: 5px;
text-decoration: none;
}
h2 a:hover {
font-size: 14px;
background-color: #2C3852;
color: #ffffff;
padding: 5px;
text-decoration: none;
}
h2.special_header_ogloszenie {
font-size: 14px;
background-color: #ffffff;
color: #2C3852;
padding: 5px;
padding-bottom: 0px;
border-bottom: solid 1px #2C3852;
}
h2.special_header_ogloszenie a {
font-size: 14px;
background-color: #ffffff;
color: #2C3852;
padding: 5px;
padding-bottom: 0px;
}
Komórka tabelki będąca jej nagłówkiem .
Kod PHP: <?php
td.header {
background-color: #336699;
color: #ffffff;
padding: 5px;
font-size: 12px;
white-space: nowrap;
}
Cztery komórki z różnymi kolorami tła , aby lepiej wyróżnić poszczególne rekordy .
Kod PHP: <?php
td.cell_1 {
background-color: #C9D0D6;
padding: 5px;
font-size: 12px;
vertical-align: middle;
}
td.cell_2 {
background-color: #F7F8FA;
padding: 5px;
font-size: 12px;
vertical-align: middle;
}
td.td_row1 {
background-color: #C9D0D6;
padding: 5px;
font-size: 12px;
vertical-align: middle;
}
td.td_row2 {
background-color: #F7F8FA;
padding: 5px;
font-size: 12px;
vertical-align: middle;
}
Nagłówki zawarte w specjalnych komórkach .
Kod PHP: <?php
td.td_row1_head {
background-color: #efefef;
}
td.td_row1_head h3 {
padding: 2px;
margin: 0px;
}
td.td_row1_body {
border-bottom: solid 1px #EB5126;
padding-top: 2px;
padding-bottom: 2px;
}
Komórka z pogrubionym tekstem .
Kod PHP: <?php
td.bold_row {
font-weight: bold;
color: #EB5126;
}
Warstwy przedstawiające informacje otrzymane przez użytkownikaod systemu .
Kod PHP: <?php
div.success {
padding: 2px;
text-align: center;
background-color: #C8CFD5;
font-size: 12px;
color: #3b5998;
padding: 5px;
margin: 5px;
}
div.warning {
padding: 2px;
text-align: center;
border: solid 1px #EB5126;
background-color: #ffffff;
font-size: 12px;
color: #EB5126;
padding: 5px;
margin: 5px;
}
div.important {
padding: 2px;
text-align: center;
background-color: #C8CFD5;
font-size: 12px;
color: #3b5998;
padding: 5px;
margin: 5px;
}
div.city_box {
padding: 2px;
margin-left: 15px;
margin-right: 15px;
margin-bottom: 30px;
}
Domyślne formatowanie wszystkich hiperłączy na stronie .
Kod PHP: <?php
a {
font-size: 12px;
color: #3b5998;
text-decoration: none;
}
a:hover {
font-size: 12px;
color: #3b5998;
text-decoration: underline;
}
Linki znajdujące się w górnej części strony (menu) .
Kod PHP: <?php
a.up_menu {
font-size: 12px;
color: #92AABC;
text-decoration: none;
}
a.up_menu:hover {
font-size: 12px;
color: #3b5998;
text-decoration: underline;
}
Domyślne formatowanie dla obrazu .
Kod PHP: <?php
img {
border: 0px;
}
Informacje o logowaniu i jego rezultacie .
Kod PHP: <?php
div.list_pages {
border: solid 1px #EB5126;
padding-bottom: 2px;
padding-top: 2px;
margin-left: 20px;
margin-right: 20px;
}
span.promo_bar {
padding: 5px;
border: solid 1px #600000;
}
span.span_bad_login {
background-color: #ffffff;
color: #000000;
padding: 2px;
}
Formatowanie pól formularza .
Kod PHP: <?php
input {
border-width: 1px;
border-style: solid;
border-color: #1d2a5b;
padding: 2px;
}
input.file_upload {
border-width: 1px;
border-style: solid;
border-color: #1d2a5b;
padding: 2px;
}
Przycisk Zatwierdź .
Kod PHP: <?php
input.submit_button {
border-width: 1px;
border-style: solid;
border-top-color: #29447e;
border-bottom-color: #29447e;
border-left-color: #29447e;
border-right-color: #29447e;
padding-left: 5px;
padding-right: 5px;
background-color: #637bad;
font-weight: bold;
color: #ffffff;
font-size: 12px;
padding-top: 1px;
padding-bottom: 3px;
}
table.table_body input, textarea, select {
border-width: 1px;
border-style: solid;
border-color: #96a6c5;
padding: 2px;
}
Przycisk służący do rejestracji na naszej stronie .
Kod PHP: <?php
input.input_register {
border-width: 1px;
border-style: solid;
border-color: #96a6c5;
padding: 5px;
}
Domyślny przycisk służący do wykonywania akcji .
Kod PHP: <?php
input.input_button_submit {
border-width: 1px;
border-style: solid;
border-color: #3b6e22;
padding-left: 5px;
padding-right: 5px;
background-color: #74ad5a;
font-weight: bold;
color: #ffffff;
font-size: 12px;
}
Przycisk służący przechodzeniu do określonej części aplikacji .
Kod PHP: <?php
input.button_goto {
border-width: 1px;
border-style: solid;
border-color: #3b6e22;
padding-left: 5px;
padding-right: 5px;
background-color: #74ad5a;
font-weight: bold;
color: #ffffff;
font-size: 12px;
padding-top: 5px;
padding-bottom: 5px;
}
Zatwierdzanie wysyłania wiadomości do serwera .
Kod PHP: <?php
button.button_goto_send {
border-width: 1px;
border-style: solid;
border-color: #3b6e22;
padding-left: 5px;
padding-right: 5px;
background-color: #74ad5a;
font-weight: bold;
color: #ffffff;
font-size: 12px;
}
Nagłówek oraz komórki tabeli znajdujące się w menu .
Kod PHP: <?php
div.heading_row {
width: 100%;
height: 23px;
background-image: url('fb_images/row.png');
}
td.fb_header {
background-color: #3b5998;
padding: 5px;
color: #ffffff;
font-weight: bold;
}
td.fb_row_1 {
padding: 5px;
background-color: #ffffff;
}
td.fb_row_2 {
padding: 5px;
background-color: #eceef4;
}
td.fb_row_underline {
padding: 5px;
background-color: #ffffff;
border-bottom: solid 1px #eceef4;
}
Nagłówki będące w komórkach tabel .
Kod PHP: <?php
td.fb_header_info {
background-color: #3b5998;
padding: 5px;
color: #ffffff;
font-weight: bold;
}
td.fb_header_info h2 {
color: #ffffff;
padding: 0px;
margin: 0px;
background-color: #3b5998;
}
Informacje formatujące pozycję menu bocznego .
Kod PHP: <?php
div.menu_option {
background-color: #eceef4;
padding: 5px;
margin-top: 2px;
margin-bottom: 2px;
border-left: solid 3px #B5B5B5;
}
div.menu_option_selected {
background-color: #2F4F4F;
padding: 5px;
margin-top: 2px;
margin-bottom: 2px;
border-left: solid 3px #919191;
}
div.menu_option_selected a {
color: #ffffff;
}
div.menu_option_br {
height: 10px;
}
Komórki tabel do formatowania opcji publikacji treści .
Kod PHP: <?php
td.publish_item {
background-color: #3B5998;
color: #ffffff;
text-align: center;
}
a.publish_item_link {
background-color: #ffffff;
padding-left: 15px;
padding-right: 15px;
}
a.publish_item_link_select {
background-color: #3B5998;
color: #ffffff;
padding-left: 15px;
padding-right: 15px;
padding-top: 2px;
padding-bottom: 2px;
}
Informacje o publikacji informacji na stronie głównej .
Kod PHP: <?php
span.status_is_published {
padding: 2px;
margin: 3px;
border: solid 1px #FBC834;
}
span.published_date {
color: #404040;
}
Sformatowanie komentarzy wystawianych przez użytkowników .
Kod PHP: <?php
td.comm_title {
background-color: #B5B5B5;
color: #335599;
padding: 2px;
font-size: 10px;
}
td.comm_title a {
color: #335599;
font-size: 10px;
}
td.comm_body {
padding: 2px;
}
td.comm_foot {
font-size: 10px;
color: #336699;
text-align: right;
background-color: #C9C9C9;
padding: 2px;
}
td.comm_post {
background-color: #EBEBEB;
padding: 3px;
}
Menu wraz z linkami znajdującymi się w komórkach tabel .
Kod PHP: <?php
td.top_menu_td a {
color: #ffffff;
font-weight: bold;
text-decoration: none;
}
td.top_menu_link {
color: #ffffff;
font-weight: bold;
text-decoration: none;
}
td.top_menu_link:hover {
color: #ffffff;
font-weight: bold;
text-decoration: underline;
}
|
|
|
Katalogi upload i upload_tmp |
Napisane przez: Admin - 05-08-2025, 08:25 PM - Forum: Katalogi upload i upload_tmp
- Brak odpowiedzi
|
 |
Pierwszy folder upload_tmp będzie zawierał wszyskie pliki wgrane kiedykolwiek przez użytkowników . Zostaną one zamieszczone w tym folderze , aby później można było je przeskalować i skopiować do katalogów , które posiadają odrębni użytkownicy . Ponieważ folder będzie zawierał treści tymczasowe , można go co kilka dni czyścić .
Przyszła pora na stworzenie katalogu upload . Katalog będzie zawierał podkatalogi powiązane z numerem identyfikacyjnym użytkownika w systemie . Numer jest przechowywany w polu AUTO_INCREMENT w tabeli z danymi członków , którzy dołączyli do wspólnoty społecznościowej . Wszystkie foldery są tworzone automatycznie przez system , więc nie musimy sobie zaprzątać nimi głowy . Przechowywane są tutaj wszystkie grafiki , które zostały wgrane do systemu , a później przetworzone przez system , aby posiadały odpowiednie rozmiary .
Bardzo ważne jest , jeżeli będziemy umieszczali naszą aplikację w systemie Unix / Linux , nadanie odpowiednich praw dla katalogów . Prawa te musimy ustawić na wartość 0777 , czyli umożliwiającą zapis / odczyt / wykonanie dla każdego użytkownika . Kiedy będziemy wgrywać oprogramowanie na serwer , należy o tym fakcie pamiętać . W innym przypadku większość funkcji powiązanej z grafiką nie będzie działać , a system będzie zgłaszał błędy z informacją , iż nie może zapisać pliku do odpowiedniego katalogu z powodu braku uprawnień .
Zmiany praw możemy dokonać za pomocą specjalnego narzędzia w programie służącym do wysyłania plików poprzez protokół FTP bądź wpisując w jego linię poleceń odpowiednie komendy .
Kod PHP: <?php
chmod 777 upload_tmp
chmod 777 upload
chmod 777 upload/*
|
|
|
|