Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как по ID-новостей удалить массово DLE?

Как по ID-новостей удалить массово DLE?


     22.08.2018    mysql, dle, запрос, удалить    Общие вопросы, MySQL    1599

вопрос
Есть около 100 записей и везде ID разные, аля 2334, 854, 1148, 569.

Хочу эти определенные новости удалить, вручную долго искать, ибо на сайте 10.000+ записей и они разбросаны по разным страницам.
Через какой запрос сделать, чтобы удалить только эти ID-новостей?

Ответа пока нет


1 комментарий

vitnet
PHP-developer

vitnet - 22 августа 2018 12:45 -

Плохая идея удалить запросом, там не один SQL запрос нужен, есть ещё и файлы.

Вам нужно что-то вроде:

<?php
// Создать файл в корне сайта, прописать ID и запустить

/* DLE 13 */

@error_reporting(E_ALL ^ E_WARNING ^ E_NOTICE);
@ini_set('display_errors', true);
@ini_set('html_errors', false);
@ini_set('error_reporting', E_ALL ^ E_WARNING ^ E_NOTICE);

define( 'DATALIFEENGINE', true );
define( 'ROOT_DIR', dirname(  __FILE__ ) );
define( 'ENGINE_DIR', ROOT_DIR . '/engine' );
	
ignore_user_abort(true);
	
include( ENGINE_DIR . '/data/config.php' );

require_once ENGINE_DIR . '/classes/mysql.php';
require_once ENGINE_DIR . '/data/dbconfig.php';
require_once ENGINE_DIR . '/modules/functions.php';

if( ob_get_level() == 0 ) ob_start();
	
ob_flush();
flush();

$news_array = array(1, 2, 3, ...); // news ID

$i = 0;
foreach ($news_array as $id) {
	$i++;
	deletenewsbyid($id);
	sleep(1);
}

clear_cache();

echo "ok! count news delete: " . $i;
ob_end_flush();

?>

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх