[ _CaRtMan_ @ 11.03.2008. 13:35 ] @
Imam class.php, koja sadrzi ovo:

Code:

<?php

// Klasa koja provjerava da li je korisnik logovan

class korisnik
{
  
  var $podatak;
  
    function getInfo()
    {   
              
      
      $user_id = $_SESSION['user_id'];   
      
$query = mysql_query("SELECT * FROM korisnici WHERE id='$user_id'") or die();
while($d=mysql_fetch_array($query)){
$this->podatak[username] = $d[$username];
$this->podatak[administrator] = $d[administrator];
}

             return $this->podatak;
             


        }

          
    
}

?>


Napomena: Pocetnik u OOP. Dalje, imam u Index.php

require_once 'class.php';

Eh sad pokusavao sam da dodam i:

$korisnik = new korisnik();
$korisnik->getInfo();

I korisnik::getInfo() [tada izbaci error]

Eh sad u index.tpl imam:

Code:
{if $username}
Logovan bla bla bla
{else}
Nisi logovan! bla bla bla
{/if}


Kako bih sad primjenio ovo sa klasama i OOP. Hmm...
[ Man-Wolf @ 14.03.2008. 15:43 ] @
Ako nisam nesto prevideo, veoma jednostavno:

U getInfo funkciju, dodaj jos:

Code:

$this->podatak[logged] = 1;


Nakon pozivanja getInfo, stavi ovaj kod:
Code:

$smarty->assign('korisnicki_podaci', $korisnik->getinfo);


Nakon toga, u smarty-ju:

Code:


{if $korisnicki_podaci == 1}
Ulogovani ste blablablabla
{else}
Niste ulogovani bla bla bla
{/if}


Javi dal radi :-)


[ _CaRtMan_ @ 15.03.2008. 09:00 ] @
Nazalost, ne radi.

A i ne $this->podatak[logged] = 1 uvijek , tako da bi uvijek bilo if $korisnicki_podaci == 1 .. Mislim da to ne moze na ovaj nacin rjesiti.

Hmm.
[ Man-Wolf @ 16.03.2008. 12:06 ] @
Moja greska, trebalo je ovako:

Code:

{if $korisnicki_podaci[logged] == 1}
Ulogovani ste blablablabla
{else}
Niste ulogovani bla bla bla
{/if}



Pa cini mi se da ti cim nadjes podatke u bazi, setujes $this->podatak, tako da kapiram da si mislio, ukoliko postoji podatak o tom korisniku, da je on ulogovan !?

Evo ti neko moje resenje za tu tvoju funkciju:

Code:


function getInfo()
{   
                
$user_id = $_SESSION['user_id'];   
      
$query = mysql_query("SELECT * FROM korisnici WHERE id='$user_id'") or die();
if (mysql_num_rows($query) > 0)
{
  $d=mysql_fetch_array($query);
  $this->podatak['username'] = $d['username'];
  $this->podatak['administrator'] = $d['administrator'];  
  $this->podatak['logged'] = 1;
  
}

return $this->podatak;

}

Smarty:

{if $korisnicki_podaci[logged] == 1}
Ulogovani ste blablablabla
{else}
Niste ulogovani bla bla bla
{/if}





[ _CaRtMan_ @ 18.03.2008. 18:22 ] @
Code:

<?php

// Klasa koja provjerava da li je korisnik logovan


class korisnik
{
  
  var $podatak;
  
 

          

function getInfo()
{   
                
$user_id = $_SESSION['user_id'];   
      
$query = mysql_query("SELECT * FROM korisnici WHERE id='$user_id'") or die();
if (mysql_num_rows($query) > 0)
{
  $d=mysql_fetch_array($query);
  $this->podatak['username'] = $d['username'];
  $this->podatak['administrator'] = $d['administrator'];  
  $this->podatak['logged'] = 1;
  
}

return $this->podatak;

}

    
}  

  $smarty->assign('korisnicki_podaci', $korisnik->getinfo);



?>


U index.php

require 'class.php';

i u index.tpl

{if $korisnicki_podaci == 1}
Ulogovani ste blablablabla
{else}
Niste ulogovani bla bla bla
{/if}

i izbaci da nisam logovan, a jesam!!
[ Man-Wolf @ 18.03.2008. 18:32 ] @
Pa jesam ti napisao u drugom post-u da sam pogresio. Da ne treba $korisnicki_podaci vec $korisnicki_podaci[logged] :-)
[ dakipro @ 18.03.2008. 18:34 ] @
A zar $korisnik->getinfo nije funkcija?
Mislim da bi ti puno koristilo da ukljucis error reporting ako vec ne pratis lepo kod...