public function __construct($tietokantaolio, $parametriolio, $luokkanimi) { parent::__construct(); $this->tietokantaolio = $tietokantaolio; $this->parametriolio = $parametriolio; $this->luokkanimi = $luokkanimi; }
/** * Konstruktorin "overloading" eli eri konstruktorit eri parametreille * ei ole tuettu PHP:ssä. Kierrän tämän antamalla parametreille, joita * ei käytetä, vakioarvon, joka tarkoittaa, ettei parametri käytössä. * * @param Tietokantaolio $tietokantaolio * @param int $id olion tunniste * @param string $taulunimi tietokantataulun nimi * @param type $tietokantasolut taulukko Tietokantasolu-luokan olioita. * Huomaa, että jokaista tietokantataulukon saraketta kohti pitää olla * tasan yksi solu! Muuten ei operaatiot toimi. */ function __construct($tietokantaolio, $id, $taulunimi, $tietokantasolut) { parent::__construct(); // Ks. metodi "nouki_arvot_tk_osumataulukosta": $this->id_tietokanta = Malliluokkapohja::$MUUTTUJAA_EI_MAARITELTY; $this->tk_taulunimi = $taulunimi; $this->olio_loytyi_tietokannasta = false; // Tämä on tärkeä! Tietokantasolut tuovat tiedot tietokannan soluista. $this->tietokantarivi = new Tietokantarivi($taulunimi, $tietokantasolut); if ($tietokantaolio instanceof Tietokantaolio) { $this->tietokantaolio = $tietokantaolio; } else { $this->tietokantaolio = Malliluokkapohja::$MUUTTUJAA_EI_MAARITELTY; } // Asetetaan id. Jos määritelty, haetaan myös tiedot tietokannasta. if (is_numeric($id) && $id > 0 && $id != Malliluokkapohja::$MUUTTUJAA_EI_MAARITELTY) { $this->set_id($id); $tiedot = $this->tietokantaolio->hae_eka_osuma_taulukkona($this->tk_taulunimi, Malliluokkapohja::$SARAKENIMI_ID, $id); // Tämä asettaa $olio_loytyi_tietokannasta-muuttujan arvon // onnistumisen mukaan. $this->nouki_arvot_tk_osumataulukosta($tiedot); } else { // Asetetaan id ei-määritellyksi. Tällä on merkitystä, jos // id on ollut ei-numero tai muu negatiivinen luku. $this->set_id(Malliluokkapohja::$MUUTTUJAA_EI_MAARITELTY); } //$this->tk_olio = Malliluokkapohja::$MUUTTUJAA_EI_MAARITELTY; }
/** * Konstruktorin "overloading" eli eri konstruktorit eri parametreille * ei ole tuettu PHP:ssä. Kierrän tämän antamalla parametreille, joita * ei käytetä, vakioarvon, joka tarkoittaa, ettei parametri käytössä. * * @param Tietokantaolio $tietokantaolio * @param int $id olion tunniste * @param string $taulunimi tietokantataulun nimi * @param type $tietokantasolut taulukko Tietokantasolu-luokan olioita. * Huomaa, että jokaista tietokantataulukon saraketta kohti pitää olla * tasan yksi solu! Muuten ei operaatiot toimi. */ function __construct($tietokantaolio, $id, $taulunimi, $tietokantasolut) { parent::__construct(); // Ks metodi "nouki_arvot_tk_osumataulukosta": $this->id_tietokanta = Malliluokkapohja2::$MUUTTUJAA_EI_MAARITELTY; $this->tk_taulunimi = $taulunimi; $this->olio_loytyi_tietokannasta = false; // Tämä on tärkeä! Tietokantasolut tuovat tiedot tietokannan soluista. $this->tietokantarivi = new Tietokantarivi($taulunimi, $tietokantasolut); if ($tietokantaolio instanceof Tietokantaolio) { $this->tietokantaolio = $tietokantaolio; } else { $this->tietokantaolio = Malliluokkapohja2::$MUUTTUJAA_EI_MAARITELTY; } // Asetetaan id. Jos määritelty, haetaan myös tiedot tietokannasta. // Muuten ei kannata, koska luultavasti kyseessä uusi olio, jota ei // vielä ole tallennettu tietokantaan. if (isset($id) && $id != Malliluokkapohja2::$MUUTTUJAA_EI_MAARITELTY) { $this->set_id($id); $tiedot = $this->tietokantaolio->hae_eka_osuma_taulukkona($this->tk_taulunimi, Malliluokkapohja2::$SARAKENIMI_ID, $id); // Tämä asettaa $olio_loytyi_tietokannasta-muuttujan arvon // onnistumisen mukaan. $this->nouki_arvot_tk_osumataulukosta($tiedot); } $this->tk_olio = Malliluokkapohja2::$MUUTTUJAA_EI_MAARITELTY; }
/** * Luokan muodostin: * * @param <type> $dbtyyppi tietokannan tyyppi (esim 'mysql') * @param <type> $dbhost tietokantapalvelimen nimi * @param <type> $dbuser käyttäjätunnus tietokantaan * @param <type> $dbsalis salasana tietokantaan. Tämä ei sitten saa * joutua vieraisiin käsiin!! */ public function __construct($dbtyyppi, $dbhost, $dbuser, $dbsalis) { parent::__construct(); $this->dbtyyppi = $dbtyyppi; $this->dbhost = $dbhost; $this->dbuser = $dbuser; $this->dbsalis = $dbsalis; }
function __construct($tietokantaolio, $parametriolio) { parent::__construct(); if ($tietokantaolio instanceof Tietokantaolio) { $this->tietokantaolio = $tietokantaolio; } else { $this->tietokantaolio = Kontrolleripohja2::$MUUTTUJAA_EI_MAARITELTY; } if ($parametriolio instanceof Parametrit) { $this->parametriolio = $parametriolio; } else { $this->parametriolio = Kontrolleripohja2::$MUUTTUJAA_EI_MAARITELTY; } $this->olio = Kontrolleripohja2::$MUUTTUJAA_EI_MAARITELTY; $this->oliot = array(); $this->palauteolio = new Palaute(); }
function __construct($tietokantaolio, $parametriolio) { parent::__construct(); if ($tietokantaolio instanceof Tietokantaolio) { $this->tietokantaolio = $tietokantaolio; } else { $this->tietokantaolio = Kontrolleripohja::$MUUTTUJAA_EI_MAARITELTY; } if ($parametriolio instanceof Parametrit) { $this->parametriolio = $parametriolio; } else { $this->parametriolio = Kontrolleripohja::$MUUTTUJAA_EI_MAARITELTY; } // luodaan käyttäjä. Tiedot yritetään hakea tietokannasta. Ellei onnistu, // jää jäljelle tyhjä Henkilo-luokan olio (liekö parempi näin? Ainakin // tällöin metodit toimivat.: $this->kayttaja = new Henkilo($this->parametriolio->get_omaid(), $this->tietokantaolio); $this->olio = Kontrolleripohja::$MUUTTUJAA_EI_MAARITELTY; $this->oliot = array(); }
function __construct() { parent::__construct(); $this->oliot = array(); }