Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Could not obtain vote data for this topic

Проблемы с установкой или работой phpBB 2.0.x? Ищите ответы здесь!
Аватара пользователя
Svetlovodsk
phpBB 1.2.0
Сообщения: 16
Стаж: 16 лет 6 месяцев
Откуда: Светловодск (UA)

Could not obtain vote data for this topic

Сообщение Svetlovodsk »

Помогите пожалуйста! Не пойму в чем дело... Последнее время вобще никаких изменений не вносил, а тут бабац:

Код: Выделить всё

Could not obtain vote data for this topic

DEBUG MODE

SQL Error : 1030 Got error 28 from storage engine

SELECT vd.vote_id, vd.vote_text, vd.vote_start, vd.vote_length, vr.vote_option_id, vr.vote_option_text, vr.vote_result FROM phpbb_vote_desc vd, phpbb_vote_results vr WHERE vd.topic_id = 719 AND vr.vote_id = vd.vote_id ORDER BY vr.vote_option_id ASC

Line : 725
File : viewtopic.php
Короче такой месаг я получаю, когда захожу в тему, в которой есть опрос. Где нет опроса - все работает четко!

Вот собственно мой viewtopic.php, кусок связанный с опросом:

Код: Выделить всё

//
// Does this topic contain a poll?
//
if ( !empty($forum_topic_data['topic_vote']) )
{
	$s_hidden_fields = '';

	$sql = "SELECT vd.vote_id, vd.vote_text, vd.vote_start, vd.vote_length, vr.vote_option_id, vr.vote_option_text, vr.vote_result
		FROM " . VOTE_DESC_TABLE . " vd, " . VOTE_RESULTS_TABLE . " vr
		WHERE vd.topic_id = $topic_id
			AND vr.vote_id = vd.vote_id
		ORDER BY vr.vote_option_id ASC";
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, "Could not obtain vote data for this topic", '', __LINE__, __FILE__, $sql);
	}

	if ( $vote_info = $db->sql_fetchrowset($result) )
	{
		$db->sql_freeresult($result);
		$vote_options = count($vote_info);

		$vote_id = $vote_info[0]['vote_id'];
		$vote_title = $vote_info[0]['vote_text'];
/*
		$sql = "SELECT vote_id
			FROM " . VOTE_USERS_TABLE . "
			WHERE vote_id = $vote_id
				AND vote_user_id = " . intval($userdata['user_id']);
		if ( !($result = $db->sql_query($sql)) )
		{
			message_die(GENERAL_ERROR, "Could not obtain user vote data for this topic", '', __LINE__, __FILE__, $sql);
		}

		$user_voted = ( $row = $db->sql_fetchrow($result) ) ? TRUE : 0;
*/
      //
      // MOD START: View Who Voted - AbelaJohnB -- http://www.phpBB2mods.Com/
      //
      $sql = "SELECT user_id, username FROM " . USERS_TABLE . ", " . VOTE_USERS_TABLE . " WHERE vote_id = '" . $vote_id . "' AND vote_user_id = user_id AND user_active = '1' GROUP BY username, user_id ORDER BY username";
      if ( !($result = $db->sql_query($sql)) ) 
      { 
         message_die(GENERAL_ERROR, "Could not obtain user who have voted for the included poll. ", '', __LINE__, __FILE__, $sql); 
      } 
      $user_voted = false;
      $who_voted = ''; 
      $first_row = true; 
      while( $row = $db->sql_fetchrow($result) ) 
      { 
         $who_voted .= ($first_row ? '' : ', ') . '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '">' . $row['username'] . '</a>';
         if ( $row['user_id'] == $userdata['user_id'] ) 
         { 
            $user_voted = true; 
         } 
         $first_row = false; 
      } 
      //
      // MOD END: View Who Voted - AbelaJohnB -- http://www.phpBB2mods.Com/
      //

		$db->sql_freeresult($result);

		if ( isset($HTTP_GET_VARS['vote']) || isset($HTTP_POST_VARS['vote']) )
		{
			$view_result = ( ( ( isset($HTTP_GET_VARS['vote']) ) ? $HTTP_GET_VARS['vote'] : $HTTP_POST_VARS['vote'] ) == 'viewresult' ) ? TRUE : 0;
		}
		else
		{
			$view_result = 0;
		}

		$poll_expired = ( $vote_info[0]['vote_length'] ) ? ( ( $vote_info[0]['vote_start'] + $vote_info[0]['vote_length'] < time() ) ? TRUE : 0 ) : 0;

		if ( $user_voted || $view_result || $poll_expired || !$is_auth['auth_vote'] || $forum_topic_data['topic_status'] == TOPIC_LOCKED )
		{
			$template->set_filenames(array(
				'pollbox' => 'viewtopic_poll_result.tpl')
			);

			$vote_results_sum = 0;

			for($i = 0; $i < $vote_options; $i++)
			{
				$vote_results_sum += $vote_info[$i]['vote_result'];
			}

			$vote_graphic = 0;
			$vote_graphic_max = count($images['voting_graphic']);

			for($i = 0; $i < $vote_options; $i++)
			{
				$vote_percent = ( $vote_results_sum > 0 ) ? $vote_info[$i]['vote_result'] / $vote_results_sum : 0;
				$vote_graphic_length = round($vote_percent * $board_config['vote_graphic_length']);

				$vote_graphic_img = $images['voting_graphic'][$vote_graphic];
				$vote_graphic = ($vote_graphic < $vote_graphic_max - 1) ? $vote_graphic + 1 : 0;

				if ( count($orig_word) )
				{
					$vote_info[$i]['vote_option_text'] = preg_replace($orig_word, $replacement_word, $vote_info[$i]['vote_option_text']);
				}

				$template->assign_block_vars("poll_option", array(
					'POLL_OPTION_CAPTION' => $vote_info[$i]['vote_option_text'],
					'POLL_OPTION_RESULT' => $vote_info[$i]['vote_result'],
					'POLL_OPTION_PERCENT' => sprintf("%.1d%%", ($vote_percent * 100)),

					'POLL_OPTION_IMG' => $vote_graphic_img,
					'POLL_OPTION_IMG_WIDTH' => $vote_graphic_length)
				);
			}

			$template->assign_vars(array(
	            'L_WHO_VOTED' => $lang['Who_Voted'], 
                'WHO_VOTED' => $who_voted,
				'L_TOTAL_VOTES' => $lang['Total_votes'],
				'TOTAL_VOTES' => $vote_results_sum)
			);

		}
		else
		{
			$template->set_filenames(array(
				'pollbox' => 'viewtopic_poll_ballot.tpl')
			);

			for($i = 0; $i < $vote_options; $i++)
			{
				if ( count($orig_word) )
				{
					$vote_info[$i]['vote_option_text'] = preg_replace($orig_word, $replacement_word, $vote_info[$i]['vote_option_text']);
				}

				$template->assign_block_vars("poll_option", array(
					'POLL_OPTION_ID' => $vote_info[$i]['vote_option_id'],
					'POLL_OPTION_CAPTION' => $vote_info[$i]['vote_option_text'])
				);
			}

			$template->assign_vars(array(
				'L_SUBMIT_VOTE' => $lang['Submit_vote'],
				'L_VIEW_RESULTS' => $lang['View_results'],

				'U_VIEW_RESULTS' => append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id&postdays=$post_days&postorder=$post_order&vote=viewresult"))
			);

			$s_hidden_fields = '<input type="hidden" name="topic_id" value="' . $topic_id . '" /><input type="hidden" name="mode" value="vote" />';
		}

		if ( count($orig_word) )
		{
			$vote_title = preg_replace($orig_word, $replacement_word, $vote_title);
		}

		$s_hidden_fields .= '<input type="hidden" name="sid" value="' . $userdata['session_id'] . '" />';

		$template->assign_vars(array(
			'POLL_QUESTION' => $vote_title,

			'S_HIDDEN_FIELDS' => $s_hidden_fields,
			'S_POLL_ACTION' => append_sid("posting.$phpEx?mode=vote&" . POST_TOPIC_URL . "=$topic_id"))
		);

		$template->assign_var_from_handle('POLL_DISPLAY', 'pollbox');
	}
}
Вот 725 строка:

