function remarchive()
 {
     $ids = explode(",", db_escape_string($_REQUEST["ids"]));
     foreach ($ids as $id) {
         $result = db_query($this->link, "DELETE FROM ttrss_archived_feeds WHERE\n\t\t(SELECT COUNT(*) FROM ttrss_user_entries\n\t\t\t\t\t\t\tWHERE orig_feed_id = '{$id}') = 0 AND\n\t\tid = '{$id}' AND owner_uid = " . $_SESSION["uid"]);
         $rc = db_affected_rows($this->link, $result);
     }
 }
예제 #2
0
 function create($staffId, $ticketId, $created)
 {
     if (is_numeric($staffId) && is_numeric($ticketId)) {
         $sql = 'INSERT INTO ' . SPENT_TIME_TABLE . ' SET ticket_id=' . db_input($ticketId) . ', staff_id=' . db_input($staffId) . ', created=' . db_input($created) . ', ended=NOW()' . ', seconds=TIME_TO_SEC(TIMEDIFF(ended,created))';
         return db_query($sql) && db_affected_rows() == 1;
     }
     return false;
 }
/**
 * Perform an SQL query and return success or failure.
 *
 * @see http://api.drupal.org/api/function/update_sql/6
 *
 * @param $sql
 *   A string containing a complete SQL query.
 * @return
 *   An array containing the keys:
 *      success: a boolean indicating whether the query succeeded
 *      query: the SQL query executed, passed through check_plain()
 *      rows: number of rows effected
 */
function my_update_sql($sql)
{
    $args = func_get_args();
    array_shift($args);
    $result = db_query($sql, $args);
    $sql = my_return_query_string($sql, $args);
    return array('success' => $result !== FALSE, 'query' => check_plain($sql), 'rows' => db_affected_rows());
}
 public function delete()
 {
     $sql = 'DELETE FROM ' . EQUIPMENT_TICKET_RECURRING__TABLE . ' WHERE id=' . db_input($this->id) . ' LIMIT 1';
     if (db_query($sql) && ($num = db_affected_rows())) {
         return $num;
     }
     $this->errors[] = 'Error deleting item!';
     return false;
 }
예제 #5
0
/**
 * Invoked whenever a project maintainer is added or updated.
 *
 * This gives any modules that are providing their own per-project permissions
 * a chance to store the data about a maintainer's permissions whenever the
 * record for that maintainer is being saved.
 *
 * @param $nid
 *   The Project NID to save the maintainer information for.
 * @param $uid
 *   The user ID of the maintainer to save.
 * @param array $permissions
 *   Associative array of which project-level permissions the maintainer
 *   should have. The keys are permission names, and the values are if the
 *   permission should be granted or not.
 *
 * @see hook_project_permission_info()
 */
function hook_project_maintainer_save($nid, $uid, $permissions)
{
    // Try to update an existing record for this maintainer for our permission.
    db_query("UPDATE {example_project_maintainer} SET some_project_permission = %d WHERE nid = %d AND uid = %d", !empty($permissions['some project permission']), $nid, $uid);
    if (!db_affected_rows()) {
        // If we didn't have a record to update, add this as a new maintainer.
        db_query("INSERT INTO {example_project_maintainer} (nid, uid, some_project_permission) VALUES (%d, %d, %d)", $nid, $uid, !empty($permissions['some project permission']));
    }
}
 function delete()
 {
     db_query("delete from " . tbl_prefix . "weblog_comments where ident = '{$this->ident}'");
     if (db_affected_rows() > 0) {
         return true;
     } else {
         return false;
     }
 }
예제 #7
0
function site_hminfo_delete($id)
{
    $query = "DELETE FROM site_hminfo WHERE id = '" . $id . "'";
    $delete = db_query($query);
    if ($delete && db_affected_rows() > 0) {
        return TRUE;
    } else {
        return FALSE;
    }
}
/**
 * override hook_add_to_cart
 * 
 * @param string $nid
 * @param integer $qty
 * @param array $data
 * @return array
 */
