예제 #1
0
function getattachdir()
{
    global $_SCONFIG, $_SGLOBAL;
    switch ($_SCONFIG['attachmentdirtype']) {
        case 'year':
            $dirpatharr[] = sgmdate($_SGLOBAL['timestamp'], 'Y');
            break;
        case 'month':
            $dirpatharr[] = sgmdate($_SGLOBAL['timestamp'], 'Y');
            $dirpatharr[] = sgmdate($_SGLOBAL['timestamp'], 'm');
            break;
        case 'day':
            $dirpatharr[] = sgmdate($_SGLOBAL['timestamp'], 'Y');
            $dirpatharr[] = sgmdate($_SGLOBAL['timestamp'], 'm');
            $dirpatharr[] = sgmdate($_SGLOBAL['timestamp'], 'd');
            break;
        case 'md5':
            $md5string = md5($_SGLOBAL['supe_uid'] . '-' . $_SGLOBAL['timestamp'] . '-' . $_SGLOBAL['_num']);
            $dirpatharr[] = substr($md5string, 0, 1);
            $dirpatharr[] = substr($md5string, 1, 1);
            break;
        default:
            break;
    }
    $dirs = A_DIR;
    $subarr = array();
    foreach ($dirpatharr as $value) {
        $dirs .= '/' . $value;
        if (smkdir($dirs)) {
            $subarr[] = $value;
        } else {
            break;
        }
    }
    return implode('/', $subarr);
}
예제 #2
0
     $query = $_SGLOBAL['db']->query("SHOW FULL COLUMNS FROM " . tname($_POST['modelname'] . 'items'), 'SILENT');
 } else {
     $query = $_SGLOBAL['db']->query("SHOW COLUMNS FROM " . tname($_POST['modelname'] . 'items'), 'SILENT');
 }
 while ($field = @$_SGLOBAL['db']->fetch_array($query)) {
     $tableinfo[$field['Field']] = $field;
 }
 if (empty($tableinfo['hot'])) {
     @$_SGLOBAL['db']->query('ALTER TABLE ' . tname($_POST['modelname'] . 'items') . ' ADD COLUMN hot mediumint(8) unsigned NOT NULL DEFAULT \'0\'');
 }
 //µ¼ÈëÄ£ÐÍÎļþ
 if (!empty($zipfilearr)) {
     $to = S_ROOT . './model/data/' . $_POST['modelname'] . '/';
     if (!is_dir($to)) {
         @smkdir($to);
         @smkdir($to . 'images/');
     }
     foreach ($zipfilearr as $tmpvalue) {
         if (!preg_match('/\\.sql$/i', $tmpvalue)) {
             if (file_exists($datadir . $tmpvalue)) {
                 if (preg_match('/\\.html\\.php$/i', $tmpvalue)) {
                     $tofile = $to . $tmpvalue;
                 } else {
                     $tofile = $to . 'images/' . $tmpvalue;
                 }
                 if (!@copy($datadir . $tmpvalue, $tofile)) {
                     $copyerrorarr = 'write_error';
                     break;
                 }
             } else {
                 $copyerrorarr[] = $tmpvalue;