Thomas. Skrevet 2. januar 2011 Del Skrevet 2. januar 2011 (endret) Har laget denne koden for og hente ut brukerdata om den enkelte brukeren: class BrukerData extends Bruker { protected static $instance = NULL; protected $BrukerId; protected $BrukerData = array(); public function __construct($id) { $this->BrukerId = $id; $this->SettBrukerData(); } private function SettBrukerData() { if(self::$instance === NULL) { $sql = Database::prepare('SELECT * FROM brukere WHERE id = ? LIMIT 1'); $sql->execute(array($this->BrukerId)); if(Database::Rows() < 1) { return parent::loggut(); } else { foreach($sql as $row) { #var_dump($row); array_push($this->BrukerData, $row); } } } self::$instance = 1; } public function HentData($var) { return $this->BrukerData[0][$var]; } } Og problemet er, at både en index og navnet på raden blir lagt i arrayen med samme value. Blir på en måte dobbelt opp. Slik ser det ut: array(134) { ["id"]=> string(1) "1" [0]=> string(1) "1" ["nick"]=> string(5) "admin" [1]=> string(5) "admin" ... også videre nedover Hvordan kan jeg få til slik at kun raden i databasen blir en del av arrayen? Løste det foreach($sql->fetchAll(PDO::FETCH_ASSOC) as $row) { Endret 2. januar 2011 av Thomas. Lenke til kommentar
FraXinuS Skrevet 2. januar 2011 Del Skrevet 2. januar 2011 Hvis du vil sette det som default fetch mode kan du bruke: $pdoobject->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); Lenke til kommentar
Thomas. Skrevet 3. januar 2011 Forfatter Del Skrevet 3. januar 2011 Hvis du vil sette det som default fetch mode kan du bruke: $pdoobject->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); Lagt til Bare lurer på noe annet angående OOP. Public, private, protected også videre.. Hva er egentlig poenget med de? For å ikke la andre objekter komme til i den og den klassen/metoden? Men når du først programmerer, programmerer du vel riktig, fungerende og slik at det skal være Du har for eksempel private __clone() {} for å hindre kloning av objekt i scriptet ditt. Så er det noen måte klienten kan lage innvirknig i scriptene dine? Eller er disse access-metodene kun for scriptet og ting kan ikke påvirkes utenifra? Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå