function getAdrID($group_id = 0, $search = array()) { //liefert NUR die IDs zurueck als Array!!! Beoetigt fuer die Formulare //keine suche ueber f0_9 !!!!! da wir speicher sparen wollen... nur ids! //bzw neue query testen! $ADRID = array(); $DB = new tm_DB(); $Query = "\n\t\t\t\t\t\tSELECT " . TM_TABLE_ADR . ".id\n\t\t\t\t\t\tFROM " . TM_TABLE_ADR . "\n\t\t\t\t\t"; if (isset($search['group']) && !empty($search['group'])) { $group_id = checkset_int($search['group']); } if (check_dbid($group_id)) { $Query .= "LEFT JOIN " . TM_TABLE_ADR_GRP_REF . " ON " . TM_TABLE_ADR . ".id = " . TM_TABLE_ADR_GRP_REF . ".adr_id"; } $Query .= " WHERE " . TM_TABLE_ADR . ".siteid='" . TM_SITEID . "'"; if (check_dbid($group_id)) { $Query .= " AND " . TM_TABLE_ADR_GRP_REF . ".siteid='" . TM_SITEID . "'\n\t\t\t\t\t\t AND " . TM_TABLE_ADR_GRP_REF . ".grp_id=" . checkset_int($group_id); } if (isset($search['email']) && !empty($search['email'])) { $Query .= " AND lcase(" . TM_TABLE_ADR . ".email) like lcase('" . dbesc($search['email']) . "')"; } if (isset($search['recheck']) && !empty($search['recheck'])) { $Query .= " AND " . TM_TABLE_ADR . ".recheck = " . checkset_int($search['recheck']) . ""; } if (isset($search['aktiv']) && ($search['aktiv'] === "1" || $search['aktiv'] === "0")) { //!!! we have to compare strings, weird php! argh. $Query .= " AND " . TM_TABLE_ADR . ".aktiv = " . checkset_int($search['aktiv']) . ""; } //check for status, OR if (isset($search['status']) && $search['status'] > 0) { //if is no array, let first array entry be the string, so we always have an array if (!is_array($search['status'])) { $search_status = $search['status']; $search['status'] = array(); $search['status'][0] = $search_status; } //create query $ssc = count($search['status']); if ($search['status'][0] > 0) { $Query .= " AND ("; for ($sscc = 0; $sscc < $ssc; $sscc++) { $Query .= TM_TABLE_ADR . ".status=" . checkset_int($search['status'][$sscc]); if ($sscc + 1 < $ssc) { $Query .= " OR"; } } $Query .= " )"; } } $DB->Query($Query); $ac = 0; while ($DB->next_record()) { $ADRID[$ac] = $DB->Record['id']; $ac++; } $this->DB->free(); return $ADRID; }
$sql[17]['name'] = ___("Tabelle") . " '" . $tm_tablePrefix . "lnk' - " . ___("Links"); $sql[17]['sql'] = "\nCREATE TABLE " . $tm_tablePrefix . "lnk (\n id bigint(20) NOT NULL auto_increment,\n siteid varchar(64) collate utf8_bin NOT NULL,\n created datetime NOT NULL,\n updated datetime NOT NULL,\n author varchar(64) collate utf8_bin NOT NULL,\n editor varchar(64) collate utf8_bin NOT NULL,\n aktiv tinyint(1) NOT NULL,\n short varchar(48) collate utf8_bin NOT NULL,\n name varchar(255) collate utf8_bin NOT NULL,\n url tinytext collate utf8_bin NOT NULL,\n descr tinytext collate utf8_bin NOT NULL,\n clicks bigint(20) NOT NULL default '0',\n PRIMARY KEY (id)\n) ENGINE=" . $db_type . " DEFAULT CHARSET=utf8 COLLATE=utf8_bin;\n"; $sql[18]['name'] = ___("Tabelle") . " '" . $tm_tablePrefix . "lnk_grp' - " . ___("Link Gruppen"); $sql[18]['sql'] = "\nCREATE TABLE " . $tm_tablePrefix . "lnk_grp (\n id int(11) NOT NULL auto_increment COMMENT 'unique internal id',\n siteid varchar(64) collate utf8_bin NOT NULL COMMENT 'site id',\n created datetime NOT NULL COMMENT 'creation date',\n updated datetime NOT NULL COMMENT 'last update date',\n author varchar(64) collate utf8_bin NOT NULL COMMENT 'author name/id',\n editor varchar(64) collate utf8_bin NOT NULL COMMENT 'editor name/id',\n aktiv tinyint(1) NOT NULL,\n standard tinyint(1) NOT NULL default '0',\n short varchar(48) collate utf8_bin NOT NULL,\n name varchar(255) collate utf8_bin NOT NULL,\n descr tinytext collate utf8_bin NOT NULL,\n PRIMARY KEY (id)\n) ENGINE=" . $db_type . " DEFAULT CHARSET=utf8 COLLATE=utf8_bin;\n"; $sql[19]['name'] = ___("Tabelle") . " '" . $tm_tablePrefix . "lnk_grp_ref' - " . ___("Link Gruppen Referenzen"); $sql[19]['sql'] = "\nCREATE TABLE " . $tm_tablePrefix . "lnk_grp_ref (\n id int(11) NOT NULL auto_increment,\n siteid varchar(64) collate utf8_bin NOT NULL default '',\n item_id int(11) NOT NULL default '0',\n grp_id int(11) NOT NULL default '0',\n PRIMARY KEY (id),\n KEY siteid (siteid)\n) ENGINE=" . $db_type . " DEFAULT CHARSET=utf8 COLLATE=utf8_bin;\n"; $sql[20]['name'] = ___("Tabelle") . " '" . $tm_tablePrefix . "lnk_click' - " . ___("Klicks"); $sql[20]['sql'] = "\nCREATE TABLE " . $tm_tablePrefix . "lnk_click (\n id bigint(11) NOT NULL auto_increment,\n created datetime NOT NULL,\n siteid varchar(64) collate utf8_bin NOT NULL default '',\n lnk_id int(11) NOT NULL default '0',\n nl_id int(11) NOT NULL default '0',\n q_id int(11) NOT NULL default '0',\n adr_id bigint(11) NOT NULL default '0',\n h_id bigint(11) NOT NULL default '0',\n ip varchar(16) collate utf8_bin NOT NULL default '0.0.0.0',\n clicks int(11) NOT NULL default '1',\n PRIMARY KEY (id),\n UNIQUE KEY unique_clicks (siteid,lnk_id,nl_id,q_id,adr_id,h_id,ip),\n KEY siteid (siteid)\n) ENGINE=" . $db_type . " DEFAULT CHARSET=utf8 COLLATE=utf8_bin;\n"; /***********************************************************/ //create tables etc /***********************************************************/ $checkDB = false; $DB = new tm_DB(); $sc = count($sql); for ($scc = 0; $scc < $sc; $scc++) { if (!DEMO && $DB->Query($sql[$scc]['sql'])) { $MESSAGE .= "<br>" . sprintf(___("Datenbank: %s wurde erstellt"), $sql[$scc]['name']); $checkDB = true; if (DEBUG) { $MESSAGE .= "<pre>" . $sql[$scc]['sql'] . "</pre>"; } } else { //!demo && query if (DEMO) { $checkDB = true; $MESSAGE .= "<br>" . sprintf(___("Datenbank: %s wurde erstellt"), $sql[$scc]['name']); if (DEBUG) { $MESSAGE .= "<pre>" . $sql[$scc]['sql'] . "</pre>"; } } else { //demo
function makeRandomIP($limit) { $DB2 = new tm_DB(); $Query = "SELECT id FROM " . TM_TABLE_NL_H . "\n\t\t\t\t\tWHERE siteid='" . TM_SITEID . "'"; $Query .= " AND ip='0.0.0.0' LIMIT " . checkset_int($limit); if ($this->DB->Query($Query)) { while ($this->DB->next_Record()) { srand((double) microtime() * 30000); $newip = rand(1, 254) . "." . rand(1, 254) . "." . rand(1, 240) . "." . rand(1, 254); $Query2 = "update " . TM_TABLE_NL_H . " set ip='" . $newip . "' where id='" . $this->DB->Record['id'] . "'"; $DB2->Query($Query2); } //while } //if query }
function getID($group_id = 0, $search = array()) { //liefert NUR die IDs in einer Gruppe zurueck als Array!!! Beoetigt fuer die Formulare $ID = array(); $DB = new tm_DB(); $Query = "\n\t\t\t\t\t\tSELECT " . $this->TM_TABLE_ITEM . ".id\n\t\t\t\t\t\tFROM " . $this->TM_TABLE_ITEM . "\n\t\t\t\t\t"; if (isset($search['group']) && !empty($search['group'])) { $group_id = checkset_int($search['group']); } if (check_dbid($group_id)) { $Query .= "LEFT JOIN " . $this->TM_TABLE_ITEM_GRP_REF . " ON " . $this->TM_TABLE_ITEM . ".id = " . $this->TM_TABLE_ITEM_GRP_REF . ".item_id"; } $Query .= " WHERE " . $this->TM_TABLE_ITEM . ".siteid='" . TM_SITEID . "'"; if (check_dbid($group_id)) { $Query .= " AND " . $this->TM_TABLE_ITEM_GRP_REF . ".siteid='" . TM_SITEID . "'\n\t\t\t\t\t\t AND " . $this->TM_TABLE_ITEM_GRP_REF . ".grp_id=" . checkset_int($group_id); } if (isset($search['url']) && !empty($search['url'])) { $Query .= " AND lcase(" . $this->TM_TABLE_ITEM . ".url) like lcase('" . dbesc($search['url']) . "')"; } if (isset($search['aktiv']) && ($search['aktiv'] === "1" || $search['aktiv'] === "0")) { //!!! we have to compare strings, weird php! argh. $Query .= " AND " . $this->TM_TABLE_ITEM . ".aktiv = " . checkset_int($search['aktiv']) . ""; } $DB->Query($Query); $c = 0; while ($DB->next_record()) { $ITEMID[$c] = $DB->Record['id']; $c++; } $this->DB->free(); return $ITEMID; }