function uc_stock_add_to_cart($nid, $qty, $data)
{
    $product = node_load($nid);
    uc_product_load($product);
    $sql = "SELECT nid FROM {uc_product_stock} WHERE sku = '%s' AND nid = '%s' AND  stock <= 0";
    $result = db_fetch_object(db_query($sql, $product->model, $nid));
    if (db_affected_rows($result) == 1) {
        return array(array('success' => FALSE, 'message' => t('@product out of stock', array('@product' => $product->title))));
    }
}
예제 #9
0
 function renew()
 {
     global $cfg;
     $sql = 'UPDATE ' . TICKET_LOCK_TABLE . ' SET expire=DATE_ADD(NOW(),INTERVAL ' . $cfg->getLockTime() . ' MINUTE) ' . ' WHERE lock_id=' . db_input($this->getId());
     //echo $sql;
     if (db_query($sql) && db_affected_rows()) {
         $this->reload();
         return true;
     }
     return false;
 }
예제 #10
0
function db_api_update_token($c_member_id)
{
    $token = create_hash();
    $data = array('token' => $token);
    $where = array('c_member_id' => intval($c_member_id));
    db_update('c_api_member', $data, $where);
    if (!db_affected_rows()) {
        db_api_insert_token($c_member_id, $token);
    }
    return $token;
}
예제 #11
0
 /**
  * Deletes object from the database.
  * @return boolean True if object was deleted successfully, false otherwise.
  */
 public function delete()
 {
     $table = static::getTableName();
     $id_column = static::getIdColumn();
     $sql = 'DELETE FROM ' . $table . ' WHERE ' . $id_column . '=' . db_input($this->getId()) . ' LIMIT 1';
     if (db_query($sql) && ($num = db_affected_rows())) {
         return $num;
     }
     $this->addError('Error deleting item!');
     return false;
 }
예제 #12
0
function delete_announcement($announcement_id)
{
    $query = "DELETE FROM announcement WHERE sequence_number = " . $announcement_id;
    $delete = db_query($query);
    if (db_affected_rows() > 0) {
        opendb_logger(OPENDB_LOG_INFO, __FILE__, __FUNCTION__, NULL, array($announcement_id));
        return TRUE;
    } else {
        opendb_logger(OPENDB_LOG_ERROR, __FILE__, __FUNCTION__, db_error(), array($announcement_id));
        return FALSE;
    }
}
예제 #13
0
 function set($key, $value, $expire = CACHE_PERMANENT, $headers = NULL)
 {
     unset($this->content[$key]);
     $serialized = 0;
     if (!is_string($value)) {
         $value = serialize($value);
         $serialized = 1;
     }
     $created = time();
     db_query("UPDATE {" . $this->name . "} SET data = %b, created = %d, expire = %d, headers = '%s', serialized = %d WHERE cid = '%s'", $value, $created, $expire, $headers, $serialized, $key);
     if (!db_affected_rows()) {
         @db_query("INSERT INTO {" . $this->name . "} (cid, data, created, expire, headers, serialized) VALUES ('%s', %b, %d, %d, '%s', %d)", $key, $value, $created, $expire, $headers, $serialized);
     }
 }
