Перейти к контенту

Ульяна

Пользователи
  • Число публикаций

    78
  • Регистрация

  • Последнее посещение

  • Дней в топе

    1

Ульяна последний раз побеждал 19 Декабря 2012

Ульяна - автор самых популярных публикаций!

Достижения Ульяна

  1. Что сейчас: ВЕРСИЯ PHP: 5.2.10 ВЕРСИЯ SQL: MYSQL 4.1.22 Версия форума v2.0.3 При попытках перейти на более новую версию SQL (это было года 4 назад) возникала какая-то ошибка и было невозможно работать с форумом. Что за ошибка - уже не помню... Может ли кто-то корректно перенести на современную версию SQL? Сколько это будет стоить?
  2. Я тут подумала,ч то было бы здорово дать пользовтелям возможность дарить картинки с подарками друг другу. Есть ли мод, который позволяет дарить картики , загруженные адвином форума - другим форумчанам?
  3. Вопрос: если почтовый сервер хостера не принимает письмо, так как слишком много писем в очереди, то скрипт самого форума повторяет попытку отправить эти письма позже или они(эти письма) теряются безвозвратно? история вопроса: отправила рассылку с форума по 7288 форумчанам. хостер говорит, что форум совершил 7500(около того) попыток отправки писем. при этом сам сервер хостера пропустил только 5900(приблизительно). сапортер хостера мне не может ответить на вопрос - выполнял ли скрипт форума повторные попытки или нет.
  4. Ульяна

    [2.3.x]Advanced Bot Defence (для 2.2.х)

    Черех браузер> http://АдресВашегоФорума/install.php Спасибо... что-то я совсем зарапортовалась.... вместо http://АдресВашегоФорума/install.php пыталась запустить http://АдресВашегоСайта/install.php что совершенно разные вещи
  5. Ульяна

    [2.3.x]Advanced Bot Defence (для 2.2.х)

    Простите за очень простой вопрос.. но нуждаюсь в ответе на него... В инструкции написано: II этап - Инсталяция Копируем bot_defence/install.php в корень форума, запускаем, после отработки скрипта не забываем его удалить. Вопрос: "запускаем" - это КАК? Что именно надо сделать, чтобы запустилось? И скажите - он в процессе инсталяции ничего не будет меня спрашивать?
  6. Кол-во гостей - всегда 1, после переноса на новый хостинг... При просмотре " Посетители, находящиеся на форуме в данный момент" покаывается везде один и тот же, локальный IP. Где что поменять, чтобы адекватное кол-во гостей показывалось? Кстати во еще какая вещь: иногда я точно знаю, что есть еще пользователи, но браузер упорно показывает, что всего двое я и гость..
  7. Ульяна

    [2.3.x]Глобальные объявления v2

    у там только: Invision Gallery Подробнее Invision Community Blog Подробнее Invision Copyright Removal Подробнее AddOnChat Подробнее Invision Chat (ParaChat) Подробнее
  8. Ульяна

    [2.3.x]Глобальные объявления v2

    Мо жет быть и все нормально... только я функциональности не вижу... Где доступ к созданию объявления???? У меня есть только вот такие меню: ПомощьПоискПользователиКалендарь Дополнительные параметры (вот , кстати, сюда скопировалось "Дополнительные параметры", а в реальности на панели такого меню нет) И вот такие: Админцентр · Личные данные · Новые сообщения · Помощник · Друзья · Личных сообщений: 0 И где должен появиться новый пункт меню для Глобальных объявлений?
  9. Ульяна

    [2.3.x]Глобальные объявления v2

    Устанавливала мод... он выдал: Ошибка чтения XML файла Программе установки не удается выполнить чтение файла install_content/globalmess_settings.xml. Возможно, структура файла была изменена или повреждена. Вы можете продолжить установку мода, нажав на кнопку Далее. После окончания установки запустите Мастер устранения ошибок для устранения данной ошибки. Скажите, где запустить этого Мастера?
  10. Народ!!! Помочь кто-то может по данному вопросу?
  11. Можно. И нечего этому не мешает. Хотя грамотнее, сделать разными - отображаемое имя и логин. Особенно для админа. Опа... хочу... для этого нужен мод какой-то? ссылку на него или имя можно? (у меня по умолчанию вроде не предалагется отдельно имя и отдельно логин...) Можно. И нечего этому не мешает. Хотя грамотнее, сделать разными - отображаемое имя и логин. Особенно для админа. Опа... хочу... для этого нужен мод какой-то? ссылку на него или имя можно? (у меня по умолчанию вроде не предалагется отдельно имя и отдельно логин...) Спасибо, нашла где это настраивается, уже не надо отвечать...
  12. При нажатии на кнопку "создать" выдает вот что: - // Got an ID? //----------------------------------------- if ( ! is_array( $attach_rel_ids ) or ! count( $attach_rel_ids ) ) { return FALSE; } //----------------------------------------- // Make sure we've got permission //----------------------------------------- if ( $this->plugin->return_bulk_remove_permission( $attach_rel_ids ) === TRUE ) { //----------------------------------------- // Get stuff //----------------------------------------- $this->ipsclass->DB->build_query( array( 'select' => '*', 'from' => 'attachments', 'where' => 'attach_rel_id IN ('.implode(",",$attach_rel_ids).") AND attach_rel_module='".$this->type."'" ) ); $this->ipsclass->DB->exec_query(); while( $_row = $this->ipsclass->DB->fetch_row() ) { $attachments[ $_row['attach_id'] ] = $_row; } foreach( $attachments as $attach_id => $attachment ) { //----------------------------------------- // Remove from the filesystem //----------------------------------------- if ( $attachment['attach_location'] ) { @unlink( $this->_upload_path."/".$attachment['attach_location'] ); } if ( $attachment['attach_thumb_location'] ) { @unlink( $this->_upload_path."/".$attachment['attach_thumb_location'] ); } //----------------------------------------- // Allow the module to clean up any items //----------------------------------------- $this->plugin->remove_attachment_clean_up( $attachment ); } //----------------------------------------- // Remove from the DB //----------------------------------------- $this->ipsclass->DB->build_and_exec_query( array( 'delete' => 'attachments', 'where' => 'attach_rel_id IN ('.implode(",",$attach_rel_ids).") AND attach_rel_module='".$this->type."'" ) ); return TRUE; } else { return FALSE; } } /*-------------------------------------------------------------------------*/ // Remove uploaded file /*-------------------------------------------------------------------------*/ /** * Removes an attachment. */ function remove_attachment() { //----------------------------------------- // Got an ID? //----------------------------------------- if ( ! $this->attach_id ) { return FALSE; } //----------------------------------------- // Get DB row //----------------------------------------- $attachment = $this->ipsclass->DB->build_and_exec_query( array( 'select' => '*', 'from' => 'attachments', 'where' => 'attach_id='.$this->attach_id." AND attach_rel_module='".$this->type."'" ) ); if ( ! $attachment['attach_id'] ) { return FALSE; } //----------------------------------------- // Make sure we've got permission //----------------------------------------- if ( $this->plugin->return_remove_permission( $attachment ) === TRUE ) { //----------------------------------------- // Remove from the DB //----------------------------------------- $this->ipsclass->DB->build_and_exec_query( array( 'delete' => 'attachments', 'where' => 'attach_id='.$attachment['attach_id'] ) ); //----------------------------------------- // Remove from the filesystem //----------------------------------------- if ( $attachment['attach_location'] ) { @unlink( $this->_upload_path."/".$attachment['attach_location'] ); } if ( $attachment['attach_thumb_location'] ) { @unlink( $this->_upload_path."/".$attachment['attach_thumb_location'] ); } //----------------------------------------- // Allow the module to clean up any items //----------------------------------------- $this->plugin->remove_attachment_clean_up( $attachment ); return TRUE; } else { return FALSE; } } /*-------------------------------------------------------------------------*/ // Post Process upload /*-------------------------------------------------------------------------*/ /** * Converts post-key attachments into rel_id / rel_module attachments * by adding in the correct ID, etc */ function post_process_upload( $args=array() ) { if ( ! $this->attach_post_key or ! $this->attach_rel_id ) { return FALSE; } //----------------------------------------- // Got any to update? //----------------------------------------- $this->ipsclass->DB->do_update( 'attachments', array( 'attach_rel_id' => $this->attach_rel_id, 'attach_rel_module' => $this->type ), "attach_post_key='". $this->attach_post_key ."'" ); //----------------------------------------- // Update module specific? //----------------------------------------- return $this->plugin->post_process_upload( $this->attach_post_key, $this->attach_rel_id, $args ); } /*-------------------------------------------------------------------------*/ // Process upload /*-------------------------------------------------------------------------*/ /** * Uploads and saves file */ function process_upload() { //----------------------------------------- // INIT //----------------------------------------- $this->error = ''; $this->get_upload_form_settings(); //----------------------------------------- // Check upload dir //----------------------------------------- if ( ! $this->check_upload_dir() ) { if ( $this->error ) { return; } } //----------------------------------------- // Got attachment types? //----------------------------------------- if ( ! isset( $this->ipsclass->cache['attachtypes'] ) OR ! is_array( $this->ipsclass->cache['attachtypes'] ) ) { $this->ipsclass->cache['attachtypes'] = array(); $this->ipsclass->DB->simple_construct( array( 'select' => 'atype_extension,atype_mimetype,atype_post,atype_photo,atype_img', 'from' => 'attachments_type', 'where' => "atype_photo=1 OR atype_post=1" ) ); $this->ipsclass->DB->simple_exec(); while ( $r = $this->ipsclass->DB->fetch_row() ) { $this->ipsclass->cache['attachtypes'][ $r['atype_extension'] ] = $r; } } //----------------------------------------- // Can upload? //----------------------------------------- if ( ! $this->attach_stats['allow_uploads'] ) { $this->error = 'no_upload_permission'; return; } //----------------------------------------- // Set up array //----------------------------------------- $attach_data = array( 'attach_ext' => "", 'attach_file' => "", 'attach_location' => "", 'attach_thumb_location' => "", 'attach_hits' => 0, 'attach_date' => time(), 'attach_temp' => 0, 'attach_post_key' => $this->attach_post_key, 'attach_member_id' => $this->ipsclass->member['id'], 'attach_rel_id' => $this->attach_rel_id, 'attach_rel_module' => $this->type, 'attach_filesize' => 0, ); //----------------------------------------- // Load the library //----------------------------------------- require_once( KERNEL_PATH.'class_upload.php' ); $upload = new class_upload(); //----------------------------------------- // Set up the variables //----------------------------------------- $upload->out_file_name = $this->type.'-'.$this->ipsclass->member['id'].'-'.time(); $upload->out_file_dir = $this->upload_path; $upload->max_file_size = $this->attach_stats['max_single_upload'] ? $this->attach_stats['max_single_upload'] : 1000000000; $upload->make_script_safe = 1; $upload->force_data_ext = 'ipb'; //----------------------------------------- // Populate allowed extensions //----------------------------------------- if ( is_array( $this->ipsclass->cache['attachtypes'] ) and count( $this->ipsclass->cache['attachtypes'] ) ) { foreach( $this->ipsclass->cache['attachtypes'] as $idx => $data ) { $upload->allowed_file_ext[] = $data['atype_extension']; } } //----------------------------------------- // Upload... //----------------------------------------- $upload->upload_process(); //----------------------------------------- // Error? //----------------------------------------- if ( $upload->error_no ) { switch( $upload->error_no ) { case 1: // No upload $this->error = 'upload_no_file'; return $attach_data; break; case 2: // Invalid file ext $this->error = 'invalid_mime_type'; return $attach_data; break; case 3: // Too big... $this->error = 'upload_too_big'; return $attach_data; break; case 4: // Cannot move uploaded file $this->error = 'upload_failed'; return $attach_data; break; case 5: // Possible XSS attack (image isn't an image) $this->error = 'upload_failed'; return $attach_data; break; } } //----------------------------------------- // Still here? //----------------------------------------- if ( $upload->saved_upload_name and @file_exists( $upload->saved_upload_name ) ) { //----------------------------------------- // Strip off { } and [ ] //----------------------------------------- $upload->original_file_name = preg_replace( "#[\[\]\{\}]#", "", $upload->original_file_name ); $attach_data['attach_filesize'] = @filesize( $upload->saved_upload_name ); $attach_data['attach_location'] = $this->upload_dir . $upload->parsed_file_name; $attach_data['attach_file'] = $upload->original_file_name; $attach_data['attach_is_image'] = $upload->is_image; $attach_data['attach_ext'] = $upload->real_file_extension; if ( $attach_data['attach_is_image'] == 1 ) { require_once( KERNEL_PATH.'class_image.php' ); $image = new class_image(); $image->in_type = 'file'; $image->out_type = 'file'; $image->in_file_dir = $this->upload_path; $image->in_file_name = $upload->parsed_file_name; $image->desired_width = $this->settings['siu_width']; $image->desired_height = $this->settings['siu_height']; $image->gd_version = $this->ipsclass->vars['gd_version']; if ( $this->settings['siu_thumb'] ) { $thumb_data = $image->generate_thumbnail(); } if ( $thumb_data['thumb_location'] ) { $attach_data['attach_img_width'] = $thumb_data['original_width']; $attach_data['attach_img_height'] = $thumb_data['original_height']; $attach_data['attach_thumb_width'] = $thumb_data['thumb_width']; $attach_data['attach_thumb_height'] = $thumb_data['thumb_height']; $attach_data['attach_thumb_location'] = $this->upload_dir . $thumb_data['thumb_location']; } } //----------------------------------------- // Add into Database //----------------------------------------- $this->ipsclass->DB->do_insert( 'attachments', $attach_data ); $newid = $this->ipsclass->DB->get_insert_id(); return $newid; } } /*-------------------------------------------------------------------------*/ // Upload form stuff /*-------------------------------------------------------------------------*/ /** * Gets stuff required for the upload form */ function get_upload_form_settings() { //----------------------------------------- // Collect settings from the plug-in //----------------------------------------- $stats = $this->plugin->get_space_allowance( $this->attach_post_key ); //----------------------------------------- // Format and return... //----------------------------------------- $this->attach_stats['space_used'] = $stats['space_used']; $this->attach_stats['space_used_human'] = $this->ipsclass->size_format( $stats['space_used'] ); $this->attach_stats['total_space_allowed'] = $stats['total_space_allowed'] ? $stats['total_space_allowed'] : $stats['max_single_upload']; $this->attach_stats['max_single_upload'] = $stats['max_single_upload']; $this->attach_stats['max_single_upload_human'] = $this->attach_stats['max_single_upload'] ? $this->ipsclass->size_format( $stats['max_single_upload'] ) : $this->language[ 'unlimited' ]; $this->attach_stats['total_space_allowed_human'] = $this->attach_stats['total_space_allowed'] ? $this->ipsclass->size_format( $this->attach_stats['total_space_allowed'] ) : $this->language[ 'unlimited' ]; if ( $stats['space_allowed'] == 0 ) { //----------------------------------------- // Unlimited... //----------------------------------------- $this->attach_stats['allow_uploads'] = 1; $this->attach_stats['space_allowed'] = 'unlimited'; $this->attach_stats['space_allowed_human'] = $this->language[ 'unlimited' ]; $this->attach_stats['space_left'] = 'unlimited'; $this->attach_stats['space_left_human'] = $this->language[ 'unlimited' ]; $this->attach_stats['total_space_allowed_human'] = $this->language[ 'unlimited' ]; //$this->attach_stats['space_used_human'] = $this->language[ 'unlimited' ]; } else if ( $stats['space_allowed'] == -1 ) { //----------------------------------------- // None //----------------------------------------- $this->attach_stats['allow_uploads'] = 0; $this->attach_stats['space_allowed'] = 'not_allowed'; $this->attach_stats['space_allowed_human'] = $this->language[ 'not_allowed' ]; $this->attach_stats['space_left'] = 'not_allowed'; $this->attach_stats['space_left_human'] = $this->language[ 'not_allowed' ]; } else { //----------------------------------------- // Set figure //----------------------------------------- $this->attach_stats['allow_uploads'] = 1; $this->attach_stats['space_left'] = $stats['space_left']; $this->attach_stats['space_left_human'] = $this->ipsclass->size_format( $stats['space_left'] ); } } /*-------------------------------------------------------------------------*/ // Check uploads dir /*-------------------------------------------------------------------------*/ /** * Checks the upload dir * See above. It's not rocket science * * @return void */ function check_upload_dir() { //----------------------------------------- // Check dir exists... //----------------------------------------- if ( ! file_exists( $this->upload_path ) ) { if ( @mkdir( $this->upload_path, 0777 ) ) { @chmod( $this->upload_path, 0777 ); } else { $this->error = "no_upload_dir"; return false; } } else if ( ! is_writeable( $this->upload_path ) ) { $this->error = "no_upload_dir_perms"; return false; } //----------------------------------------- // Try and create a new monthly dir // eg: monthly_12_2005 //----------------------------------------- $this_month = "monthly_" . gmdate( "m_Y", time() ); //----------------------------------------- // Already a dir? //----------------------------------------- if ( $this->settings['allow_monthly_upload_dirs'] ) { $path = $this->upload_path . "/" . $this_month; if ( ! file_exists( $path ) ) { if ( @mkdir( $path, 0777 ) ) { @chmod( $path, 0777 ); # Set path and dir correct $this->upload_path .= "/" . $this_month; $this->upload_dir = $this_month."/"; } //----------------------------------------- // Was it really made or was it lying? //----------------------------------------- if ( ! file_exists( $path ) ) { $this->upload_path = $this->_upload_path; $this->upload_dir = '/'; } } else { # Set path and dir correct $this->upload_path .= "/" . $this_month; $this->upload_dir = $this_month."/"; } } return true; } /*-------------------------------------------------------------------------*/ // Load plug-in class /*-------------------------------------------------------------------------*/ /** * Loads child extends class. */ function load_plugin() { //----------------------------------------- // INIT //----------------------------------------- $this->type = $this->ipsclass->txt_alphanumerical_clean( $this->type ); //----------------------------------------- // Load... //----------------------------------------- $file = ROOT_PATH . 'sources/classes/attach/plugin_'.$this->type.'.php'; $class = 'plugin_'.$this->type; if ( ! is_object( $this->plugin ) ) { if ( file_exists( $file ) ) { require_once( $file ); $this->plugin = new $class; $this->plugin->ipsclass =& $this->ipsclass; $this->plugin->get_settings(); } else { print "Could not locate $file"; exit(); } } } /*-------------------------------------------------------------------------*/ // Parse thumbnail attachments inline /*-------------------------------------------------------------------------*/ /** * Swaps the HTML for the nice attachments. * * @param array Array of matches from preg_replace_callback * @return string HTML */ function _parse_thumbnail_inline( $matches ) { //----------------------------------------- // INIT //----------------------------------------- $row = $this->_current['row']; $skin_name = $this->_current['skin_name']; //----------------------------------------- // Generate random ID //----------------------------------------- $row['_attach_id'] = $row['attach_id'] . '-' . preg_replace( "#[\.\s]#", "-", microtime() ); //----------------------------------------- // Build HTML //----------------------------------------- $tmp = $this->ipsclass->compiled_templates[ $skin_name ]->Show_attachments_img_thumb( array( 't_location' => $row['attach_thumb_location'], 't_width' => $row['attach_thumb_width'], 't_height' => $row['attach_thumb_height'], 'o_width' => $row['attach_img_width'], 'o_height' => $row['attach_img_height'], 'attach_id' => $row['attach_id'], '_attach_id' => $row['_attach_id'], 'file_size' => $this->ipsclass->size_format( $row['attach_filesize'] ), 'attach_hits' => $row['attach_hits'], 'location' => $row['attach_file'], 'type' => $this->_current['type'], ) ); return $tmp; } } ?> Но при всем при этом тему создает..... что поправить?
  13. Сорри.. форум написал такую надпись когда я попыталась поменять английское имя на русское... Этот мой вопрос про ошибку форума точно не в тему? Ах, да, и спасибо большущее, что ответили!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Итог пока грустный.... Переименовала.... Результат: В общем списке пользователей, просто другим пользователем на форуме - вижу... Зайти под этим пользователем не могу... В админке этот пользователь не находится ни по старому (английскому) имени, ни по новому (русскому)... Можно ли как-то пользователя за номером один назвать русским ником - или забыть, забить, поменять на аглицкий и жить как есть ?
  14. попыталась поменять - форум пишет: Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 274 bytes) in /home/forum/sources/action_admin/member.php on line 3418 Это он о чем?
  15. Ну, то есть для проверки можно сделать следущее: зарегить запасной модераторский ник - на английском. Поменять Изначальный на удобный-русский и протестировать... Если заработает, то просто держать этот аглийкий ник про запас на всякий случай... Да?
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.