Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Wpisy
#1
Kod PHP:
<?php 

Tworzymy klasę rozszerzającą dla klasy głównej.

Kod PHP:
class AppClass extends Core
  


Metoda , która zostanie uruchomiona jako pierwsza po zainicjalizowaniu obiektu.
   

Kod PHP:
public function AppStart()
  {
  global $Lang

Sprawdzamy czy użytkownik jest zalogowany na konto administratora.
       

Kod PHP:
if($this->AppSessionGetValue('admin_id') != "")
  

Tworzymy nagłówek strony .
           

Kod PHP:
$this->AppBody .= '<h1>'.$Lang['ap_a3_inserts_pic_header'].'</h1>';
$this->AppBody .= '<div class="heading_row"></div>'


Wpisujemy do paska tytułu odpowiednią nazwę strony.
           

Kod PHP:
$this->AppTitle $Lang['ap_a3_inserts_pic_header'];
if(
$_GET['action'] == 'accept')
  

Kiedy zgłoszenie zostanie jedynie zaakceptowane , należy ustawić w nim wartość , tak aby nie pojawiało się już w panelu .
               

Kod PHP:
$SqlConfig 'UPDATE '.$this->DBPrefix.'warning SET warn_active = "y" WHERE warn_id = "'.$this->AppDBSecure($_GET['warn_id']).'"';
if(!
$this->AppDBQuery($SqlConfig))
      {
      $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
    

Informujemy użytkownika o dokonanej aktualizacji zgłoszenia .
               

Kod PHP:
$this->AppBody .= $this->AppPrintSuccess($Lang['ap_a3_comm_insert_deleted']);
}
if(
$_GET['action'] == 'accept_delete')
  


Kiedy zgłoszenie ma zostać zaakceptowane , także najpierw musimy ustalić w nim wartość , która zapobiegnie ponownemu pojawieniu się w panelu administratora .
               

Kod PHP:
$SqlConfig 'UPDATE '.$this->DBPrefix.'warning SET warn_active = "y" WHERE warn_id = "'.$this->AppDBSecure($_GET['warn_id']).'"';
if(!
$this->AppDBQuery($SqlConfig))
      {
      $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
    


Następnie umieszczamy dany wpis pośród usuniętych ustawiając wartość jego pola .
               

Kod PHP:
$SqlConfig 'UPDATE '.$this->DBPrefix.'comment SET comm_deleted = "y" WHERE comm_id = "'.$this->AppDBSecure($_GET['warn_content_id']).'"';
if(!
$this->AppDBQuery($SqlConfig))
      {
      $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
    

Informujemy użytkownika o tym , że dany wpis został usunięty .
               

Kod PHP:
$this->AppBody .= $this->AppPrintSuccess($Lang['ap_a4_comm_was_deleted']);


Wybieramy liczbę zgłoszeń , aby móc je podzielić na strony .
           

Kod PHP:
$SqlConfig 'SELECT count(warn_id) FROM '.$this->DBPrefix.'warning WHERE warn_what = "i_comment" AND warn_active = ""';
if(!
$this->AppDBQuery($SqlConfig))
    {
    $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
    }
    $Result $this->AppDBResult();
    $Rows $this->AppDBHowMany(); 

Wszystkie wpisy dzielimy przez 150 sztuk na stronę .


Kod PHP:
$HowManyPagesTemp $Result[0]['count(warn_id)'] / 150;
    $HowManyPagesTemp explode('.',$HowManyPagesTemp);
    $HowManyPages $HowManyPagesTemp[0];
    if($HowManyPagesTemp[1] > 0)
      {
    $HowManyPages++;
    }
            $PageSelect $_GET['page']; 

Pobieramy z adresu URL stronę , na której się obecnie znajdujemy , i tworzymy zmienną informującą bazę danych , od którego wpisu mają być wybrane zgłoszenia .
           
Kod PHP:
            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 , gdzie będą znajdowały się łącza umożliwiające przejście do odpowiedniej strony .
       

Kod 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=application_inserts&page='.$i.'">'.$i.'</a>';
    }
if(
$i<$HowManyPages)
      {
      $this->AppBody .= ' , ';
}
    }
    $this->AppBody .= '</div';
    

Wybieramy liczbę zgłoszeń z uwzględnieniem zmiennej informującej nas o rekordzie , od którego mamy zacząć .
       

Kod PHP:
    $SqlConfig 'SELECT * FROM '.$this->DBPrefix.'warning WHERE warn_what = "i_comment" AND warn_active = "" ORDER BY warn_id ASC 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ę ze zgłoszonymi wpisami oraz odpowiednimi akcjami odnośnie ich treści .
       

Kod PHP:
    $this->AppBody .= '<table cellpadding="0" cellspacing="0" border="0" width="100%">';
    $this->AppBody .= '<tr>';
    $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_id'].'</td>';
    $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_user'].'</td>';
    $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_content'].'</td>';
    $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_date'].'</td>';
    $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_upd'].'</td>';
    $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_upd_adm_del'].'</td>';
    $this->AppBody .= '</tr>';
    for($f=0;$f<$Rows;$f++)
      

Przypisujemy odpowiednie nazwy klas CSS do zmiennej , aby móc wyświetlić wszystkie rekordy w odrębnych kolorach , co ułatwi zorientowanie się , gdzie dane zgłoszenie dobiega końca .
               

Kod PHP:
    if($RowColor == 1)
      {
      $TdClass 'fb_row_1';
    $RowColor 0;
    }
    else
      {
$TdClass 'fb_row_2';
    $RowColor 1;
    }
$this->AppBody .= '<tr>'

   
Należy wybrać użytkownika , który wybrał dany wpis do zgłoszenia .
               

Kod PHP:
$SqlConfig 'SELECT user_id,user_lang,user_firstname,user_lastname,user_is_firm FROM '.$this->DBPrefix.'user WHERE user_id = "'.$this->AppDBSecure($Result[$f]['warn_user_id']).'"';
        if(!$this->AppDBQuery($SqlConfig))
        {
        $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
        }
        $ResultUser $this->AppDBResult();
$this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['warn_id']).'</td>'

