Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Обновление видео в IP. Videosystem

Опубликовано:

Есть такое приложение как IP. Videosystem.

В нём осталось довольно большое кол-во видео которое было загруженно ещё с использованием старых медиа-тегов Ютуб. Сейчас такие видео в этом приложение не показываются (белый экран вместо трека). Лечение одно - нажать на редактирование трека и после него видео становиться нормальным.

 

Однако таких старых роликов много. Есть ли какой то вариант что бы отредактировать старые видео комплексно, через запрос к базе данных?

Рекомендованные сообщения

Опубликовано:

через запрос к базе данных?

Нужно сравнить для начала старый и новый коды. Посмотрите в бд.

Опубликовано:
  • Автор

Нужно сравнить для начала старый и новый коды. Посмотрите в бд.

Без проблем.

 

Код видео старого, неработающего видео:

 

<object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/kl8mpAvTm_Y&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowScriptAccess" value="always"></param><embed src="http://www.youtube.com/v/kl8mpAvTm_Y&fs=1" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="480" height="385"></embed></object>

 

 

Видео работающее:

 

<iframe class="youtube-player" width="640" height="390" src="https://www.youtube.com/embed/-Fu0UPnk4kc" allowfullscreen></iframe>

 

Опубликовано:
  • Автор

Нет никаких идей? А то редактирование вручную - это нереально.

Опубликовано:

Скиньте приложение.

Опубликовано:
  • Автор

Скиньте приложение.

IP. Videosystem 2.0.3.zip

Изменено пользователем Haktar

Опубликовано:

С минимальными затратами

Открыть \admin\applications_addon\other\videos\modules_public\display\index.php

Найти

		//-----------------------------------------
	// Fetch related videos
	//-----------------------------------------        

Выше добавить

		if ($video['video_type'] == 'media_url')
	{
		$embed = IPSText::getTextClass('bbcode')->preDisplayParse($video['video_data']);

		if ($embed != $video['embed'])
		{
			$video['embed'] = $embed;		
			$this->DB->update('videos', array('embed' => $embed), 'tid=' . $video['tid']);		
		}
	}

Когда пользователь будет заходить на страницу с сломанным видео, видео будет обновляться.

Опубликовано:
  • Автор

Когда пользователь будет заходить на страницу с сломанным видео, видео будет обновляться.

Ух ты, круто, работает.

Большое спасибо!

  • 2 года спустя...
Опубликовано:
  • Автор

Не хотел создавать новую тему, поэтому пишу здесь.

Хостеры написал что на БД дают сильную нагрузку вот этот процесс связанный с приложением Видео, вот ответ от хостеров:

Цитата

В данный момент, в списке процессов mysql 141 соединение. Все они находились в статусе "Waiting for table level lock" ожидая выполнения запроса 

SELECT v.tid, v.cid, v.author_id, v.author_name, v.date, v.title, v.status, v.last_updated, v.views, v.seo_title, v.thumbnail, v.video_rating, v.members_seo_name,f.f_vid, f.f_mid FROM ipb_videos v LEFT JOIN ipb_videos_favorites f ON ( f.f_vid=v.tid ) WHERE v.status=0 ORDER BY MAKE_SET(9401=9401,SLEEP(5)) DESC LIMIT 150,50

Который находился в статусе "User sleep", примерно 1800 секунд. После его остановки, выполнилась большая часть запросов, которые жали блокировки таблицы, за исключением ещё одного такого же, который так же ушёл в "User sleep". После его остановки запросы продолжили работы. 

Уменьшили значения interactive-timeout и wait-timeout до 200 секунд. Это должно убивать соединения в статусе "User sleep ", должны будут через 200 секунд. 

Подскажите в каком файле приложения ликвидировать этот процесс?

Опубликовано:

Запрос довольно тормознутый, наверное связанный с популярными видео или что-то типо того.  Нужно либо отключить эту функцию либо найти в приложение и отключить его. 

Опубликовано:
  • Автор
18 часов назад, siv1987 сказал:

наверное связанный с популярными видео или что-то типо того.

С функцией добавить в избранное.

18 часов назад, siv1987 сказал:

либо отключить эту функцию

Через админку нигде не отключается.

18 часов назад, siv1987 сказал:

найти в приложение и отключить его. 

Ищу, найти не могу.

Опубликовано:
  • Автор

Судя по всему в этом файле, но что удалять - не разберёшься.

 

index.php

Опубликовано:

А не sql ли инъекция у вас случайно в запросе?.. Запрос нашел, но такой странной  сортировки в коде не вижу. Судя по всему кто-то передает эту функцию MAKE_SET через пользовательские данные из параметра сортировки $order = $this->request['sort_by']." ".$this->request['sort_order'];

Конкретно этот sql запрос судя по всему из функции function search(), но применять такой финт можно везде где используется $order в запросе. Надо более жестко фильтровать данные в запросе. 

Опубликовано:
  • Автор
1 час назад, siv1987 сказал:

Запрос нашел, но такой странной  сортировки в коде не вижу.

Может тогда это не тот файл что я предоставил выше?

Вот всё приложение:

IP. Videosystem 2.0.3.zip

Опубликовано:

Это тот же самый запрос. 

Опубликовано:
  • Автор
7 минут назад, siv1987 сказал:

Это тот же самый запрос. 

Так как мне всё это отрубить? Готов отказаться от функционала, главное что бы приложение работало.

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.