/** * @param Tietokantaolio $tietokantaolio * @param int $id olion id tietokannassa */ function __construct($tietokantaolio, $id) { // Huomaa, että taulunimenä on yliluokassa vain blajiluokat: parent::__construct($tietokantaolio, $id, "blajiluokat"); $this->virheilmot = array(); $this->ylaluokka_id = Lajiluokka::$MUUTTUJAA_EI_MAARITELTY; $this->nimi_latina = Lajiluokka::$MUUTTUJAA_EI_MAARITELTY; // Haetaan ja sijoitetaan tietokantarivin arvot, jos se on // olemassa eli parametri käytössä ja tietokantaolio oikea luokka. if ($this->tietokantaolio instanceof Tietokantaolio && $id != Lajiluokka::$PARAMETRI_EI_KAYTOSSA) { // Haetaan lajiluokan tiedot tietokannasta: try { $taulunimi = $this->tk_taulunimi; // blajiluokat $sarakenimi = Lajiluokka::$SARAKENIMI_ID; $hakuarvo = $id; $tk_lajiluokkaolio = $tietokantaolio->hae_eka_osuma_oliona($taulunimi, $sarakenimi, $hakuarvo); if ($tk_lajiluokkaolio != Tietokantaolio::$HAKU_PALAUTTI_TYHJAN) { $this->ylaluokka_id = $tk_lajiluokkaolio->ylaluokka_id; $this->nimi_latina = $tk_lajiluokkaolio->nimi_latina; $this->olio_loytyi_tietokannasta = true; $this->id = $tk_lajiluokkaolio->id; } else { // Jos mitään ei löydy, muutetaan ei-määritellyksi: $tk_lajiluokkaolio = Lajiluokka::$MUUTTUJAA_EI_MAARITELTY; $this->id = Lajiluokka::$MUUTTUJAA_EI_MAARITELTY; $this->olio_loytyi_tietokannasta = false; } // Otetaan ylös tiedot luokan muuttujaaan. $this->tk_olio = $tk_lajiluokkaolio; } catch (Exception $virhe) { nollaa_muuttujat(); } } }
/** * 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 <type> $tk_pikakommenttiolio Tietokantahausta saatava yksi rivi * oliona. */ function __construct($tietokantaolio, $id) { $this->TAULUNIMI_PIKAKOMMENTIT = Tietokannan_taulunimet::$pikakommentit; $this->virheilmot = array(); $this->tietokantaolio = $tietokantaolio; if ($id == Pikakommentti::$PARAMETRI_EI_KAYTOSSA) { $this->id = Pikakommentti::$MUUTTUJAA_EI_MAARITELTY; } else { $this->id = $id; } $this->henkilo_id = Pikakommentti::$MUUTTUJAA_EI_MAARITELTY; $this->tallennushetki_sek = Pikakommentti::$MUUTTUJAA_EI_MAARITELTY; $this->muokkaushetki_sek = Pikakommentti::$MUUTTUJAA_EI_MAARITELTY; $this->kohde_id = Pikakommentti::$MUUTTUJAA_EI_MAARITELTY; $this->kohde_tyyppi = Pikakommentti::$MUUTTUJAA_EI_MAARITELTY; $this->kommentti = Pikakommentti::$MUUTTUJAA_EI_MAARITELTY; $this->tk_pikakommenttiolio = Pikakommentti::$MUUTTUJAA_EI_MAARITELTY; // Haetaan ja sijoitetaan tietokantarivin arvot, jos se on // olemassa eli parametri käytössä. if ($id != Pikakommentti::$PARAMETRI_EI_KAYTOSSA) { // Haetaan pikakommentin tiedot tietokannasta: try { $taulunimi = "pikakommentit"; $sarakenimi = "id"; $hakuarvo = $id; $tk_pikakommenttiolio = $tietokantaolio->hae_eka_osuma_oliona($taulunimi, $sarakenimi, $hakuarvo); // Kun olio löytyy, asetetaan tiedot paikalleen: if ($tk_pikakommenttiolio != Tietokantaolio::$HAKU_PALAUTTI_TYHJAN) { $this->henkilo_id = $tk_pikakommenttiolio->henkilo_id; $this->tallennushetki_sek = $tk_pikakommenttiolio->tallennushetki_sek; $this->muokkaushetki_sek = $tk_pikakommenttiolio->muokkaushetki_sek; $this->kohde_id = $tk_pikakommenttiolio->kohde_id; $this->kohde_tyyppi = $tk_pikakommenttiolio->kohde_tyyppi; $this->kommentti = $tk_pikakommenttiolio->kommentti; $this->olio_loytyi_tietokannasta = true; } else { // Jos mitään ei löydy, muutetaan ei-määritellyksi: $tk_pikakommenttiolio = Pikakommentti::$MUUTTUJAA_EI_MAARITELTY; $this->id = Pikakommentti::$MUUTTUJAA_EI_MAARITELTY; $this->olio_loytyi_tietokannasta = false; } // Otetaan ylös tiedot luokan muuttujaaan. $this->tk_pikakommenttiolio = $tk_pikakommenttiolio; } catch (Exception $virhe) { nollaa_muuttujat(); } } }
/** * @param Tietokantaolio $tietokantaolio * @param int $id olion id tietokannassa */ function __construct($tietokantaolio, $id) { parent::__construct($tietokantaolio, $id, "bhavainnot"); $this->virheilmot = array(); // Muuttujien alustus (muut paitsi id): $this->henkilo_id = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->Havainto_id = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->kommentti = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->paikka = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->vuosi = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->kk = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->paiva = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->maa = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->varmuus = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->muutetut_bkuvalinkit_lkm = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->poistetut_pikakommentit_lkm = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->vanha_lajiluokka_id = Havainto::$MUUTTUJAA_EI_MAARITELTY; // Haetaan ja sijoitetaan tietokantarivin arvot, jos se on // olemassa eli parametri käytössä ja tietokantaolio oikea luokka. if ($this->tietokantaolio instanceof Tietokantaolio && $id != Lajiluokka::$PARAMETRI_EI_KAYTOSSA) { // Haetaan lajiluokan tiedot tietokannasta: try { $taulunimi = $this->tk_taulunimi; $sarakenimi = Lajiluokka::$SARAKENIMI_ID; $hakuarvo = $id; $tk_havainto_olio = $tietokantaolio->hae_eka_osuma_oliona($taulunimi, $sarakenimi, $hakuarvo); if ($tk_havainto_olio != Tietokantaolio::$HAKU_PALAUTTI_TYHJAN) { $this->henkilo_id = $tk_havainto_olio->henkilo_id; $this->lajiluokka_id = $tk_havainto_olio->lajiluokka_id; $this->kommentti = $tk_havainto_olio->kommentti; $this->paikka = $tk_havainto_olio->paikka; $this->vuosi = $tk_havainto_olio->vuosi; $this->kk = $tk_havainto_olio->kk; $this->paiva = $tk_havainto_olio->paiva; $this->maa = $tk_havainto_olio->maa; $this->varmuus = $tk_havainto_olio->varmuus; $this->vanha_lajiluokka_id = $tk_havainto_olio->lajiluokka_id; $this->olio_loytyi_tietokannasta = true; } else { // Jos mitään ei löydy, muutetaan ei-määritellyksi: $tk_lajiluokkaolio = Havainto::$MUUTTUJAA_EI_MAARITELTY; $this->id = Havainto::$MUUTTUJAA_EI_MAARITELTY; } // Otetaan ylös tiedot luokan muuttujaaan. $this->tk_olio = $tk_havainto_olio; } catch (Exception $virhe) { nollaa_muuttujat(); } } else { } }