Код: Выделить всё

		message_die(GENERAL_ERROR, "Could not obtain vote data for this topic", '', __LINE__, __FILE__, $sql);
Вот тема с опросом: http://svetlovodsk.com.ua/forum/viewtopic.php?t=719
Вот просто тема: http://svetlovodsk.com.ua/forum/viewtopic.php?t=558

Добавлено спустя 16 минут 38 секунд:

Залез только что в таблицу phpbb_vote_results...
Есть там варианты ответа из последнего опроса...

Вот тут не ясно...

Код: Выделить всё

WHERE vd.topic_id = 719 AND vr.vote_id = vd.vote_id
topic_id равен 719
vote_id равен сам себе?

Добавлено спустя 1 минуту 39 секунд:

Только что пробовал залить оригинальный файл viewtopic.php
Ответ получил такой же, только номер строки в которой ошибка другой. Ну это и понятно, я ж походу ставил дополнительные моды...

Добавлено спустя 5 минут 4 секунды:

Вернул на место свой viewtopic.php
Попытался создать тему - все красиво, но опрос не отображается, хотя я его добавлял...
Тоесть проблема четко определена:
1. Старые темы с опросами не открываются. Ошибка в начале поста.
2. В новые темы невозможно добавить опрос.

Добавлено спустя 1 минуту 40 секунд:
Попытался создать тему - все красиво, но опрос не отображается, хотя я его добавлял...
Сам себя цитирую :lol:
Короче зашел я обратно в эту тему и нажал "правка". Опрос виден, я могу вносить изменения. Но на сайте не отображается вобще.

