Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Smarty & OOP , pocetnik u OOP.

[es] :: PHP :: Smarty template engine :: Smarty & OOP , pocetnik u OOP.

[ Pregleda: 3433 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

_CaRtMan_

Član broj: 126731
Poruke: 305
*.PPPoE-2965.sa.bih.net.ba.



+1 Profil

icon Smarty & OOP , pocetnik u OOP.11.03.2008. u 13:35 - pre 196 meseci
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...
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Smarty & OOP , pocetnik u OOP.14.03.2008. u 15:43 - pre 196 meseci
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 :-)


 
Odgovor na temu

_CaRtMan_

Član broj: 126731
Poruke: 305
*.PPPoE-4131.sa.bih.net.ba.



+1 Profil

icon Re: Smarty & OOP , pocetnik u OOP.15.03.2008. u 09:00 - pre 196 meseci
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.
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Smarty & OOP , pocetnik u OOP.16.03.2008. u 12:06 - pre 196 meseci
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}





 
Odgovor na temu

_CaRtMan_

Član broj: 126731
Poruke: 305
89.146.183.*



+1 Profil

icon Re: Smarty & OOP , pocetnik u OOP.18.03.2008. u 18:22 - pre 196 meseci
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!!
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Smarty & OOP , pocetnik u OOP.18.03.2008. u 18:32 - pre 196 meseci
Pa jesam ti napisao u drugom post-u da sam pogresio. Da ne treba $korisnicki_podaci vec $korisnicki_podaci[logged] :-)
 
Odgovor na temu

dakipro
Dalibor Jovic
Web Developer
Bergen, Norway

Član broj: 31848
Poruke: 1792
89.216.108.*

Sajt: norway.dakipro.com


+190 Profil

icon Re: Smarty & OOP , pocetnik u OOP.18.03.2008. u 18:34 - pre 196 meseci
A zar $korisnik->getinfo nije funkcija?
Mislim da bi ti puno koristilo da ukljucis error reporting ako vec ne pratis lepo kod...
 
Odgovor na temu

[es] :: PHP :: Smarty template engine :: Smarty & OOP , pocetnik u OOP.

[ Pregleda: 3433 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.