Wyświetlamy dane w zależności od tego , czy użytkownik jest firmą czy też osobą prywatną .
               

Kod PHP:
if($ResultUser[0]['user_is_firm'] == 'y')
  {
  $UserField '<a href="'.$this->AppUrl.'index.php?app=showprofile&option='.$ResultUser[0]['user_id'].'">'.$this->AppDBUnsecure($ResultUser[0]['user_lastname']).'</a>';
}
else
  {
  $UserField '<a href="'.$this->AppUrl.'index.php?app=showprofile&option='.$ResultUser[0]['user_id'].'">'.$this->AppDBUnsecure($ResultUser[0]['user_firstname']).' '.$this->AppDBUnsecure($ResultUser[0]['user_lastname']).'</a>';
}
    $this->AppBody .= '<td class="'.$TdClass.'">'.$UserField.'</td>';
    $this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['warn_comment']).'</td>';
    $this->AppBody .= '<td class="'.$TdClass.'">'.date('d-m-Y H:i:s'$this->AppDBUnsecure($Result[$f]['warn_time'])).'</td>';
    $this->AppBody .= '<td class="'.$TdClass.'"><a href="'.$this->AppUrl.'admin.php?app=application_inserts&action=accept&warn_id='.$Result[$f]['warn_id'].'">'.$Lang['ap_a3_comm_upd'].'</a></td>';
    $this->AppBody .= '<td class="'.$TdClass.'"><a href="'.$this->AppUrl.'admin.php?app=application_inserts&action=accept_delete&warn_id='.$Result[$f]['warn_id'].'&warn_content_id='.$Result[$f]['warn_content_id'].'">'.$Lang['ap_a3_comm_upd_adm_del'].'</a></td>';
$this->AppBody .= '</tr>';
$this->AppBody .= '<tr>'

Wybieramy wpis , który został zgłoszony , i wyświetlamy jego zawartość .
               

Kod PHP:
        $SqlConfig 'SELECT * FROM '.$this->DBPrefix.'comment WHERE comm_id =  "'.$this->AppDBSecure($Result[$f]['warn_content_id']).'"';
        if(!$this->AppDBQuery($SqlConfig))
        {
        $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig);
        }
        $ResultComment $this->AppDBResult();
        $this->AppBody .= '<td class="'.$TdClass.'"></td>';
        $this->AppBody .= '<td class="'.$TdClass.'" colspan="5">'.$this->AppDBUnsecure($ResultComment[0]['comm_comment']).'<br /><br /></td>';
        $this->AppBody .= '</tr>';
}
$this->AppBody .= '</table>';
}
else
  

Jeżeli użytkownik nie był zalogowany , przekierowujemy go do strony głównej aplikacji .
           

Kod PHP:
header('location: '.$this->AppUrl.'admin.php');
}
}
}
?>
Odpowiedz


Wiadomości w tym wątku
Wpisy - przez Admin - 05-12-2025, 04:13 AM

Skocz do:


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