/** Selects row from the table 'lang_pos' by ID.<br><br> * SELECT page_id,lang_id,pos_id,etymology_n,lemma FROM lang_pos WHERE id=8; * @return null if data is absent. */ public static function getByID($lang_pos_id, $lang_all, $pos_all) { global $LINK_DB; $lang_pos = NULL; $query = "SELECT page_id,lang_id,pos_id,etymology_n,lemma FROM lang_pos WHERE id={$lang_pos_id}"; $result = mysqli_query($LINK_DB, $query) or die("Query failed (line 31) in TLangPOS::getByID: " . mysqli_error() . ". Query: " . $query); while ($row = mysqli_fetch_array($result)) { $page_id = $row['page_id']; $lang_id = $row['lang_id']; $pos_id = $row['pos_id']; $etymology_n = $row['etymology_n']; $lemma = $row['lemma']; $lang_pos['page'] = TPage::getByID($page_id); //print "TLangPOS::getByID lang_id = $lang_id<BR>"; //print "TLangPOS::getByID pos_id = $pos_id<BR>"; $lang_pos['lang'] = TLang::getByID($lang_id, $lang_all); //print "TLangPOS::getByID TLang lang = "; print_r ($lang_pos ['lang']); print "<BR>"; $lang_pos['pos'] = TPOS::getByID($pos_id, $pos_all); //print "TLangPOS::getByID TPOS pos = "; print_r($lang_pos ['pos']); print "<BR>"; $lang_pos['etymology_n'] = $etymology_n; $lang_pos['lemma'] = $lemma; $lang = $lang_pos['lang']; $pos = $lang_pos['pos']; if (null == $lang || null == $pos) { $lang_pos = NULL; } } return (object) $lang_pos; }
/** Gets TTranslationEntry object by property $property_name with value $property_value. * @return TTranslationEntry or NULL in case of error */ public static function getTranslationEntry($property_name, $property_value, $translation_obj = NULL) { global $LINK_DB; $query = "SELECT * FROM translation_entry WHERE `{$property_name}`='{$property_value}' order by id"; $result = $LINK_DB->query_e($query, "Query failed in " . __METHOD__ . " in file <b>" . __FILE__ . "</b>, string <b>" . __LINE__ . "</b>"); if ($LINK_DB->query_count($result) == 0) { return NULL; } $translationEntry_arr = array(); while ($row = $result->fetch_object()) { if ($translation_obj == NULL) { $translation_obj = TTranslation::getByID($row->translation_id); } $translationEntry_arr[] = new TTranslationEntry($row->id, $translation_obj, TLang::getByID($row->lang_id), TWikiText::getByID($row->wiki_text_id)); } return $translationEntry_arr; }
/** Gets TLangPOS object by property $property_name with value $property_value. * @return TLangPOS or NULL in case of error */ public static function getLangPOS($property_name, $property_value, $page_obj = NULL) { global $LINK_DB; $query = "SELECT * FROM lang_pos WHERE lang_id is not NULL and pos_id is not NULL and `{$property_name}`='{$property_value}' order by id"; $result = $LINK_DB->query_e($query, "Query failed in " . __METHOD__ . " in file <b>" . __FILE__ . "</b>, string <b>" . __LINE__ . "</b>"); if ($LINK_DB->query_count($result) == 0) { return NULL; } $lang_pos_arr = array(); while ($row = $result->fetch_object()) { $lang = TLang::getByID($row->lang_id); $pos = TPOS::getByID($row->pos_id); if (NULL == $lang || NULL == $pos) { return NULL; } if ($page_obj == NULL) { $page_obj = TPage::getByID($row->page_id); } $lang_pos = new TLangPOS($row->id, $page_obj, $lang, $pos, $row->etymology_n, $row->lemma); $lang_pos->meaning = TMeaning::getByLangPOS($row->id, $lang_pos); $lang_pos_arr[] = $lang_pos; } return $lang_pos_arr; }