function saveuser()
{
    global $session, $dbqueriesthishit, $baseaccount, $companions, $chatloc;
    if (defined("NO_SAVE_USER")) {
        return false;
    }
    if ($session['loggedin'] && $session['user']['acctid'] != "") {
        // Any time we go to save a user, make SURE that any tempstat changes
        // are undone.
        restore_buff_fields();
        if (!$chatloc) {
            $session['user']['chatloc'] = 0;
        }
        $session['user']['allowednavs'] = serialize($session['allowednavs']);
        $session['user']['bufflist'] = serialize($session['bufflist']);
        if (isset($companions) && is_array($companions)) {
            $session['user']['companions'] = serialize($companions);
        }
        $sql = "";
        reset($session['user']);
        while (list($key, $val) = each($session['user'])) {
            if (is_array($val)) {
                $val = serialize($val);
            }
            //only update columns that have changed.
            if ($baseaccount[$key] != $val) {
                $sql .= "{$key}='" . addslashes($val) . "', ";
            }
        }
        //due to the change in the accounts table -> moved output -> save everyhit
        $sql .= "laston='" . date("Y-m-d H:i:s") . "', ";
        $sql = substr($sql, 0, strlen($sql) - 2);
        $sql = "UPDATE " . db_prefix("accounts") . " SET " . $sql . " WHERE acctid = " . $session['user']['acctid'];
        db_query($sql);
        if (isset($session['output']) && $session['output']) {
            $sql_output = "UPDATE " . db_prefix("accounts_output") . " SET output='" . addslashes($session['output']) . "' WHERE acctid={$session['user']['acctid']};";
            $result = db_query($sql_output);
            if (db_affected_rows($result) < 1) {
                $sql_output = "REPLACE INTO " . db_prefix("accounts_output") . " VALUES ({$session['user']['acctid']},'" . addslashes($session['output']) . "');";
                db_query($sql_output);
            }
        }
        unset($session['bufflist']);
        $session['user'] = array("acctid" => $session['user']['acctid'], "login" => $session['user']['login']);
        write_module_prefs();
        write_item_prefs();
        //$_SESSION['session'] = $session;
        //session_write_close();
    }
}
예제 #15
0
function sys_maintenance()
{
    global $config;
    $bashing_time_limit = SN_TIME_NOW - $config->fleet_bashing_scope;
    // TODO: Move here some cleaning procedures from admin/maintenance.php
    // TODO: Add description of operation to log it
    $queries = array(array('query' => "DELETE FROM {{bashing}} WHERE bashing_time < {$bashing_time_limit};", 'result' => false, 'error' => '', 'affected_rows' => 0), array('query' => 'DELETE FROM {{aks}} WHERE `id` NOT IN (SELECT DISTINCT `fleet_group` FROM {{fleets}});', 'result' => false, 'error' => '', 'affected_rows' => 0));
    foreach ($queries as &$query) {
        $query['result'] = doquery($query['query']);
        $query['error'] = db_error();
        $query['affected_rows'] = db_affected_rows();
    }
    return $queries;
}
예제 #16
0
function db_remove_all_interest_level($user_id)
{
    $query = "DELETE FROM user_item_interest" . " WHERE user_id = '{$user_id}'";
    $update = db_query($query);
    // We should not treat updates that were not actually updated because value did not change as failures.
    $rows_affected = db_affected_rows();
    if ($update && $rows_affected !== -1) {
        if ($rows_affected > 0) {
            opendb_logger(OPENDB_LOG_INFO, __FILE__, __FUNCTION__, NULL, array($user_id));
        }
        return TRUE;
    } else {
        opendb_logger(OPENDB_LOG_ERROR, __FILE__, __FUNCTION__, db_error(), array($user_id));
        return FALSE;
    }
}
 protected function updateSpecificProperties($row)
 {
     $db_update_needed = false;
     foreach (array('field_base') as $prop) {
         if (isset($row[$prop]) && $this->{$prop} != $row[$prop]) {
             $this->{$prop} = $row[$prop];
             $db_update_needed = true;
         }
     }
     if ($db_update_needed) {
         $sql = sprintf("UPDATE plugin_graphontrackers_pie_chart SET\n                       field_base = '%s'\n                       WHERE id = %d", db_es($this->field_base), db_ei($this->id));
         $res = db_query($sql);
         return db_affected_rows($res);
     }
     return false;
 }
