Esempio n. 1
0
function install_uc_server()
{
    global $db, $dbhost, $dbuser, $dbpw, $dbname, $tablepre, $username, $password, $email;
    $ucsql = file_get_contents(ROOT_PATH . './uc_server/install/uc.sql');
    $uctablepre = $tablepre . 'ucenter_';
    $ucsql = str_replace(' uc_', ' ' . $uctablepre, $ucsql);
    $ucsql && runucquery($ucsql, $uctablepre);
    $appauthkey = _generate_key();
    $ucdbhost = $dbhost;
    $ucdbname = $dbname;
    $ucdbuser = $dbuser;
    $ucdbpw = $dbpw;
    $ucdbcharset = DBCHARSET;
    $uccharset = CHARSET;
    $pathinfo = pathinfo($_SERVER['PHP_SELF']);
    $pathinfo['dirname'] = substr($pathinfo['dirname'], 0, -8);
    $appurl = 'http://' . preg_replace("/\\:\\d+/", '', $_SERVER['HTTP_HOST']) . ($_SERVER['SERVER_PORT'] && $_SERVER['SERVER_PORT'] != 80 ? ':' . $_SERVER['SERVER_PORT'] : '') . $pathinfo['dirname'];
    $ucapi = $appurl . '/uc_server';
    $ucip = '';
    $app_tagtemplates = 'apptagtemplates[template]=' . urlencode('<a href="{url}" target="_blank">{subject}</a>') . '&' . 'apptagtemplates[fields][subject]=' . urlencode($lang['tagtemplates_subject']) . '&' . 'apptagtemplates[fields][uid]=' . urlencode($lang['tagtemplates_uid']) . '&' . 'apptagtemplates[fields][username]=' . urlencode($lang['tagtemplates_username']) . '&' . 'apptagtemplates[fields][dateline]=' . urlencode($lang['tagtemplates_dateline']) . '&' . 'apptagtemplates[fields][url]=' . urlencode($lang['tagtemplates_url']);
    $db->query("INSERT INTO {$uctablepre}applications SET name='Discuz! Board', url='{$appurl}', ip='{$ucip}', authkey='{$appauthkey}', synlogin='******', charset='{$charset}', dbcharset='{$dbcharset}', type='DISCUZX', recvnote='1', tagtemplates='{$apptagtemplates}'", $link);
    $appid = $db->insert_id($link);
    $db->query("ALTER TABLE {$uctablepre}notelist ADD COLUMN app{$appid} tinyint NOT NULL");
    $config = array($appauthkey, $appid, $ucdbhost, $ucdbname, $ucdbuser, $ucdbpw, $ucdbcharset, $uctablepre, $uccharset, $ucapi, $ucip);
    save_uc_config($config, ROOT_PATH . './config/config_ucenter.php');
    $salt = substr(uniqid(rand()), -6);
    $passwordmd5 = md5(md5($password) . $salt);
    $db->query("INSERT INTO {$uctablepre}members SET {$sqladd} username='******', password='******', email='{$email}', regip='hidden', regdate='" . time() . "', salt='{$salt}'");
    $uid = $db->insert_id();
    $db->query("INSERT INTO {$uctablepre}memberfields SET uid='{$uid}'");
    $db->query("INSERT INTO {$uctablepre}admins SET\r\n\t\tuid='{$uid}',\r\n\t\tusername='******',\r\n\t\tallowadminsetting='1',\r\n\t\tallowadminapp='1',\r\n\t\tallowadminuser='******',\r\n\t\tallowadminbadword='1',\r\n\t\tallowadmincredits='1',\r\n\t\tallowadmintag='1',\r\n\t\tallowadminpm='1',\r\n\t\tallowadmindomain='1',\r\n\t\tallowadmindb='1',\r\n\t\tallowadminnote='1',\r\n\t\tallowadmincache='1',\r\n\t\tallowadminlog='1'");
    uc_write_config($config, ROOT_PATH . './uc_server/data/config.inc.php', $password);
    //vot	@unlink(ROOT_PATH.'./uc_server/install/index.php');
    @unlink(ROOT_PATH . './uc_server/data/cache/settings.php');
    @touch(ROOT_PATH . './uc_server/data/upgrade.lock');
    @touch(ROOT_PATH . './uc_server/data/install.lock');
    dir_clear(ROOT_PATH . './uc_server/data/cache');
    dir_clear(ROOT_PATH . './uc_server/data/view');
}
Esempio n. 2
0
                 $error_admin['email'] = 'admin_email_invalid';
             } else {
                 $salt = substr(uniqid(rand()), -6);
                 $password = md5(md5($password1) . $salt);
                 $db->query("INSERT INTO {$uctablepre}members SET {$sqladd} username='******', password='******', email='{$email}', regip='hidden', regdate='" . time() . "', salt='{$salt}'");
                 $uid = $db->insert_id();
                 $db->query("INSERT INTO {$uctablepre}memberfields SET uid='{$uid}'");
             }
         } else {
             empty($username) && ($error_admin['username'] = 1);
             empty($email) && ($error_admin['email'] = 1);
             empty($password1) && ($error_admin['password1'] = 1);
             $password1 != $password2 && ($error_admin['password2'] = 1);
         }
         $db->query("INSERT INTO {$uctablepre}admins SET\r\n\t\t\t\tuid='{$uid}',\r\n\t\t\t\tusername='******',\r\n\t\t\t\tallowadminsetting='1',\r\n\t\t\t\tallowadminapp='1',\r\n\t\t\t\tallowadminuser='******',\r\n\t\t\t\tallowadminbadword='1',\r\n\t\t\t\tallowadmincredits='1',\r\n\t\t\t\tallowadmintag='1',\r\n\t\t\t\tallowadminpm='1',\r\n\t\t\t\tallowadmindomain='1',\r\n\t\t\t\tallowadmindb='1',\r\n\t\t\t\tallowadminnote='1',\r\n\t\t\t\tallowadmincache='1',\r\n\t\t\t\tallowadminlog='1'");
         uc_write_config($config, DISCUZ_ROOT . './uc_server/data/config.inc.php', $password1);
         @unlink(DISCUZ_ROOT . './uc_server/data/cache/settings.php');
     }
     if (!$error_config && !$error_admin) {
         $step++;
         redirect("{$self}?step={$step}&uid={$uid}&username="******"&email=" . rawurlencode($email) . "&password=" . md5($password1));
     }
 } else {
     $email = '*****@*****.**';
     $username = '******';
     $password = $password2 = '';
 }
 if (!$error_config) {
     show_tips('tips_db_config');
 } else {
     show_error('tips_db_config', $error_config);