Добавлено спустя 3 минуты 48 секунд:

Аномальное явление!!! :shock: :shock: :shock:
Все заработало! Не знаю что это было...
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 17 лет 11 месяцев
Откуда: Питер
Благодарил (а): 1 раз
Поблагодарили: 27 раз

Сообщение Палыч »

Svetlovodsk писал(а):1030 Got error 28 from storage engine
error code 28: No space left on device
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Svetlovodsk
phpBB 1.2.0
Сообщения: 16
Стаж: 16 лет 6 месяцев
Откуда: Светловодск (UA)

Сообщение Svetlovodsk »

Это че значит? Что я исчерпал место на сервере?

Добавлено спустя 1 минуту 16 секунд:

Только что пробил... у меня там еще полно места. Несколько Гб.
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 17 лет 11 месяцев
Откуда: Питер
Благодарил (а): 1 раз
Поблагодарили: 27 раз

Сообщение Палыч »

Svetlovodsk писал(а):Все заработало! Не знаю что это было...
Возможно профилактические работы у хостера, которые вызвали временную нехватку свободного места.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Svetlovodsk
phpBB 1.2.0
Сообщения: 16
Стаж: 16 лет 6 месяцев
Откуда: Светловодск (UA)

Сообщение Svetlovodsk »

Палыч писал(а):Возможно профилактические работы у хостера, которые вызвали временную нехватку свободного места.
Скорее всего... у меня хостер такой, что не предупреждает о профилактике :lol:
Аватара пользователя
crash
Former team member
Сообщения: 6517
Стаж: 19 лет 9 месяцев
Откуда: Бердск

Сообщение crash »

место могло кончится у хостера в /tmp, ведь база не лезет в ваше пространство.
Как правильно задавать вопросы
Для особо одаренных: поиск - это есть круто.
FAQ v.2 | FAQ v.3 | Шаблон запроса
Аватара пользователя
Svetlovodsk
phpBB 1.2.0
Сообщения: 16
Стаж: 16 лет 6 месяцев
Откуда: Светловодск (UA)

Сообщение Svetlovodsk »

Сегодня обязательно отпишу хостеру! Это ведь не дело! :twisted:

Вернуться в «Поддержка phpBB 2.0.x»