예제 #18
0
function antiddos_updateDomainStatus()
{
    $appname = @mysql_escape_string($_REQUEST['appname']);
    $domain_status = @mysql_escape_string($_REQUEST['domain_status']);
    if (!$appname || $domain_status !== "0" && $domain_status !== "1") {
        die_(1, "'appname' and 'domain_status' is required, 'domain_status' value must be 0 or 1");
    }
    $retval = db_run_sql("update anti_ddos set domain_status={$domain_status} where appname='{$appname}'");
    if ($retval === False) {
        die_(1, db_last_error());
    }
    if (db_affected_rows() == 0) {
        die_(1, "no records updated");
    }
    die_(0);
}
function db_query($sql, $die = true)
{
    //debug("SQL Query: ".$sql);
    if (defined("DB_NODB") && !defined("LINK")) {
        return array();
    }
    global $session, $dbinfo, $allqueries, $allqueriesbyfile;
    $dbinfo['queriesthishit']++;
    $fname = DBTYPE . "_query";
    $starttime = getmicrotime();
    $thisquery = array();
    $thisquery['query'] = $sql;
    $r = $fname($sql, LINK);
    if (!$r && $die === true) {
        if (defined("IS_INSTALLER")) {
            return array();
        } else {
            if ($session['user']['superuser'] & SU_DEVELOPER || 1) {
                require_once "lib/show_backtrace.php";
                die("<pre>" . HTMLEntities($sql, ENT_COMPAT, getsetting("charset", "ISO-8859-1")) . "</pre>" . db_error(LINK) . show_backtrace());
            } else {
                die("A most bogus error has occurred.  I apologise, but the page you were trying to access is broken.  Please use your browser's back button and try again.");
            }
        }
    }
    $endtime = getmicrotime();
    if ($endtime - $starttime >= 1.0 && $session['user']['superuser'] & SU_DEBUG_OUTPUT) {
        $s = trim($sql);
        if (strlen($s) > 800) {
            $s = substr($s, 0, 400) . " ... " . substr($s, strlen($s) - 400);
        }
        debug("Slow Query (" . round($endtime - $starttime, 2) . "s): " . HTMLEntities($s, ENT_COMPAT, getsetting("charset", "ISO-8859-1")) . "`n");
    }
    $thisquery['time'] = round($endtime - $starttime, 5);
    $trace = debug_backtrace();
    $thisquery['file1'] = $trace[0]['file'];
    $thisquery['line1'] = $trace[0]['line'];
    $thisquery['file2'] = $trace[1]['file'];
    $thisquery['line2'] = $trace[1]['line'];
    $allqueries[] = $thisquery;
    $allqueriesbyfile[$thisquery['file1']]['time'] += $thisquery['time'];
    $allqueriesbyfile[$thisquery['file1']]['hits'] += 1;
    unset($dbinfo['affected_rows']);
    $dbinfo['affected_rows'] = db_affected_rows();
    $dbinfo['querytime'] += $endtime - $starttime;
    return $r;
}
예제 #20
0
function db_transaction_update($f_arrUpdates, $f_szIfField, $f_szUpdateField)
{
    db_query("BEGIN;");
    $szIfClause = '__N__';
    $szIfClause0 = 'IF(' . $f_szIfField . '=__X__,__Y__,__N__)';
    foreach ($f_arrUpdates as $x => $y) {
        $szIfClause = str_replace('__N__', str_replace('__X__', $x, str_replace('__Y__', $y, $szIfClause0)), $szIfClause);
    }
    $szIfClause = str_replace('__N__', '0', $szIfClause);
    db_query('UPDATE planet_resources SET ' . $f_szUpdateField . ' = ' . $f_szUpdateField . ' - ' . $szIfClause . ' WHERE ' . $f_szUpdateField . ' >= ' . $szIfClause . ' AND planet_id = 1;');
    if (count($f_arrUpdates) === (int) db_affected_rows()) {
        db_query("COMMIT;");
        return true;
    }
    db_query("ROLLBACK;");
    return false;
}
예제 #21
0
 function setPassphrase($phrase, &$errors)
 {
     global $cfg;
     if (!$phrase) {
         $errors['phrase'] = 'Requerida';
     } elseif (str_word_count($_POST['phrase']) < 3) {
         $errors['phrase'] = 'Debe ser de tres palabras.';
     } elseif (!strcmp($cfg->getAPIPassphrase(), $phrase)) {
         $errors['phrase'] = 'Ya existe';
     } else {
         $sql = 'UPDATE ' . CONFIG_TABLE . ' SET updated=NOW(), api_passphrase=' . db_input($phrase) . ' WHERE id=' . db_input($cfg->getId());
         if (db_query($sql) && db_affected_rows()) {
             $cfg->reload();
             return true;
         }
     }
     return false;
 }
