Bład z integracją - sprawdzanie czy zalogowany

Dyskusje odnośnie pomostów oraz integracji phpBB 3.0.x z systemami zarządzania treścią (CMS).
  • Autor
  • Wiadomość
Offline

MrGohut

  • Posty: 3
  • Rejestracja: 12 grudnia 2013, 10:12

Bład z integracją - sprawdzanie czy zalogowany

Post12 grudnia 2013, 10:19

Mam takie cuś:
Kod: Zaznacz cały
<?php
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './forum/';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include ('seenews.php');

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
?>
<!doctype HTML>
<html lang="pl" dir="ltr">
   <head>
      <meta charset="utf-8" />
      <title>Testowa Strona WWW</title>
      <meta name="Description" content="" />
      <meta name="Keywords" content="" />
      <link rel="stylesheet" href="main.css" />   
      <!--[if lt IE 9]>
         <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
      <![endif]-->
   </head>
   <body>
<div id="panel">
            <div id="logowanie_rejestracja">
               <?php
                  if($user->data['is_registered']) {
                     if($user->data['group_id']==5) {
                        echo '<p id="witaj">Jesteś zalogowany, witaj <a href="'.append_sid($phpbb_root_path.'memberlist.php?mode=viewprofile&u=' . $user->data['user_id'] . '').'">' . $user->data['username'] . '</a> !</p>';
                        echo '<a id="wyloguj" href="'.append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=logout', true, $user->session_id). '">Wyloguj</a>';
                        echo '<p id="dodaj_newsa"><a href="/dodaj.php"><img src="/images/add.png" alt="dodaj newsa"/></a></p>';
                        if($user->data['user_new_privmsg']>=1) {
                           echo '<p id="msg_new"><a href="'.append_sid($phpbb_root_path.'ucp.php?i=pm&folder=inbox').'"><img src="/images/msg_new.png" alt="nowa wiadomość"/></a></p>';
                        }
                        else {
                           echo '<p id="msg_empty"><a href="'.append_sid($phpbb_root_path.'ucp.php?i=pm&folder=inbox').'"><img src="/images/msg_empty.png" alt="brak nowej wiadomości"/></a></p>';
                        }
                        echo '<p id="edytuj_profil"><a href="'.append_sid($phpbb_root_path.'ucp.php').'"><img src="/images/profile.png" alt="edytuj profil"/></a></p>';
                     }
                     else {
                        echo '<p id="witaj">Jesteś zalogowany, witaj <a href="'.append_sid($phpbb_root_path.'memberlist.php?mode=viewprofile&u=' . $user->data['user_id'] . '').'">' . $user->data['username'] . '</a> !</p>';
                        echo '<a id="wyloguj" href="'.append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=logout', true, $user->session_id). '">Wyloguj</a>';
                        if($user->data['user_new_privmsg']>=1) {
                           echo '<p id="msg_new"><a href="'.append_sid($phpbb_root_path.'ucp.php?i=pm&folder=inbox').'"><img src="/images/msg_new.png" alt="nowa wiadomość"/></a></p>';
                        }
                        else {
                           echo '<p id="msg_empty"><a href="'.append_sid($phpbb_root_path.'ucp.php?i=pm&folder=inbox').'"><img src="/images/msg_empty.png" alt="brak nowej wiadomości"/></a></p>';
                        }
                        echo '<p id="edytuj_profil"><a href="'.append_sid($phpbb_root_path.'ucp.php').'"><img src="/images/profile.png" alt="edytuj profil"/></a></p>';
                     }
                  }
                  else {
                     echo '<p id="nie_zalogowany">Nie jesteś zalogowany. </p>';
                     echo '<p id="nie_zalogowany2"><a href="../login.php">Zaloguj</a> się lub <a href="'.append_sid($phpbb_root_path.'ucp.php?mode=register').'">zarejestruj</a> jeśli jeszcze nie masz konta.</p>';
                  }
               ?>
            </div>
         </div>
<div id="box_index">
            <a id="starsze_up" href="wszystkie.php">Pokaż więcej &raquo;</a>
            <?php seeNews(); ?>
         </div>
</body>
</html>

i funkcja seenews
Kod: Zaznacz cały
<?php
require_once ('connect.php');
function seeNews () {
   $db = dbConn::getConnection();
   try {
      $SQL = $db->query("SELECT * FROM `news` ORDER BY data_dodania DESC LIMIT 5");
      while($AFR = $SQL->fetch()) {
         echo '<article class="caly_news">';
         echo '<div class="news_tytul"><a href="more.php?id='.$AFR['id_news'].'">'.$AFR['tytul'].'</a></div>';
         echo '<img class="img" src="'.$AFR['img'].'" alt="tymczasowy opis" />';
         echo '<div class="tresc">'.$AFR['wiadomosc'].'</div>';
         echo '<div class="read_more"><a href="more.php?id='.$AFR['id_news'].'">Czytaj Więcej >></a></div>';
         echo '<div class="autor">Autor: '.$AFR['autor'].'</div>';
         echo '<div class="data">Data dodania: <time>'.$AFR['data_dodania'].'</time></div>';
         if($user->data['is_registered'] and $user->data['group_id']==5) {
            echo '<div class="edit"><a href="edytuj_newsa.php?id='.$AFR['id_news'].'">Edytuj</a></div>';
         }
         echo '<hr class="hr">';
         var_dump($user->data['is_registered']);
         echo '</article>';
      }
   }
   catch (PDOException $e) {
      echo 'Oops ! Cos poszło nie tak !<br>'.$e->getMessage();
      die();
   }
}
?>


