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

Pocetnik sam u OOP Pomoc

[es] :: PHP :: Pocetnik sam u OOP Pomoc

[ Pregleda: 2474 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

feroc1ty

Član broj: 154894
Poruke: 90
77.46.204.*



Profil

icon Pocetnik sam u OOP Pomoc22.12.2007. u 16:30 - pre 198 meseci
Pravim class-u da mi izbaci podatke od nekog korisnika ali ne znam kako da izbacim array iz funkcije.


Moj primer bez klase

Code:
    
$id = 1;
$sql = "SELECT * FROM `users` WHERE id = '$id'";
$query = mysql_query($sql);
$userinfo = mysql_fetch_assoc($query);
echo 'Username : '.$userinfo['username'].'<br /> Email : '.$userinfo['email'];


A sa classom

Code:
    


class getInfo {

  function UserInfo($id) {
  $sql = "SELECT * FROM `users-ttt` WHERE id = '$id' ";
  $query = mysql_query($sql);
  $userinfo= mysql_fetch_assoc($query);
  }
}
$info = new getInfo() ;
$info->UserInfo(1);
echo 'Username : '.$userinfo['username'].'<br /> Email : '.$userinfo['email'];


Sta trebam da dodam ili da izmenim da bi mi classa radila

[Ovu poruku je menjao feroc1ty dana 22.12.2007. u 21:03 GMT+1]
 
Odgovor na temu

feroc1ty

Član broj: 154894
Poruke: 90
77.46.230.*



Profil

icon Re: Pocetnik sam u OOP Pomoc24.12.2007. u 01:29 - pre 198 meseci
Code:

class getInfo {
    public $userinfo;
  function UserInfo($id) {
  $sql = "SELECT * FROM `users-ttt` WHERE id = '$id' ";
  $query = mysql_query($sql);
  $this->userinfo= mysql_fetch_assoc($query);
  }
}
$info = new getInfo() ;
$info->UserInfo(1);
echo 'Username : '.$info->userinfo['username'].'<br /> Email : '.$info->userinfo['email'];


Moje resenje je ovako ali ako zna drugacije (elegantije) da nemoramda kucam $info->userinfo['username'] nego samo $userinfo['username'] Neka slobodno postuje!!!

[Ovu poruku je menjao feroc1ty dana 24.12.2007. u 02:56 GMT+1]
 
Odgovor na temu

dakipro
Dalibor Jovic
Web Developer
Bergen, Norway

Moderator
Član broj: 31848
Poruke: 1792
89.216.108.*

Sajt: norway.dakipro.com


+190 Profil

icon Re: Pocetnik sam u OOP Pomoc24.12.2007. u 08:41 - pre 197 meseci
Ako vec zelis tako, moj predlog sa malim izmenama je
Code:

class getInfo {
    public $userinfo;

  function setUserInfo($id) {
       $sql = "SELECT * FROM `users-ttt` WHERE id = '$id' ";
       $query = mysql_query($sql);
       $this->userinfo= mysql_fetch_assoc($query);
  }

  function getUserInfo(){
      return $this->userinfo;
  }
}
$info = new getInfo() ;
$info->setUserInfo(1);
$userinfo = $info->getUserInfo;

echo 'Username : '.$userinfo['username'].'<br /> Email : '.$userinfo['email'];


Ali naravno, sve su ovo finese i mozda vise stvar navike rada sa oop nego sto mozda tako treba.
Razlog dodavanaj jos jedne metode je taj sto ces nekada mozda zeleti da nekako obradis podatke koje citas iz klase (npr: odraditi neku proveru dal user postoji ili nesto drugo...), i to onda mozes odraditi na jednom mestu, u samoj klasi a ne svuda kroz ceo kod. (sto i jeste poenta) Bar su mene ucili da objekat treba da ima svoje metode kojima vraca vrednosti, kao i svoje metode za setovanje istih, kako bi se objekat brinuo o tome da li je potrebna neka obrada ili ne, a ne ti kroz ostatak koda.

btw, inace radim sa smartyjem, pa prosledim ceo objekat, i koristim nesto nalik ovome sto si prvi put postovao, samo postoji jos koja metoda za izvlacenje tacno odredjenog clana niza.


 
Odgovor na temu

rajkoBekrija

Član broj: 123164
Poruke: 53
*.broadband.blic.net.



Profil

icon Re: Pocetnik sam u OOP Pomoc18.04.2008. u 03:00 - pre 194 meseci
Znam da je tema stara, ali reko da je malo osvjezimo, recimo ovakvo rjesenje

Code:
<?php

   class getInfo {
      
      function __construct($id) {
         $this -> Data = mysql_fetch_assoc( mysql_query( "SELECT * FROM `users-ttt` WHERE id = '{$id}' LIMIT 1") );
      }
      
      function __get( $Key ){
         return $this -> Data[ $Key ];
      }
      
   }

   
   $Info = new getInfo( 1 );
   print "Username : {$Info->username}<br />Email : {$Info->email}";

?>
 
Odgovor na temu

[es] :: PHP :: Pocetnik sam u OOP Pomoc

[ Pregleda: 2474 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

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