예제 #22
0
 function setPassphrase($phrase, &$errors)
 {
     global $cfg;
     if (!$phrase) {
         $errors['phrase'] = 'Obrigatório';
     } elseif (str_word_count($_POST['phrase']) < 3) {
         $errors['phrase'] = 'Deve ter, pelo menos, 3 palavras longas.';
     } elseif (!strcmp($cfg->getAPIPassphrase(), $phrase)) {
         $errors['phrase'] = 'Já está definido';
     } else {
         $sql = 'UPDATE ' . CONFIG_TABLE . ' SET updated=NOW(), api_passphrase=' . db_input($phrase) . ' WHERE id=' . db_input($cfg->getId());
         if (db_query($sql) && db_affected_rows()) {
             $cfg->reload();
             return true;
         }
     }
     return false;
 }
예제 #23
0
 function setPassphrase($phrase, &$errors)
 {
     global $cfg;
     if (!$phrase) {
         $errors['phrase'] = 'Required';
     } elseif (str_word_count($_POST['phrase']) < 3) {
         $errors['phrase'] = 'Must be at least 3 words long.';
     } elseif (!strcmp($cfg->getAPIPassphrase(), $phrase)) {
         $errors['phrase'] = 'Already set';
     } else {
         $sql = 'UPDATE ' . CONFIG_TABLE . ' SET updated=NOW(), api_passphrase=' . db_input($phrase) . ' WHERE id=' . db_input($cfg->getId());
         if (db_query($sql) && db_affected_rows()) {
             $cfg->reload();
             return true;
         }
     }
     return false;
 }