Chodzi o to
Kod: Zaznacz cały
if($user->data['is_registered'] and $user->data['group_id']==5) {
            echo '<div class="edit"><a href="edytuj_newsa.php?id='.$AFR['id_news'].'">Edytuj</a></div>';
         }

sprawdzam, czy user jest zalogowany i jest adminem (grupa 5) ale niestety to nie działa ...(czytaj nie wyświetla się opcja "edytuj") wywala w var_dumpie NULL przy is registered a przy group bool(false)
Na indexie mam jeszcze takie coś
Kod: Zaznacz cały
<?php
                  if($user->data['is_registered']) {
                     if($user->data['group_id']==5) {
                        echo '<p id="witaj">Jesteś zalogowany, witaj <a href="'.append_sid($phpbb_root_path.'memberlist.php?mode=viewprofile&u=' . $user->data['user_id'] . '').'">' . $user->data['username'] . '</a> !</p>';
                        echo '<a id="wyloguj" href="'.append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=logout', true, $user->session_id). '">Wyloguj</a>';
                        echo '<p id="dodaj_newsa"><a href="/dodaj.php"><img src="/images/add.png" alt="dodaj newsa"/></a></p>';
                        if($user->data['user_new_privmsg']>=1) {
                           echo '<p id="msg_new"><a href="'.append_sid($phpbb_root_path.'ucp.php?i=pm&folder=inbox').'"><img src="/images/msg_new.png" alt="nowa wiadomość"/></a></p>';
                        }
                        else {
                           echo '<p id="msg_empty"><a href="'.append_sid($phpbb_root_path.'ucp.php?i=pm&folder=inbox').'"><img src="/images/msg_empty.png" alt="brak nowej wiadomości"/></a></p>';
                        }
                        echo '<p id="edytuj_profil"><a href="'.append_sid($phpbb_root_path.'ucp.php').'"><img src="/images/profile.png" alt="edytuj profil"/></a></p>';
                     }
                     else {
                        echo '<p id="witaj">Jesteś zalogowany, witaj <a href="'.append_sid($phpbb_root_path.'memberlist.php?mode=viewprofile&u=' . $user->data['user_id'] . '').'">' . $user->data['username'] . '</a> !</p>';
                        echo '<a id="wyloguj" href="'.append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=logout', true, $user->session_id). '">Wyloguj</a>';
                        if($user->data['user_new_privmsg']>=1) {
                           echo '<p id="msg_new"><a href="'.append_sid($phpbb_root_path.'ucp.php?i=pm&folder=inbox').'"><img src="/images/msg_new.png" alt="nowa wiadomość"/></a></p>';
                        }
                        else {
                           echo '<p id="msg_empty"><a href="'.append_sid($phpbb_root_path.'ucp.php?i=pm&folder=inbox').'"><img src="/images/msg_empty.png" alt="brak nowej wiadomości"/></a></p>';
                        }
                        echo '<p id="edytuj_profil"><a href="'.append_sid($phpbb_root_path.'ucp.php').'"><img src="/images/profile.png" alt="edytuj profil"/></a></p>';
                     }
                  }
                  else {
                     echo '<p id="nie_zalogowany">Nie jesteś zalogowany. </p>';
                     echo '<p id="nie_zalogowany2"><a href="../login.php">Zaloguj</a> się lub <a href="'.append_sid($phpbb_root_path.'ucp.php?mode=register').'">zarejestruj</a> jeśli jeszcze nie masz konta.</p>';
                  }
               ?>

i tu wszystko poprawnie działa
Offline

jaroslw

były członek zespołu

  • Posty: 4524
  • Rejestracja: 10 grudnia 2005, 18:48

Re: Bład z integracją - sprawdzanie czy zalogowany

Post12 grudnia 2013, 17:22

W pliku seenews.php pewnie nie załączasz plików phpBB i obiekt $user nie istnieje.
Pobierz styl: we_universalwe_clearblue
Nowości i aktualizacje: FacebookGoogle+Twitter
Offline

MrGohut

  • Posty: 3
  • Rejestracja: 12 grudnia 2013, 10:12

Re: Bład z integracją - sprawdzanie czy zalogowany

Post12 grudnia 2013, 23:46

Ale przecież seenews jest ładowany do pliku index.php a tam już jest na początku wszystko załadowane. Jak dodaje tą samą formułkę, czyli to
Kod: Zaznacz cały
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './forum/';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include ('seenews.php');

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();

do seenews to wyskakuje takie coś
Fatal error: Cannot redeclare deregister_globals() (previously declared in C:\xampp\htdocs\forum\includes\startup.php:47) in C:\xampp\htdocs\forum\includes\startup.php on line 114
Offline

jaroslw

były członek zespołu

  • Posty: 4524
  • Rejestracja: 10 grudnia 2005, 18:48

Re: Bład z integracją - sprawdzanie czy zalogowany

Post13 grudnia 2013, 14:14

Nie zauważyłem, że includujesz ten plik wcześniej. Zaraz po definicji funkcji:
Kod: Zaznacz cały
function seeNews () {

dodaj:
Kod: Zaznacz cały
global $phpbb_root_path, $user;
Pobierz styl: we_universalwe_clearblue
Nowości i aktualizacje: FacebookGoogle+Twitter
Offline

MrGohut

  • Posty: 3
  • Rejestracja: 12 grudnia 2013, 10:12

Re: Bład z integracją - sprawdzanie czy zalogowany

Post13 grudnia 2013, 20:17

śmiga, dzięki :)

Wróć do Integracja

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość