예제 #1
0
 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[15]['sql'] = "\nCREATE TABLE " . $tm_tablePrefix . "nl_attm (\nid INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,\nnl_id INT NOT NULL ,\nfile VARCHAR( 255 ) NOT NULL ,\nsiteid VARCHAR( 64 ) NOT NULL ,\nINDEX ( nl_id )\n) ENGINE=" . $db_type . "  DEFAULT CHARSET=utf8 COLLATE=utf8_bin;\n";
 $sql[16]['name'] = ___("Tabelle") . " '" . $tm_tablePrefix . "log' - " . ___("Logbuch");
 $sql[16]['sql'] = "\nCREATE TABLE " . $tm_tablePrefix . "log (\nid INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,\ndate datetime NOT NULL default '0000-00-00 00:00:00',\nauthor_id int(11) NOT NULL default '0',\naction enum('new','edit','delete','memo','usage') NOT NULL default 'memo',\nobject varchar(64) NOT NULL default '',\nproperty varchar(64) NOT NULL default '',\nx_value longtext NOT NULL,\nedit_id int(11) NOT NULL default '0',\ndata longtext,\nmemo varchar(255) NOT NULL default '',\nsiteid VARCHAR( 64 ) NOT NULL ,\nINDEX ( edit_id )\n) ENGINE=" . $db_type . "  DEFAULT CHARSET=utf8 COLLATE=utf8_bin;\n";
 $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>";
예제 #3
0
 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
 }
예제 #4
0
 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;
 }