예제 #24
0
/**
*
* This function changes rpg_points for user
* You should ALWAYS use this function and NEVER directly change rpg_points by yourself
* Otherwise refferal system wouldn't work and no logs would be made
* "No logs" means you can never check if the user cheating with DM
*
* @package rpg
*
*/
function rpg_points_change($user_id, $change_type, $dark_matter, $comment = false, $already_changed = false)
{
    global $debug, $config, $dm_change_legit, $user;
    if (!$user_id) {
        return false;
    }
    $dm_change_legit = true;
    $sn_data_dark_matter_db_name = pname_resource_name(RES_DARK_MATTER);
    if ($already_changed) {
        $rows_affected = 1;
    } else {
        $dark_matter_total = $dark_matter > 0 ? $dark_matter : 0;
        db_user_set_by_id($user_id, "`{$sn_data_dark_matter_db_name}` = `{$sn_data_dark_matter_db_name}` + '{$dark_matter}', `dark_matter_total` = `dark_matter_total` + '{$dark_matter_total}'");
        $rows_affected = db_affected_rows();
    }
    if ($rows_affected || !$dark_matter) {
        $page_url = db_escape($_SERVER['SCRIPT_NAME']);
        if (is_array($comment)) {
            $comment = call_user_func_array('sprintf', $comment);
        }
        $comment = db_escape($comment);
        $row = db_user_by_id($user_id, false, 'username');
        $row['username'] = db_escape($row['username']);
        doquery("INSERT INTO {{log_dark_matter}} (`log_dark_matter_username`, `log_dark_matter_reason`,\n        `log_dark_matter_amount`, `log_dark_matter_comment`, `log_dark_matter_page`, `log_dark_matter_sender`)\n      VALUES (\n        '{$row['username']}', {$change_type},\n        {$dark_matter}, '{$comment}', '{$page_url}', {$user_id}\n      );");
        if ($user['id'] == $user_id) {
            $user['dark_matter'] += $dark_matter;
        }
        if ($dark_matter > 0) {
            $old_referral = doquery("SELECT * FROM {{referrals}} WHERE `id` = {$user_id} LIMIT 1 FOR UPDATE;", '', true);
            if ($old_referral['id']) {
                doquery("UPDATE {{referrals}} SET dark_matter = dark_matter + '{$dark_matter}' WHERE `id` = {$user_id} LIMIT 1;");
                $new_referral = doquery("SELECT * FROM {{referrals}} WHERE `id` = {$user_id} LIMIT 1;", '', true);
                $partner_bonus = floor($new_referral['dark_matter'] / $config->rpg_bonus_divisor) - ($old_referral['dark_matter'] >= $config->rpg_bonus_minimum ? floor($old_referral['dark_matter'] / $config->rpg_bonus_divisor) : 0);
                if ($partner_bonus > 0 && $new_referral['dark_matter'] >= $config->rpg_bonus_minimum) {
                    rpg_points_change($new_referral['id_partner'], RPG_REFERRAL, $partner_bonus, "Incoming From Referral ID {$user_id}");
                }
            }
        }
    } else {
        $debug->warning("Error adjusting Dark Matter for player ID {$user_id} (Player Not Found?) with {$dark_matter}. Reason: {$comment}", 'Dark Matter Change', 402);
    }
    $dm_change_legit = false;
    return $rows_affected;
}
예제 #25
0
function update_role_permissions($role_name, $permissions_r)
{
    $role_name = addslashes($role_name);
    db_query("DELETE FROM s_role_permission WHERE role_name = '{$role_name}'");
    if (strlen($role_name) > 0 && is_array($permissions_r)) {
        reset($permissions_r);
        while (list($permission_name, $permission_r) = each($permissions_r)) {
            $enabled_ind = validate_ind_column($permission_r['enabled_ind']);
            $remember_me_ind = validate_ind_column($permission_r['remember_me_ind']);
            if ($enabled_ind == 'Y') {
                $query = "INSERT INTO s_role_permission(role_name, permission_name, remember_me_ind) \n\t\t\t\t\tVALUES('{$role_name}', '{$permission_name}', '" . $remember_me_ind . "')";
                $insert = db_query($query);
                if ($insert && db_affected_rows() > 0) {
                    opendb_logger(OPENDB_LOG_ERROR, __FILE__, __FUNCTION__, NULL, array($role_name, $permission_name, $remember_me_ind));
                } else {
                    opendb_logger(OPENDB_LOG_ERROR, __FILE__, __FUNCTION__, db_error(), array($role_name, $permission_name, $remember_me_ind));
                }
            }
        }
    }
}
예제 #26
0
파일: db.php 프로젝트: kmewhort/nomus
 function set($key, $value, $expire = CACHE_PERMANENT, $headers = NULL)
 {
     // Create new cache object.
     $cache = new stdClass();
     $cache->cid = $key;
     $cache->created = time();
     $cache->headers = $headers;
     $cache->expire = $expire;
     if (!is_string($value)) {
         $cache->serialized = TRUE;
         $cache->data = serialize($value);
     } else {
         $cache->serialized = FALSE;
         $cache->data = $value;
     }
     db_query("UPDATE {" . $this->name . "} SET data = %b, created = %d, expire = %d, headers = '%s', serialized = %d WHERE cid = '%s'", $cache->data, $cache->created, $cache->expire, $cache->headers, $cache->serialized, $key);
     if (!db_affected_rows()) {
         @db_query("INSERT INTO {" . $this->name . "} (cid, data, created, expire, headers, serialized) VALUES ('%s', %b, %d, %d, '%s', %d)", $key, $cache->data, $cache->created, $cache->expire, $cache->headers, $cache->serialized);
     }
     parent::set($key, $cache);
 }
function savesetting($settingname, $value)
{
    global $settings;
    loadsettings();
    if (!isset($settings[$settingname]) && $value) {
        $sql = "INSERT INTO " . db_prefix("settings") . " (setting,value) VALUES (\"" . addslashes($settingname) . "\",\"" . addslashes($value) . "\")";
    } else {
        if (isset($settings[$settingname])) {
            $sql = "UPDATE " . db_prefix("settings") . " SET value=\"" . addslashes($value) . "\" WHERE setting=\"" . addslashes($settingname) . "\"";
        } else {
            return false;
        }
    }
    db_query($sql);
    $settings[$settingname] = $value;
    invalidatedatacache("game-settings");
    if (db_affected_rows() > 0) {
        return true;
    } else {
        return false;
    }
}
function savesetting(string $settingname, $value)
{
    global $settings;
    $table = db_prefix('settings');
    loadsettings();
    if (!isset($settings[$settingname])) {
        $sql = db_query("INSERT INTO {$table} (setting, value)\n                VALUES ('" . addslashes($settingname) . "', '" . addslashes($value) . "')");
    } else {
        if (isset($settings[$settingname])) {
            $sql = db_query("UPDATE {$table} SET value = '" . addslashes($value) . "' WHERE setting = '" . addslashes($settingname) . "'");
        } else {
            return false;
        }
    }
    $settings[$settingname] = $value;
    invalidatedatacache('game-settings');
    if (db_affected_rows() > 0) {
        return true;
    } else {
        return false;
    }
}
/**
 * Execute a SQLite query.
 * @return void
 */
function db_query(string $sql = '', bool $die = true)
{
    global $session, $dbinfo, $sqlite_resource;
    if (defined("DB_NODB") && !defined("LINK") && !is_object($sqlite_resource)) {
        return [];
    }
    $dbinfo['queriesthishit']++;
    $starttime = getmicrotime();
    //var_dump($sql);
    if (IS_INSTALLER) {
        $r = @$sqlite_resource->query($sql);
    } else {
        $r = $sqlite_resource->query($sql);
    }
    if (!$r && $die === true) {
        if (defined("IS_INSTALLER")) {
            return [];
        } else {
            if ($session['user']['superuser'] & SU_DEVELOPER || 1) {
                require_once "lib/show_backtrace.php";
                die("<pre>" . HTMLEntities($sql, ENT_COMPAT, getsetting("charset", "ISO-8859-1")) . "</pre>" . db_error(LINK) . show_backtrace());
            } else {
                die("Please use your browser's back button and try again.");
            }
        }
    }
    $endtime = getmicrotime();
    if ($endtime - $starttime >= 1.0 && $session['user']['superuser'] & SU_DEBUG_OUTPUT) {
        $s = trim($sql);
        if (strlen($s) > 800) {
            $s = substr($s, 0, 400) . " ... " . substr($s, strlen($s) - 400);
        }
        debug("Slow Query (" . round($endtime - $starttime, 2) . "s): " . HTMLEntities($s, ENT_COMPAT, getsetting("charset", "ISO-8859-1")) . "`n");
    }
    unset($dbinfo['affected_rows']);
    $dbinfo['affected_rows'] = db_affected_rows();
    $dbinfo['querytime'] += $endtime - $starttime;
    return $r;
}
예제 #30
0
function WelcomeTopicSettings2()
{
    global $db_prefix;
    $boardselect = (int) $_REQUEST['boardselect'];
    $welcome_postername = str_replace('"', '', $_REQUEST['welcome_postername']);
    $welcome_postername = str_replace("'", '', $welcome_postername);
    $welcome_postername = str_replace('\\', '', $welcome_postername);
    $welcome_postername = htmlspecialchars($welcome_postername, ENT_QUOTES);
    // Get the topic name
    // Lookup the Memeber ID of the postername
    $memid = 0;
    $dbresult = db_query("\n\tSELECT \n\t\trealName, ID_MEMBER \n\tFROM {$db_prefix}members \n\tWHERE realName = '{$welcome_postername}' OR memberName = '{$welcome_postername}'  LIMIT 1", __FILE__, __LINE__);
    $row = mysql_fetch_assoc($dbresult);
    mysql_free_result($dbresult);
    if (db_affected_rows() != 0) {
        $memid = $row['ID_MEMBER'];
    }
    // Save the setting information
    updateSettings(array('welcome_boardid' => $boardselect, 'welcome_membername' => $welcome_postername, 'welcome_memberid' => $memid));
    // Redirect to Welcome Topic settings page
    redirectexit('action=welcome;sa=admin');
}